Richemont.Booster2.PublicApi

<back to all web services

CreateBasket

Requires Authentication
The following routes are available for this service:
POST/purchase/basketCreate Basket
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.Purchase.ServiceModel.SharedModels;

namespace Richemont.Booster2.PublicApi.Purchase.ServiceModel
{
    public partial class BasketItem
    {
        ///<summary>
        ///Reference ID of the article/product
        ///</summary>
        [ApiMember(Description="Reference ID of the article/product", IsRequired=true)]
        public virtual string articleCode { get; set; }

        ///<summary>
        ///Desired quantity of the article
        ///</summary>
        [ApiMember(Description="Desired quantity of the article")]
        public virtual int quantity { get; set; }

        ///<summary>
        ///Strap definition
        ///</summary>
        [ApiMember(Description="Strap definition")]
        public virtual BasketStrapItem strap { get; set; }
    }

    public partial class BasketItemResponse
    {
        public BasketItemResponse()
        {
            errors = new List<string>{};
            warnings = new List<string>{};
        }

        ///<summary>
        ///Line number of the article
        ///</summary>
        [ApiMember(Description="Line number of the article")]
        public virtual int line { get; set; }

        ///<summary>
        ///Reference ID of the article/product
        ///</summary>
        [ApiMember(Description="Reference ID of the article/product")]
        public virtual string articleCode { get; set; }

        ///<summary>
        ///Old reference ID of the article/product
        ///</summary>
        [ApiMember(Description="Old reference ID of the article/product")]
        public virtual string oldArticleCode { get; set; }

        ///<summary>
        ///Quantity of the article
        ///</summary>
        [ApiMember(Description="Quantity of the article")]
        public virtual int quantity { get; set; }

        ///<summary>
        ///Delivery date of the article
        ///</summary>
        [ApiMember(Description="Delivery date of the article")]
        public virtual DateTime deliveryDate { get; set; }

        ///<summary>
        ///Strap definition
        ///</summary>
        [ApiMember(Description="Strap definition")]
        public virtual BasketStrapItem strap { get; set; }

        ///<summary>
        ///Errors for the article
        ///</summary>
        [ApiMember(Description="Errors for the article")]
        public virtual List<string> errors { get; set; }

        ///<summary>
        ///Warnings for the article
        ///</summary>
        [ApiMember(Description="Warnings for the article")]
        public virtual List<string> warnings { get; set; }
    }

    public partial class CreateBasket
    {
        public CreateBasket()
        {
            orderItems = new List<BasketItem>{};
        }

        ///<summary>
        ///Brand Trigram of the intended order
        ///</summary>
        [ApiMember(Description="Brand Trigram of the intended order", IsRequired=true)]
        public virtual string brand { get; set; }

        ///<summary>
        ///Pos Code for the intended order e.g. ES03-10415-01
        ///</summary>
        [ApiMember(Description="Pos Code for the intended order e.g. ES03-10415-01", IsRequired=true)]
        public virtual string posCode { get; set; }

        ///<summary>
        ///Customer Reference
        ///</summary>
        [ApiMember(Description="Customer Reference", IsRequired=true)]
        public virtual string customerReference { get; set; }

        ///<summary>
        ///Additional Notes regarding the order
        ///</summary>
        [ApiMember(Description="Additional Notes regarding the order", IsRequired=true)]
        public virtual string notes { get; set; }

        ///<summary>
        ///List of Articles to be added in the basket
        ///</summary>
        [ApiMember(Description="List of Articles to be added in the basket")]
        public virtual List<BasketItem> orderItems { get; set; }

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

    public partial class CreateBasketResponse
    {
        public CreateBasketResponse()
        {
            validationResults = new List<BasketItemResponse>{};
        }

        ///<summary>
        ///ID of the newly created Purchase Order / Basket
        ///</summary>
        [ApiMember(Description="ID of the newly created Purchase Order / Basket", IsRequired=true)]
        public virtual int purchaseOrderId { get; set; }

        ///<summary>
        ///Validation results of each basket item
        ///</summary>
        [ApiMember(Description="Validation results of each basket item")]
        public virtual List<BasketItemResponse> validationResults { get; set; }
    }

}

namespace Richemont.Booster2.PublicApi.Purchase.ServiceModel.SharedModels
{
    public partial class BasketStrapItem
    {
        ///<summary>
        ///Article reference
        ///</summary>
        [ApiMember(Description="Article reference")]
        public virtual string speakingArticleCode { get; set; }

        ///<summary>
        ///Buckle type Description
        ///</summary>
        [ApiMember(Description="Buckle type Description")]
        public virtual string buckleTypeDescription { get; set; }

        ///<summary>
        ///Buckle type
        ///</summary>
        [ApiMember(Description="Buckle type")]
        public virtual string buckleTypeCode { get; set; }

        ///<summary>
        ///watch 6 Length
        ///</summary>
        [ApiMember(Description="watch 6 Length")]
        public virtual int? watch6Length { get; set; }

