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
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Richemont.Booster2.PublicApi.Purchase.ServiceModel;
using Richemont.Booster2.PublicApi.Common.ServiceModel;

namespace Richemont.Booster2.PublicApi.Common.ServiceModel
{
    public partial class ProductCategory
    {
        ///<summary>
        ///Brand Category ID
        ///</summary>
        [ApiMember(Description="Brand Category ID")]
        public virtual string brandCategoryId { get; set; }

        ///<summary>
        ///Grand Category ID
        ///</summary>
        [ApiMember(Description="Grand Category ID", IsRequired=true)]
        public virtual string grandCategoryId { get; set; }

        ///<summary>
        ///Master Category ID
        ///</summary>
        [ApiMember(Description="Master Category ID")]
        public virtual string masterCategoryId { get; set; }

        ///<summary>
        ///Category ID
        ///</summary>
        [ApiMember(Description="Category ID")]
        public virtual string categoryId { get; set; }

        ///<summary>
        ///Sub Category ID
        ///</summary>
        [ApiMember(Description="Sub Category ID")]
        public virtual string subCategoryId { get; set; }
    }

}

namespace Richemont.Booster2.PublicApi.Purchase.ServiceModel
{
    public partial class ExportInvoice
    {
        public ExportInvoice()
        {
            posCodes = new List<string>{};
            reasonCodes = new List<string>{};
            productCategories = new List<ProductCategory>{};
        }

        ///<summary>
        ///Brand Trigram, e.g. CAR, IWC
        ///</summary>
        [ApiMember(Description="Brand Trigram, e.g. CAR, IWC", IsRequired=true)]
        public virtual string brand { get; set; }

        ///<summary>
        ///Pos Legacy IDs / Codes
        ///</summary>
        [ApiMember(Description="Pos Legacy IDs / Codes", IsRequired=true)]
        public virtual List<string> posCodes { get; set; }

        ///<summary>
        ///Date To
        ///</summary>
        [ApiMember(Description="Date To")]
        public virtual DateTime? dateTo { get; set; }

        ///<summary>
        ///Date From
        ///</summary>
        [ApiMember(Description="Date From")]
        public virtual DateTime? dateFrom { get; set; }

        ///<summary>
        ///Reason Code e.g. Y00, Y06
        ///</summary>
        [ApiMember(Description="Reason Code e.g. Y00, Y06")]
        public virtual List<string> reasonCodes { get; set; }

        ///<summary>
        ///Product Categories
        ///</summary>
        [ApiMember(Description="Product Categories")]
        public virtual List<ProductCategory> productCategories { get; set; }

        ///<summary>
        ///Export Request ID of the API Consumers
        ///</summary>
        [ApiMember(Description="Export Request ID of the API Consumers", IsRequired=true)]
        public virtual string downloadRequestId { get; set; }
    }

    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 virtual Guid asyncTaskId { get; set; }
    }

}

C# 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"}