Richemont.Booster2.PublicApi

<back to all web services

GetStock

Requires Authentication
The following routes are available for this service:
GET/stock/{brand}Get stock
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Richemont.Booster2.PublicApi.Stock.ServiceModel;

namespace Richemont.Booster2.PublicApi.Stock.ServiceModel
{
    public partial class GetStock
        : StockRequest
    {
    }

    public partial class GetStockResponse
        : List<PosStockItem>
    {
    }

    public partial class Pos
    {
        ///<summary>
        ///Name of the POS
        ///</summary>
        [ApiMember(Description="Name of the POS", IsRequired=true)]
        public virtual string name { get; set; }

        ///<summary>
        ///POS Code
        ///</summary>
        [ApiMember(Description="POS Code", IsRequired=true)]
        public virtual string posCode { get; set; }

        ///<summary>
        ///Pos Code To Be Displayed
        ///</summary>
        [ApiMember(Description="Pos Code To Be Displayed", IsRequired=true)]
        public virtual string posCodeToBeDisplayed { get; set; }

        ///<summary>
        ///Country of the POS
        ///</summary>
        [ApiMember(Description="Country of the POS", IsRequired=true)]
        public virtual string country { get; set; }

        ///<summary>
        ///City of the POS
        ///</summary>
        [ApiMember(Description="City of the POS", IsRequired=true)]
        public virtual string city { get; set; }

        ///<summary>
        ///Postal Code
        ///</summary>
        [ApiMember(Description="Postal Code", IsRequired=true)]
        public virtual string postalCode { get; set; }

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

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

    public partial class PosStockItem
    {
        public PosStockItem()
        {
            stockItems = new List<StockItem>{};
        }

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

        ///<summary>
        ///Pos Code
        ///</summary>
        [ApiMember(Description="Pos Code", IsRequired=true)]
        public virtual string posCode { get; set; }

        ///<summary>
        ///Shared Stock Location
        ///</summary>
        [ApiMember(Description="Shared Stock Location", IsRequired=true)]
        public virtual Pos sharedStockLocation { get; set; }

        ///<summary>
        ///Stock Items
        ///</summary>
        [ApiMember(Description="Stock Items")]
        public virtual List<StockItem> stockItems { get; set; }
    }

    public partial class StockItem
    {
        public StockItem()
        {
            serialNumbers = new List<string>{};
            stockPositions = new List<StockPositionItem>{};
        }

        ///<summary>
        ///Article Code
        ///</summary>
        [ApiMember(Description="Article Code", IsRequired=true)]
        public virtual string articleCode { get; set; }

        ///<summary>
        ///Current Stock Quantity
        ///</summary>
        [ApiMember(Description="Current Stock Quantity", IsRequired=true)]
        public virtual int currentStockQuantity { get; set; }

        ///<summary>
        ///Serial Numbers
        ///</summary>
        [ApiMember(Description="Serial Numbers")]
        public virtual List<string> serialNumbers { get; set; }

        ///<summary>
        ///Stock Item in Details
        ///</summary>
        [ApiMember(Description="Stock Item in Details", IsRequired=true)]
        public virtual List<StockPositionItem> stockPositions { get; set; }
    }

    public partial class StockPositionItem
    {
        ///<summary>
        ///Quantity
        ///</summary>
        [ApiMember(Description="Quantity", IsRequired=true)]
        public virtual int quantity { get; set; }

        ///<summary>
        ///Serial Number
        ///</summary>
        [ApiMember(Description="Serial Number")]
        public virtual string serialNumber { get; set; }

        ///<summary>
        ///Stock Date
        ///</summary>
        [ApiMember(Description="Stock Date", IsRequired=true)]
        public virtual string stockDate { get; set; }

        ///<summary>
        ///Loaded On Date
        ///</summary>
        [ApiMember(Description="Loaded On Date", IsRequired=true)]
        public virtual string loadedOnDate { get; set; }

        ///<summary>
        ///Type e.g. consignment or standard
        ///</summary>
        [ApiMember(Description="Type e.g. consignment or standard", IsRequired=true)]
        public virtual string type { get; set; }

        ///<summary>
        ///Is Consignment Sellable 
        ///</summary>
        [ApiMember(Description="Is Consignment Sellable ", IsRequired=true)]
        public virtual bool isConsignmentSellable { get; set; }

        ///<summary>
        ///Sell-In Price. Disclaimer: this data will be arriving empty/null due to DealerCost project still being in test phase.
        ///</summary>
        [ApiMember(Description="Sell-In Price. Disclaimer: this data will be arriving empty/null due to DealerCost project still being in test phase.")]
        public virtual UnitNetAmount unitNetAmount { get; set; }

        ///<summary>
        ///Retail Sales Price
        ///</summary>
        [ApiMember(Description="Retail Sales Price")]
        public virtual UnitNetAmount retailSalesPrice { get; set; }
    }

    public partial class StockRequest
    {
        public StockRequest()
        {
            posCodes = new List<string>{};
            articleCodes = new List<string>{};
            clusterIds = new List<string>{};
        }

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

        ///<summary>
        ///POS Legacy
        ///</summary>
        [ApiMember(Description="POS Legacy")]
        public virtual List<string> posCodes { get; set; }

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

        ///<summary>
        ///Include Extra Info
        ///</summary>
        [ApiMember(Description="Include Extra Info")]
        public virtual bool includeExtraInfo { get; set; }

        ///<summary>
        ///Cluster Id
        ///</summary>
        [ApiMember(Description="Cluster Id")]
        public virtual List<string> clusterIds { get; set; }

        ///<summary>
        ///Include Consignment NotAuthorized POS
        ///</summary>
        [ApiMember(Description="Include Consignment NotAuthorized POS")]
        public virtual bool includeConsignmentNotAuthorizedPOS { get; set; }

        ///<summary>
        ///Include Retail Sales Price in the Output, by default: false
        ///</summary>
        [ApiMember(Description="Include Retail Sales Price in the Output, by default: false")]
        public virtual bool includeRSP { get; set; }

        ///<summary>
        ///In Stock Since date from 
        ///</summary>
        [ApiMember(Description="In Stock Since date from ")]
        public virtual DateTime? dateFrom { get; set; }

        ///<summary>
        ///In Stock Since date to
        ///</summary>
        [ApiMember(Description="In Stock Since date to")]
        public virtual DateTime? dateTo { get; set; }

        ///<summary>
        ///Item type, 'standard' OR 'consigned'. By default, all are coming
        ///</summary>
        [ApiMember(Description="Item type, 'standard' OR 'consigned'. By default, all are coming")]
        public virtual string type { get; set; }
    }

    public partial class UnitNetAmount
    {
        ///<summary>
        ///Currency Iso Code
        ///</summary>
        [ApiMember(Description="Currency Iso Code", IsRequired=true)]
        public virtual string currencyIsoCode { get; set; }

        ///<summary>
        ///Value
        ///</summary>
        [ApiMember(Description="Value", IsRequired=true)]
        public virtual decimal? value { get; set; }
    }

}

C# GetStock DTOs

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

HTTP + XML

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: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<ArrayOfPosStockItem xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Richemont.Booster2.PublicApi.Stock.ServiceModel" />