POST | /v1/BackOrderLinkedComms | Get the audit for back orders linked comms |
---|
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
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BackOrderLinkedCommsAuditDateCriteria:
from_: Optional[datetime.datetime] = field(metadata=config(field_name='from'), default=None)
to: Optional[datetime.datetime] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class LinkedBackOrderCommAudit:
gssn_ids: Optional[List[str]] = None
date_criteria: Optional[BackOrderLinkedCommsAuditDateCriteria] = None
class BackOrderStatus(IntEnum):
SUBMITTED = 1
ACKNOWLEDGED = 2
CANCELLED = 3
COMPLETED = 4
CONFIRMED = 5
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BackOrderLinkedCommsAudit:
guid: Optional[str] = None
back_order_reference: Optional[str] = None
user_id: Optional[str] = None
showroom: Optional[str] = None
comm_linked: Optional[str] = None
sales_description: Optional[str] = None
colour: Optional[str] = None
upholstery: Optional[str] = None
sellable: bool = False
linked_date: Optional[str] = None
status: Optional[BackOrderStatus] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class LinkedBackOrderCommAuditResponse:
audits: List[BackOrderLinkedCommsAudit] = field(default_factory=list)
Python LinkedBackOrderCommAudit DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/BackOrderLinkedComms HTTP/1.1
Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
GssnIds:
[
String
],
DateCriteria:
{
From: 0001-01-01,
To: 0001-01-01
}
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { Audits: [ { Guid: String, BackOrderReference: String, UserId: String, Showroom: String, CommLinked: String, SalesDescription: String, Colour: String, Upholstery: String, Sellable: False, LinkedDate: String, Status: Submitted } ] }