| POST | /purchase/{brand}/export | Export Order Data |
|---|
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports Richemont.Booster2.PublicApi.Purchase.ServiceModel
Imports Richemont.Booster2.PublicApi.Common.ServiceModel
Namespace Global
Namespace Richemont.Booster2.PublicApi.Common.ServiceModel
Public Partial Class ProductCategory
'''<Summary>
'''Brand Category ID
'''</Summary>
<ApiMember(Description:="Brand Category ID")>
Public Overridable Property brandCategoryId As String
'''<Summary>
'''Grand Category ID
'''</Summary>
<ApiMember(Description:="Grand Category ID", IsRequired:=true)>
Public Overridable Property grandCategoryId As String
'''<Summary>
'''Master Category ID
'''</Summary>
<ApiMember(Description:="Master Category ID")>
Public Overridable Property masterCategoryId As String
'''<Summary>
'''Category ID
'''</Summary>
<ApiMember(Description:="Category ID")>
Public Overridable Property categoryId As String
'''<Summary>
'''Sub Category ID
'''</Summary>
<ApiMember(Description:="Sub Category ID")>
Public Overridable Property subCategoryId As String
End Class
End Namespace
Namespace Richemont.Booster2.PublicApi.Purchase.ServiceModel
Public Partial Class ExportOrder
Public Sub New()
posCodes = New List(Of String)
status = New List(Of String)
reasonCode = New List(Of String)
productCategories = New List(Of ProductCategory)
finalShipTo = New List(Of String)
End Sub
'''<Summary>
'''Brand Trigram, e.g. CAR, IWC
'''</Summary>
<ApiMember(Description:="Brand Trigram, e.g. CAR, IWC", IsRequired:=true)>
Public Overridable Property brand As String
'''<Summary>
'''POS Legacy
'''</Summary>
<ApiMember(Description:="POS Legacy", IsRequired:=true)>
Public Overridable Property posCodes As List(Of String)
'''<Summary>
'''Date To
'''</Summary>
<ApiMember(Description:="Date To")>
Public Overridable Property dateTo As Nullable(Of Date)
'''<Summary>
'''Date From
'''</Summary>
<ApiMember(Description:="Date From")>
Public Overridable Property dateFrom As Nullable(Of Date)
'''<Summary>
'''Possible order statues: B (Backorder), C (Created), D (Draft), I (In transit)N (Pending), P (Shipped), PS (Partially shipped), R (Reserved), X (RP Simulated), Z (Deleted)
'''</Summary>
<ApiMember(Description:="Possible order statues: B (Backorder), C (Created), D (Draft), I (In transit)N (Pending), P (Shipped), PS (Partially shipped), R (Reserved), X (RP Simulated), Z (Deleted)")>
Public Overridable Property status As List(Of String)
'''<Summary>
'''Reason Code e.g. Y00, Y06
'''</Summary>
<ApiMember(Description:="Reason Code e.g. Y00, Y06")>
Public Overridable Property reasonCode As List(Of String)
'''<Summary>
'''Product Categories
'''</Summary>
<ApiMember(Description:="Product Categories")>
Public Overridable Property productCategories As List(Of ProductCategory)
'''<Summary>
'''Final Ship To Pos Codes
'''</Summary>
<ApiMember(Description:="Final Ship To Pos Codes")>
Public Overridable Property finalShipTo As List(Of String)
'''<Summary>
'''Export Request ID of the API Consumers
'''</Summary>
<ApiMember(Description:="Export Request ID of the API Consumers", IsRequired:=true)>
Public Overridable Property downloadRequestId As String
End Class
Public Partial Class ExportOrderResponse
'''<Summary>
'''Unique Identifier of the Export Request created
'''</Summary>
<ApiMember(Description:="Unique Identifier of the Export Request created", IsRequired:=true)>
Public Overridable Property asyncTaskId As Guid
End Class
End Namespace
End Namespace
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 /purchase/{brand}/export HTTP/1.1
Host: dev-api-booster.richemont.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
brand: String,
posCodes:
[
String
],
dateTo: 0001-01-01,
dateFrom: 0001-01-01,
status:
[
String
],
reasonCode:
[
String
],
productCategories:
[
{
brandCategoryId: String,
grandCategoryId: String,
masterCategoryId: String,
categoryId: String,
subCategoryId: String
}
],
finalShipTo:
[
String
],
downloadRequestId: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
asyncTaskId: 00000000000000000000000000000000
}