| GET | /stock/{brand}/{posCode}/{articleCode} | Get stock details |
|---|
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 GetStockDetail
{
///<summary>
///Brand
///</summary>
[ApiMember(Description="Brand", IsRequired=true)]
public virtual string brand { get; set; }
///<summary>
///POS Legacy
///</summary>
[ApiMember(Description="POS Legacy", IsRequired=true)]
public virtual string posCode { get; set; }
///<summary>
///Article Code
///</summary>
[ApiMember(Description="Article Code", IsRequired=true)]
public virtual string articleCode { get; set; }
}
public partial class GetStockDetailResponse
{
public GetStockDetailResponse()
{
stockPositions = new List<StockPositionItem>{};
}
///<summary>
///Article code
///</summary>
[ApiMember(Description="Article code", IsRequired=true)]
public virtual string articleCode { get; set; }
///<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>
///Current Stock Quantity
///</summary>
[ApiMember(Description="Current Stock Quantity", IsRequired=true)]
public virtual int currentStockQuantity { get; set; }
///<summary>
///Shared Stock Location
///</summary>
[ApiMember(Description="Shared Stock Location", IsRequired=true)]
public virtual Pos sharedStockLocation { get; set; }
///<summary>
///Stock Positions
///</summary>
[ApiMember(Description="Stock Positions", IsRequired=true)]
public virtual List<StockPositionItem> stockPositions { get; set; }
}
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 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 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; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /stock/{brand}/{posCode}/{articleCode} HTTP/1.1
Host: dev-api-booster.richemont.com
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<GetStockDetailResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Richemont.Booster2.PublicApi.Stock.ServiceModel">
<articleCode>String</articleCode>
<brand>String</brand>
<currentStockQuantity>0</currentStockQuantity>
<posCode>String</posCode>
<sharedStockLocation>
<city>String</city>
<country>String</country>
<name>String</name>
<posCode>String</posCode>
<posCodeToBeDisplayed>String</posCodeToBeDisplayed>
<postalCode>String</postalCode>
<state>String</state>
<street>String</street>
</sharedStockLocation>
<stockPositions>
<StockPositionItem>
<isConsignmentSellable>false</isConsignmentSellable>
<loadedOnDate>String</loadedOnDate>
<quantity>0</quantity>
<retailSalesPrice>
<currencyIsoCode>String</currencyIsoCode>
<value>0</value>
</retailSalesPrice>
<serialNumber>String</serialNumber>
<stockDate>String</stockDate>
<type>String</type>
<unitNetAmount>
<currencyIsoCode>String</currencyIsoCode>
<value>0</value>
</unitNetAmount>
</StockPositionItem>
</stockPositions>
</GetStockDetailResponse>