| POST | /invoice/{brand}/export | Export Invoice Data | Create a invoice in a POS you are authorised for |
|---|
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 ExportInvoice
Public Sub New()
posCodes = New List(Of String)
reasonCodes = New List(Of String)
productCategories = New List(Of ProductCategory)
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 IDs / Codes
'''</Summary>
<ApiMember(Description:="Pos Legacy IDs / Codes", 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>
'''Reason Code e.g. Y00, Y06
'''</Summary>
<ApiMember(Description:="Reason Code e.g. Y00, Y06")>
Public Overridable Property reasonCodes As List(Of String)
'''<Summary>
'''Product Categories
'''</Summary>
<ApiMember(Description:="Product Categories")>
Public Overridable Property productCategories As List(Of ProductCategory)
'''<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 ExportInvoiceResponse
'''<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 .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /invoice/{brand}/export HTTP/1.1
Host: dev-api-booster.richemont.com
Accept: application/json
Content-Type: application/json
Content-Length: length
{"brand":"String","posCodes":["String"],"dateTo":"\/Date(-62135596800000-0000)\/","dateFrom":"\/Date(-62135596800000-0000)\/","reasonCodes":["String"],"productCategories":[{"brandCategoryId":"String","grandCategoryId":"String","masterCategoryId":"String","categoryId":"String","subCategoryId":"String"}],"downloadRequestId":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"asyncTaskId":"00000000000000000000000000000000"}