        ///<summary>
        ///watch 12 Length
        ///</summary>
        [ApiMember(Description="watch 12 Length")]
        public virtual int? watch12Length { get; set; }

        ///<summary>
        ///Article Material Code
        ///</summary>
        [ApiMember(Description="Article Material Code")]
        public virtual string materialCode { get; set; }

        ///<summary>
        ///Article Material Description
        ///</summary>
        [ApiMember(Description="Article Material Description")]
        public virtual string materialDescription { get; set; }

        ///<summary>
        ///Article Color Code
        ///</summary>
        [ApiMember(Description="Article Color Code")]
        public virtual string colorCode { get; set; }

        ///<summary>
        ///Article Color Description
        ///</summary>
        [ApiMember(Description="Article Color Description")]
        public virtual string colorDescription { get; set; }

        ///<summary>
        ///Buckle Witdh
        ///</summary>
        [ApiMember(Description="Buckle Witdh")]
        public virtual string buckleWidth { get; set; }

        ///<summary>
        ///Article Lining Code
        ///</summary>
        [ApiMember(Description="Article Lining Code")]
        public virtual string liningCode { get; set; }

        ///<summary>
        ///Article Lining Description
        ///</summary>
        [ApiMember(Description="Article Lining Description")]
        public virtual string liningDescription { get; set; }

        ///<summary>
        ///Article Stitching Code
        ///</summary>
        [ApiMember(Description="Article Stitching Code")]
        public virtual string stitchingCode { get; set; }

        ///<summary>
        ///Article Stitching Description
        ///</summary>
        [ApiMember(Description="Article Stitching Description")]
        public virtual string stitchingDescription { get; set; }

        ///<summary>
        ///Article Edge Code
        ///</summary>
        [ApiMember(Description="Article Edge Code")]
        public virtual string edgeCode { get; set; }

        ///<summary>
        ///Article Edge Description
        ///</summary>
        [ApiMember(Description="Article Edge Description")]
        public virtual string edgeDescription { get; set; }

        ///<summary>
        ///Article Padding Code
        ///</summary>
        [ApiMember(Description="Article Padding Code")]
        public virtual string paddingCode { get; set; }

        ///<summary>
        ///Article Padding Description
        ///</summary>
        [ApiMember(Description="Article Padding Description")]
        public virtual string paddingDescription { get; set; }

        ///<summary>
        ///Article Speciality Code
        ///</summary>
        [ApiMember(Description="Article Speciality Code")]
        public virtual string specialtyCode { get; set; }

        ///<summary>
        ///Article Speciality Description
        ///</summary>
        [ApiMember(Description="Article Speciality Description")]
        public virtual string specialtyDescription { get; set; }

        ///<summary>
        ///Nuancier Code
        ///</summary>
        [ApiMember(Description="Nuancier Code")]
        public virtual string nuancierCode { get; set; }

        ///<summary>
        ///Strap Vip Order
        ///</summary>
        [ApiMember(Description="Strap Vip Order")]
        public virtual bool? isStrapVipOrder { get; set; }
    }

}

C# CreateBasket DTOs

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

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /purchase/basket HTTP/1.1 
Host: dev-api-booster.richemont.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	brand: String,
	posCode: String,
	customerReference: String,
	notes: String,
	orderItems: 
	[
		{
			articleCode: String,
			quantity: 0,
			strap: 
			{
				speakingArticleCode: String,
				buckleTypeDescription: String,
				buckleTypeCode: String,
				watch6Length: 0,
				watch12Length: 0,
				materialCode: String,
				materialDescription: String,
				colorCode: String,
				colorDescription: String,
				buckleWidth: String,
				liningCode: String,
				liningDescription: String,
				stitchingCode: String,
				stitchingDescription: String,
				edgeCode: String,
				edgeDescription: String,
				paddingCode: String,
				paddingDescription: String,
				specialtyCode: String,
				specialtyDescription: String,
				nuancierCode: String,
				isStrapVipOrder: False
			}
		}
	],
	boosterContextId: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	purchaseOrderId: 0,
	validationResults: 
	[
		{
			line: 0,
			articleCode: String,
			oldArticleCode: String,
			quantity: 0,
			deliveryDate: 0001-01-01,
			strap: 
			{
				speakingArticleCode: String,
				buckleTypeDescription: String,
				buckleTypeCode: String,
				watch6Length: 0,
				watch12Length: 0,
				materialCode: String,
				materialDescription: String,
				colorCode: String,
				colorDescription: String,
				buckleWidth: String,
				liningCode: String,
				liningDescription: String,
				stitchingCode: String,
				stitchingDescription: String,
				edgeCode: String,
				edgeDescription: String,
				paddingCode: String,
				paddingDescription: String,
				specialtyCode: String,
				specialtyDescription: String,
				nuancierCode: String,
				isStrapVipOrder: False
			},
			errors: 
			[
				String
			],
			warnings: 
			[
				String
			]
		}
	]
}