Richemont.Booster2.PublicApi

<back to all web services

GetStock

Requires Authentication
The following routes are available for this service:
GET/stock/{brand}Get stock
import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*
import com.google.gson.annotations.*
import com.google.gson.reflect.*


open class GetStock : StockRequest()
{
}

open class StockRequest
{
    /**
    * Brand
    */
    @ApiMember(Description="Brand", IsRequired=true)
    open var brand:String? = null

    /**
    * POS Legacy
    */
    @ApiMember(Description="POS Legacy")
    open var posCodes:ArrayList<String>? = null

    /**
    * Article Codes
    */
    @ApiMember(Description="Article Codes")
    open var articleCodes:ArrayList<String>? = null

    /**
    * Include Extra Info
    */
    @ApiMember(Description="Include Extra Info")
    open var includeExtraInfo:Boolean? = null

    /**
    * Cluster Id
    */
    @ApiMember(Description="Cluster Id")
    open var clusterIds:ArrayList<String>? = null

    /**
    * Include Consignment NotAuthorized POS
    */
    @ApiMember(Description="Include Consignment NotAuthorized POS")
    open var includeConsignmentNotAuthorizedPOS:Boolean? = null

    /**
    * Include Retail Sales Price in the Output, by default: false
    */
    @ApiMember(Description="Include Retail Sales Price in the Output, by default: false")
    open var includeRSP:Boolean? = null

    /**
    * In Stock Since date from 
    */
    @ApiMember(Description="In Stock Since date from ")
    open var dateFrom:Date? = null

    /**
    * In Stock Since date to
    */
    @ApiMember(Description="In Stock Since date to")
    open var dateTo:Date? = null

    /**
    * Item type, 'standard' OR 'consigned'. By default, all are coming
    */
    @ApiMember(Description="Item type, 'standard' OR 'consigned'. By default, all are coming")
    @SerializedName("type") open var Type:String? = null

    /**
    * Storage Location Identifier e.g. CPO, NEW, REP
    */
    @ApiMember(Description="Storage Location Identifier e.g. CPO, NEW, REP")
    open var storageLocationId:String? = null

    /**
    * Inventory segment e.g. CPO or null
    */
    @ApiMember(Description="Inventory segment e.g. CPO or null")
    open var inventorySegment:String? = null
}

open class GetStockResponse : ArrayList<PosStockItem>()
{
}

open class PosStockItem
{
    /**
    * Brand
    */
    @ApiMember(Description="Brand", IsRequired=true)
    open var brand:String? = null

    /**
    * Pos Code
    */
    @ApiMember(Description="Pos Code", IsRequired=true)
    open var posCode:String? = null

    /**
    * Shared Stock Location
    */
    @ApiMember(Description="Shared Stock Location", IsRequired=true)
    open var sharedStockLocation:Pos? = null

    /**
    * Stock Items
    */
    @ApiMember(Description="Stock Items")
    open var stockItems:ArrayList<StockItem>? = null
}

open class Pos
{
    /**
    * Name of the POS
    */
    @ApiMember(Description="Name of the POS", IsRequired=true)
    open var name:String? = null

    /**
    * POS Code
    */
    @ApiMember(Description="POS Code", IsRequired=true)
    open var posCode:String? = null

    /**
    * Pos Code To Be Displayed
    */
    @ApiMember(Description="Pos Code To Be Displayed", IsRequired=true)
    open var posCodeToBeDisplayed:String? = null

    /**
    * Country of the POS
    */
    @ApiMember(Description="Country of the POS", IsRequired=true)
    open var country:String? = null

    /**
    * City of the POS
    */
    @ApiMember(Description="City of the POS", IsRequired=true)
    open var city:String? = null

    /**
    * Postal Code
    */
    @ApiMember(Description="Postal Code", IsRequired=true)
    open var postalCode:String? = null

    /**
    * State
    */
    @ApiMember(Description="State", IsRequired=true)
    open var state:String? = null

    /**
    * Street
    */
    @ApiMember(Description="Street", IsRequired=true)
    open var street:String? = null
}

open class StockItem
{
    /**
    * Article Code
    */
    @ApiMember(Description="Article Code", IsRequired=true)
    open var articleCode:String? = null

    /**
    * Current Stock Quantity
    */
    @ApiMember(Description="Current Stock Quantity", IsRequired=true)
    open var currentStockQuantity:Int? = null

    /**
    * Serial Numbers
    */
    @ApiMember(Description="Serial Numbers")
    open var serialNumbers:ArrayList<String>? = null

    /**
    * Stock Item in Details
    */
    @ApiMember(Description="Stock Item in Details", IsRequired=true)
    open var stockPositions:ArrayList<StockPositionItem> = ArrayList<StockPositionItem>()
}

open class StockPositionItem
{
    /**
    * Quantity
    */
    @ApiMember(Description="Quantity", IsRequired=true)
    open var quantity:Int? = null

    /**
    * Serial Number
    */
    @ApiMember(Description="Serial Number")
    open var serialNumber:String? = null

    /**
    * Stock Date
    */
    @ApiMember(Description="Stock Date", IsRequired=true)
    open var stockDate:String? = null

    /**
    * Loaded On Date
    */
    @ApiMember(Description="Loaded On Date", IsRequired=true)
    open var loadedOnDate:String? = null

    /**
    * Type e.g. consignment or standard
    */
    @ApiMember(Description="Type e.g. consignment or standard", IsRequired=true)
    @SerializedName("type") open var Type:String? = null

    /**
    * Is Consignment Sellable 
    */
    @ApiMember(Description="Is Consignment Sellable ", IsRequired=true)
    open var isConsignmentSellable:Boolean? = null

    /**
    * Sell-In Price. Disclaimer: this data will be arriving empty/null due to DealerCost project still being in test phase.
    */
    @ApiMember(Description="Sell-In Price. Disclaimer: this data will be arriving empty/null due to DealerCost project still being in test phase.")
    open var unitNetAmount:UnitNetAmount? = null

    /**
    * Retail Sales Price
    */
    @ApiMember(Description="Retail Sales Price")
    open var retailSalesPrice:UnitNetAmount? = null

    /**
    * Storage Location
    */
    @ApiMember(Description="Storage Location")
    open var storageLocation:StorageLocation? = null
}

open class UnitNetAmount
{
    /**
    * Currency Iso Code
    */
    @ApiMember(Description="Currency Iso Code", IsRequired=true)
    open var currencyIsoCode:String? = null

    /**
    * Value
    */
    @ApiMember(Description="Value", IsRequired=true)
    open var value:BigDecimal? = null
}

open class StorageLocation
{
    /**
    * Storage Location Identifier
    */
    @ApiMember(Description="Storage Location Identifier", IsRequired=true)
    open var storageLocationId:String? = null

    /**
    * Storage Location Description
    */
    @ApiMember(Description="Storage Location Description")
    open var storageLocationDs:String? = null
}

Kotlin GetStock 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.

GET /stock/{brand} HTTP/1.1 
Host: dev-api-booster.richemont.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

[
	
]