OSZZ API

<back to all web services

CreateOrder

The following routes are available for this service:
POST/createOrder
namespace BackOffice.Core

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<DataContract>]
    [<AllowNullLiteral>]
    type CreateOrderResponse() = 
        [<DataMember>]
        member val ResponseStatus:ResponseStatus = null with get,set

        [<DataMember>]
        member val Result:OrderItemModel[] = [||] with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type CreateOrder() = 
        [<DataMember>]
        member val GlobalIds:Int64[] = [||] with get,set

        [<DataMember>]
        member val TokenId:Guid = new Guid() with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type OrderItemModel() = 
        [<DataMember>]
        member val OrderItemId:Guid = new Guid() with get,set

        [<DataMember>]
        member val GlobalId:Int64 = new Int64() with get,set

        [<DataMember>]
        member val Date:DateTime = new DateTime() with get,set

        [<DataMember>]
        member val LastUpdate:DateTime = new DateTime() with get,set

        [<DataMember>]
        member val ProductId:Guid = new Guid() with get,set

        [<DataMember>]
        member val ProductNumber:String = null with get,set

        [<DataMember>]
        member val ProductTitle:String = null with get,set

        [<DataMember>]
        member val ManufacturerTitle:String = null with get,set

        [<DataMember>]
        member val ReplacementProductId:Nullable<Guid> = new Nullable<Guid>() with get,set

        [<DataMember>]
        member val ReplacementProductNumber:String = null with get,set

        [<DataMember>]
        member val ReplacementProductTitle:String = null with get,set

        [<DataMember>]
        member val ReplacementManufacturerTitle:String = null with get,set

        [<DataMember>]
        member val Quantity:Int32 = new Int32() with get,set

        [<DataMember>]
        member val Price:Decimal = new Decimal() with get,set

        [<DataMember>]
        member val InitialPrice:Decimal = new Decimal() with get,set

        [<DataMember>]
        member val Comment:String = null with get,set

        [<DataMember>]
        member val ExpectedDeliveryDays:Int32 = new Int32() with get,set

        [<DataMember>]
        member val GuaranteedDeliveryDays:Int32 = new Int32() with get,set

        [<DataMember>]
        member val GuaranteedDeliveryTime:Nullable<DateTime> = new Nullable<DateTime>() with get,set

        [<DataMember>]
        member val ExpectedDeliveryTime:Nullable<DateTime> = new Nullable<DateTime>() with get,set

        [<DataMember>]
        member val PriceListLogo:String = null with get,set

        [<DataMember>]
        member val Delivery:String = null with get,set

        [<DataMember>]
        member val IsCash:Boolean = new Boolean() with get,set

        [<DataMember>]
        member val DeliveryDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set

        [<DataMember>]
        member val PriceListUseSchedule:Boolean = new Boolean() with get,set

        [<DataMember>]
        member val SupplierAliasId:Guid = new Guid() with get,set

        [<DataMember>]
        member val SubcustomerId:Nullable<Guid> = new Nullable<Guid>() with get,set

        [<DataMember>]
        member val IsCashSubcustomer:Nullable<Boolean> = new Nullable<Boolean>() with get,set

        [<DataMember>]
        member val SubcustomerLogo:String = null with get,set

        [<DataMember>]
        member val InitialSubcustomerPrice:Nullable<Decimal> = new Nullable<Decimal>() with get,set

        [<DataMember>]
        member val SubcustomerPrice:Nullable<Decimal> = new Nullable<Decimal>() with get,set

        [<DataMember>]
        member val Motions:OrderItemMotionModel[] = [||] with get,set

    type OrderItemState =
        | Undefined = 0
        | Sold = 1
        | Refused = 2
        | InOrder = 3
        | InSupplierCart = 4
        | Purchased = 5
        | NotDistributed = 6
        | InCart = 7
        | Ready = 8
        | Distributed = 9
        | SupplierRefused = 10
        | Archived = 11
        | GivingOutScan = 12
        | InProcessing = 13
        | Return = 14
        | Returned = 15
        | RefusedByClient = 16
        | PurchasedBySupplier = 17
        | InParentCart = 18
        | InSupplierWebCart = 19
        | WorkInSupplierWebCart = 20
        | Deficit = 21

    [<DataContract>]
    [<AllowNullLiteral>]
    type OrderItemMotionModel() = 
        [<DataMember>]
        member val MotionId:Guid = new Guid() with get,set

        [<DataMember>]
        member val ParentId:Nullable<Guid> = new Nullable<Guid>() with get,set

        [<DataMember>]
        member val State:OrderItemState = new OrderItemState() with get,set

        [<DataMember>]
        member val StateTitle:String = null with get,set

        [<DataMember>]
        member val Date:DateTime = new DateTime() with get,set

        [<DataMember>]
        member val InitialQuantity:Int32 = new Int32() with get,set

        [<DataMember>]
        member val Quantity:Int32 = new Int32() with get,set

        [<DataMember>]
        member val PlannedDeliveryDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set

