Richemont.Booster2.PublicApi

<back to all web services

ExportInvoice

Requires Authentication
The following routes are available for this service:
POST/invoice/{brand}/exportExport Invoice DataCreate 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

VB.NET ExportInvoice DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other

HTTP + OTHER

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: text/jsonl
Content-Type: text/jsonl
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: text/jsonl
Content-Length: length

{"asyncTaskId":"00000000000000000000000000000000"}