Mercedes.Agency.Orchestration.API

<back to all web services

ValidateBackOrderBulkStatusAllocationsRequest

BackOrder
Requires Authentication
The following routes are available for this service:
POST/v1/BackOrder/ValidateBulkStatusAllocationsValidates back order references and statuses provided in a csv file for allocation to active back orders.Reads a csv file and parses a list of back order references, MBUK assistance statuses and messages for validation before allocation to active back orders.
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum
Object = TypeVar('Object')


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ValidateBackOrderBulkStatusAllocationsRequest:
    pass


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BackOrderStatusAllocation:
    row: int = 0
    back_order_reference: Optional[str] = None
    status: Optional[str] = None
    message: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class InvalidBackOrderStatusAllocation(BackOrderStatusAllocation):
    validation_message: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BackOrderBulkStatusAllocation:
    total_back_orders: int = 0
    valid_back_orders: int = 0
    invalid_back_orders: int = 0
    valid: List[BackOrderStatusAllocation] = field(default_factory=list)
    invalid: List[InvalidBackOrderStatusAllocation] = field(default_factory=list)


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BackOrderBulkStatusAllocationsResponse:
    message: Optional[str] = None
    back_orders: Optional[BackOrderBulkStatusAllocation] = None
    successful: bool = False
    filename: Optional[str] = None

Python ValidateBackOrderBulkStatusAllocationsRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /v1/BackOrder/ValidateBulkStatusAllocations HTTP/1.1 
Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<ValidateBackOrderBulkStatusAllocationsRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.ServiceModel.BackOrders" />
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<BackOrderBulkStatusAllocationsResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.Agency.Orchestration.API.Business.Poco.BulkStatusAllocation">
  <BackOrders>
    <Invalid xmlns:d3p1="http://schemas.datacontract.org/2004/07/Mercedes.Agency.API.Shared.POCO.BulkStatusAllocation">
      <d3p1:InvalidBackOrderStatusAllocation>
        <d3p1:BackOrderReference>String</d3p1:BackOrderReference>
        <d3p1:Message>String</d3p1:Message>
        <d3p1:Row>0</d3p1:Row>
        <d3p1:Status>String</d3p1:Status>
        <d3p1:ValidationMessage>String</d3p1:ValidationMessage>
      </d3p1:InvalidBackOrderStatusAllocation>
    </Invalid>
    <Valid xmlns:d3p1="http://schemas.datacontract.org/2004/07/Mercedes.Agency.API.Shared.POCO.BulkStatusAllocation">
      <d3p1:BackOrderStatusAllocation>
        <d3p1:BackOrderReference>String</d3p1:BackOrderReference>
        <d3p1:Message>String</d3p1:Message>
        <d3p1:Row>0</d3p1:Row>
        <d3p1:Status>String</d3p1:Status>
      </d3p1:BackOrderStatusAllocation>
    </Valid>
  </BackOrders>
  <Filename>String</Filename>
</BackOrderBulkStatusAllocationsResponse>