F# CreateOrder 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 /createOrder HTTP/1.1 
Host: api.oszz.ru 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<CreateOrder xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
  <GlobalIds xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:long>0</d2p1:long>
  </GlobalIds>
  <TokenId>00000000-0000-0000-0000-000000000000</TokenId>
</CreateOrder>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<CreateOrderResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
  <ResponseStatus>
    <ErrorCode>String</ErrorCode>
    <Message>String</Message>
    <StackTrace>String</StackTrace>
    <Errors>
      <ResponseError>
        <ErrorCode>String</ErrorCode>
        <FieldName>String</FieldName>
        <Message>String</Message>
        <Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </Meta>
      </ResponseError>
    </Errors>
    <Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </Meta>
  </ResponseStatus>
  <Result>
    <OrderItemModel>
      <Comment>String</Comment>
      <Date>0001-01-01T00:00:00</Date>
      <Delivery>String</Delivery>
      <DeliveryDate>0001-01-01T00:00:00</DeliveryDate>
      <ExpectedDeliveryDays>0</ExpectedDeliveryDays>
      <ExpectedDeliveryTime>0001-01-01T00:00:00</ExpectedDeliveryTime>
      <GlobalId>0</GlobalId>
      <GuaranteedDeliveryDays>0</GuaranteedDeliveryDays>
      <GuaranteedDeliveryTime>0001-01-01T00:00:00</GuaranteedDeliveryTime>
      <InitialPrice>0</InitialPrice>
      <InitialSubcustomerPrice>0</InitialSubcustomerPrice>
      <IsCash>false</IsCash>
      <IsCashSubcustomer>false</IsCashSubcustomer>
      <LastUpdate>0001-01-01T00:00:00</LastUpdate>
      <ManufacturerTitle>String</ManufacturerTitle>
      <Motions>
        <OrderItemMotionModel>
          <Date>0001-01-01T00:00:00</Date>
          <InitialQuantity>0</InitialQuantity>
          <MotionId>00000000-0000-0000-0000-000000000000</MotionId>
          <ParentId>00000000-0000-0000-0000-000000000000</ParentId>
          <PlannedDeliveryDate>0001-01-01T00:00:00</PlannedDeliveryDate>
          <Quantity>0</Quantity>
          <State>Undefined</State>
          <StateTitle>String</StateTitle>
        </OrderItemMotionModel>
      </Motions>
      <OrderItemId>00000000-0000-0000-0000-000000000000</OrderItemId>
      <Price>0</Price>
      <PriceListLogo>String</PriceListLogo>
      <PriceListUseSchedule>false</PriceListUseSchedule>
      <ProductId>00000000-0000-0000-0000-000000000000</ProductId>
      <ProductNumber>String</ProductNumber>
      <ProductTitle>String</ProductTitle>
      <Quantity>0</Quantity>
      <ReplacementManufacturerTitle>String</ReplacementManufacturerTitle>
      <ReplacementProductId>00000000-0000-0000-0000-000000000000</ReplacementProductId>
      <ReplacementProductNumber>String</ReplacementProductNumber>
      <ReplacementProductTitle>String</ReplacementProductTitle>
      <SubcustomerId>00000000-0000-0000-0000-000000000000</SubcustomerId>
      <SubcustomerLogo>String</SubcustomerLogo>
      <SubcustomerPrice>0</SubcustomerPrice>
      <SupplierAliasId>00000000-0000-0000-0000-000000000000</SupplierAliasId>
    </OrderItemModel>
  </Result>
</CreateOrderResponse>