| POST | /stock/{brand}/transferBulk | Bulk Transfer Stock from one POS to another |
|---|
namespace Richemont.Booster2.PublicApi.Stock.ServiceModel
open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type ItemResponse() =
///<summary>
///Article Code of the item response
///</summary>
[<ApiMember(Description="Article Code of the item response", IsRequired=true)>]
member val articleCode:String = null with get,set
///<summary>
///Status of Stock Transfer: 1 means done, 2 means might take a while because consignment transfers need to be approved by SAP
///</summary>
[<ApiMember(Description="Status of Stock Transfer: 1 means done, 2 means might take a while because consignment transfers need to be approved by SAP", IsRequired=true)>]
member val stockTransferStatusId:Int32 = new Int32() with get,set
///<summary>
///Errors of items
///</summary>
[<ApiMember(Description="Errors of items", IsRequired=true)>]
member val errors:ResizeArray<Lookup<String>> = new ResizeArray<Lookup<String>>() with get,set
[<AllowNullLiteral>]
type TransferStockBulkResponse() =
///<summary>
///Response of items
///</summary>
[<ApiMember(Description="Response of items", IsRequired=true)>]
member val items:ResizeArray<ItemResponse> = new ResizeArray<ItemResponse>() with get,set
[<AllowNullLiteral>]
type Item() =
///<summary>
///Article Code of the item to be transferred
///</summary>
[<ApiMember(Description="Article Code of the item to be transferred", IsRequired=true)>]
member val articleCode:String = null with get,set
///<summary>
///Quantity of the the item to be transferred
///</summary>
[<ApiMember(Description="Quantity of the the item to be transferred", IsRequired=true)>]
member val quantity:Int32 = new Int32() with get,set
///<summary>
///Serial Numbers of the item to be transferred
///</summary>
[<ApiMember(Description="Serial Numbers of the item to be transferred")>]
member val serialNumbers:ResizeArray<String> = new ResizeArray<String>() with get,set
[<AllowNullLiteral>]
type TransferStockBulk() =
///<summary>
///Brand Trigram
///</summary>
[<ApiMember(Description="Brand Trigram", IsRequired=true)>]
member val brand:String = null with get,set
///<summary>
///POS of the stock origin
///</summary>
[<ApiMember(Description="POS of the stock origin", IsRequired=true)>]
member val posCodeOrigin:String = null with get,set
///<summary>
///POS of the stock destination
///</summary>
[<ApiMember(Description="POS of the stock destination", IsRequired=true)>]
member val posCodeDestination:String = null with get,set
///<summary>
///Items to be transferred
///</summary>
[<ApiMember(Description="Items to be transferred", IsRequired=true)>]
member val items:ResizeArray<Item> = new ResizeArray<Item>() with get,set
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 /stock/{brand}/transferBulk HTTP/1.1
Host: dev-api-booster.richemont.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
brand: String,
posCodeOrigin: String,
posCodeDestination: String,
items:
[
{
articleCode: String,
quantity: 0,
serialNumbers:
[
String
]
}
]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
items:
[
{
articleCode: String,
stockTransferStatusId: 0,
errors:
[
{
id: String,
description: String
}
]
}
]
}