Richemont.Booster2.PublicApi

<back to all web services

CreateBasket

Requires Authentication
The following routes are available for this service:
POST/purchase/basketCreate Basket
import java.math.*
import java.util.*
import net.servicestack.client.*


open class CreateBasket
{
    /**
    * Brand Trigram of the intended order
    */
    @ApiMember(Description="Brand Trigram of the intended order", IsRequired=true)
    var brand:String? = null

    /**
    * Pos Code for the intended order e.g. ES03-10415-01
    */
    @ApiMember(Description="Pos Code for the intended order e.g. ES03-10415-01", IsRequired=true)
    var posCode:String? = null

    /**
    * Customer Reference
    */
    @ApiMember(Description="Customer Reference", IsRequired=true)
    var customerReference:String? = null

    /**
    * Additional Notes regarding the order
    */
    @ApiMember(Description="Additional Notes regarding the order", IsRequired=true)
    var notes:String? = null

    /**
    * List of Articles to be added in the basket
    */
    @ApiMember(Description="List of Articles to be added in the basket")
    var orderItems:ArrayList<BasketItem> = ArrayList<BasketItem>()

    /**
    * Brand Context ID
    */
    @ApiMember(Description="Brand Context ID")
    var boosterContextId:String? = null
}

open class BasketItem
{
    /**
    * Reference ID of the article/product
    */
    @ApiMember(Description="Reference ID of the article/product", IsRequired=true)
    var articleCode:String? = null

    /**
    * Desired quantity of the article
    */
    @ApiMember(Description="Desired quantity of the article")
    var quantity:Int? = null

    /**
    * Strap definition
    */
    @ApiMember(Description="Strap definition")
    var strap:BasketStrapItem? = null
}

open class BasketStrapItem
{
    /**
    * Article reference
    */
    @ApiMember(Description="Article reference")
    var speakingArticleCode:String? = null

    /**
    * Buckle type Description
    */
    @ApiMember(Description="Buckle type Description")
    var buckleTypeDescription:String? = null

    /**
    * Buckle type
    */
    @ApiMember(Description="Buckle type")
    var buckleTypeCode:String? = null

    /**
    * watch 6 Length
    */
    @ApiMember(Description="watch 6 Length")
    var watch6Length:Int? = null

    /**
    * watch 12 Length
    */
    @ApiMember(Description="watch 12 Length")
    var watch12Length:Int? = null

    /**
    * Article Material Code
    */
    @ApiMember(Description="Article Material Code")
    var materialCode:String? = null

    /**
    * Article Material Description
    */
    @ApiMember(Description="Article Material Description")
    var materialDescription:String? = null

    /**
    * Article Color Code
    */
    @ApiMember(Description="Article Color Code")
    var colorCode:String? = null

    /**
    * Article Color Description
    */
    @ApiMember(Description="Article Color Description")
    var colorDescription:String? = null

    /**
    * Buckle Witdh
    */
    @ApiMember(Description="Buckle Witdh")
    var buckleWidth:String? = null

    /**
    * Article Lining Code
    */
    @ApiMember(Description="Article Lining Code")
    var liningCode:String? = null

    /**
    * Article Lining Description
    */
    @ApiMember(Description="Article Lining Description")
    var liningDescription:String? = null

    /**
    * Article Stitching Code
    */
    @ApiMember(Description="Article Stitching Code")
    var stitchingCode:String? = null

    /**
    * Article Stitching Description
    */
    @ApiMember(Description="Article Stitching Description")
    var stitchingDescription:String? = null

    /**
    * Article Edge Code
    */
    @ApiMember(Description="Article Edge Code")
    var edgeCode:String? = null

    /**
    * Article Edge Description
    */
    @ApiMember(Description="Article Edge Description")
    var edgeDescription:String? = null

    /**
    * Article Padding Code
    */
    @ApiMember(Description="Article Padding Code")
    var paddingCode:String? = null

    /**
    * Article Padding Description
    */
    @ApiMember(Description="Article Padding Description")
    var paddingDescription:String? = null

    /**
    * Article Speciality Code
    */
    @ApiMember(Description="Article Speciality Code")
    var specialtyCode:String? = null

    /**
    * Article Speciality Description
    */
    @ApiMember(Description="Article Speciality Description")
    var specialtyDescription:String? = null

    /**
    * Nuancier Code
    */
    @ApiMember(Description="Nuancier Code")
    var nuancierCode:String? = null

    /**
    * Strap Vip Order
    */
    @ApiMember(Description="Strap Vip Order")
    var isStrapVipOrder:Boolean? = null
}

open class CreateBasketResponse
{
    /**
    * ID of the newly created Purchase Order / Basket
    */
    @ApiMember(Description="ID of the newly created Purchase Order / Basket", IsRequired=true)
    var purchaseOrderId:Int? = null

    /**
    * Validation results of each basket item
    */
    @ApiMember(Description="Validation results of each basket item")
    var validationResults:ArrayList<BasketItemResponse> = ArrayList<BasketItemResponse>()
}

open class BasketItemResponse
{
    /**
    * Line number of the article
    */
    @ApiMember(Description="Line number of the article")
    var line:Int? = null

    /**
    * Reference ID of the article/product
    */
    @ApiMember(Description="Reference ID of the article/product")
    var articleCode:String? = null

    /**
    * Old reference ID of the article/product
    */
    @ApiMember(Description="Old reference ID of the article/product")
    var oldArticleCode:String? = null

    /**
    * Quantity of the article
    */
    @ApiMember(Description="Quantity of the article")
    var quantity:Int? = null

    /**
    * Delivery date of the article
    */
    @ApiMember(Description="Delivery date of the article")
    var deliveryDate:Date? = null

    /**
    * Strap definition
    */
    @ApiMember(Description="Strap definition")
    var strap:BasketStrapItem? = null

    /**
    * Errors for the article
    */
    @ApiMember(Description="Errors for the article")
    var errors:ArrayList<String> = ArrayList<String>()

    /**
    * Warnings for the article
    */
    @ApiMember(Description="Warnings for the article")
    var warnings:ArrayList<String> = ArrayList<String>()
}

Kotlin 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
			]
		}
	]
}