AIM Web Services

<back to all web services

InventoryDetailRequest

InventoryDetail
Requires active-e Inventory Service

The following routes are available for this service:
POST, GET/api/InventoryDetail
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using AIM.WebService;
using AIM;

namespace AIM
{
    [DataContract]
    public partial class LocationInfo
    {
        [DataMember]
        public virtual long Id { get; set; }

        [DataMember]
        public virtual string Desc { get; set; }

        [DataMember]
        public virtual string ShortDesc { get; set; }

        [DataMember]
        public virtual string Region { get; set; }

        [DataMember]
        public virtual decimal Latitude { get; set; }

        [DataMember]
        public virtual decimal Longitude { get; set; }

        [DataMember]
        public virtual string InStorePickup { get; set; }

        [DataMember]
        public virtual bool Active { get; set; }

        [DataMember]
        public virtual int? CashSaleAcct { get; set; }
    }

}

namespace AIM.WebService
{
    [DataContract]
    public partial class ActiveEInfo
    {
        public ActiveEInfo()
        {
            WebCategoryIds = new List<long>{};
        }

        [DataMember]
        public virtual string Dimension { get; set; }

        [DataMember]
        public virtual string WebDescription { get; set; }

        [DataMember]
        public virtual string Summary { get; set; }

        [DataMember]
        public virtual string SETitle { get; set; }

        [DataMember]
        public virtual string SEDescription { get; set; }

        [DataMember]
        public virtual string SEKeywords { get; set; }

        [DataMember]
        public virtual string SEAltText { get; set; }

        [DataMember]
        public virtual string SEHtmlFreeText { get; set; }

        [DataMember]
        public virtual bool Unpublished { get; set; }

        [DataMember]
        public virtual bool FreeShipping { get; set; }

        [DataMember]
        public virtual bool IsFeatured { get; set; }

        [DataMember]
        public virtual List<long> WebCategoryIds { get; set; }
    }

    [DataContract]
    public partial class AddOnDetail
    {
        [DataMember]
        public virtual long SadPk { get; set; }

        [DataMember]
        public virtual long SkuPk { get; set; }

        [DataMember]
        public virtual long CatPk { get; set; }

        [DataMember]
        public virtual long SubPk { get; set; }

        [DataMember]
        public virtual string Item { get; set; }

        [DataMember]
        public virtual string Description { get; set; }

        [DataMember]
        public virtual decimal Price { get; set; }
    }

    [DataContract]
    public partial class BaseRequest
    {
        ///<summary>
        ///This is your AIM API Key provided by Tri-Tech
        ///</summary>
        [DataMember]
        [ApiMember(DataType="string", Description="This is your AIM API Key provided by Tri-Tech", IsRequired=true, Name="ApiKey", ParameterType="header")]
        public virtual string ApiKey { get; set; }

        [DataMember]
        [ApiMember(DataType="string", Name="OAuthToken", ParameterType="header")]
        public virtual string OAuthToken { get; set; }
    }

    [DataContract]
    public partial class BaseResponse
    {
        ///<summary>
        ///
        ///</summary>
        [DataMember]
        [ApiMember(DataType="BaseResponseResult", Description="", Name="Status", ParameterType="body")]
        public virtual BaseResponseResult Status { get; set; }
        [DataContract]
        public partial class BaseResponseResult
        {
            ///<summary>
            ///
            ///</summary>
            [DataMember]
            [ApiMember(DataType="string", Description="", Name="StatusCode", ParameterType="body")]
            public virtual string StatusCode { get; set; }

            ///<summary>
            ///
            ///</summary>
            [DataMember]
            [ApiMember(DataType="string", Description="", Name="Login", ParameterType="body")]
            public virtual string Login { get; set; }

            ///<summary>
            ///
            ///</summary>
            [DataMember]
            [ApiMember(DataType="string", Description="", Name="ErrorCode", ParameterType="body")]
            public virtual string ErrorCode { get; set; }

            ///<summary>
            ///
            ///</summary>
            [DataMember]
            [ApiMember(DataType="string", Description="", Name="ErrorDisplayText", ParameterType="body")]
            public virtual string ErrorDisplayText { get; set; }

            ///<summary>
            ///
            ///</summary>
            [DataMember]
            [ApiMember(DataType="string", Description="", Name="ErrorMessage", ParameterType="body")]
            public virtual string ErrorMessage { get; set; }

            ///<summary>
            ///
            ///</summary>
            [DataMember]
            [ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="DomainName", ParameterType="body")]
            public virtual string DomainName { get; set; }

            ///<summary>
            ///
            ///</summary>
            [DataMember]
            [ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="IPAddress", ParameterType="body")]
            public virtual string IpAddress { get; set; }
        }

    }

    [DataContract]
    public partial class BaseSecureRequest
        : BaseRequest
    {
        ///<summary>
        ///
        ///</summary>
        [DataMember]
        [ApiMember(DataType="string", Description="", Name="Token", ParameterType="Header")]
        public virtual string Token { get; set; }

        ///<summary>
        ///
        ///</summary>
        [DataMember]
        [ApiMember(DataType="string", Description="", Name="DeviceId", ParameterType="Header")]
        public virtual string DeviceId { get; set; }

        ///<summary>
        ///
        ///</summary>
        [DataMember]
        [ApiMember(DataType="string", Description="", IsRequired=true, Name="AppId", ParameterType="Header")]
        public virtual string AppId { get; set; }
    }

    [DataContract]
    public partial class ImageInfo
    {
        [DataMember]
        public virtual string Url { get; set; }

        [DataMember]
        public virtual string ImageStream { get; set; }

        [DataMember]
        public virtual string ImageSize { get; set; }

        [DataMember]
        public virtual string ErrorMessage { get; set; }

        [DataMember]
        public virtual long? UriPk { get; set; }
    }

    [DataContract]
    public partial class InventoryDetailAttribute
    {
        [DataMember]
        public virtual string Name { get; set; }

        [DataMember]
        public virtual string Value { get; set; }

        [DataMember]
        public virtual int Priority { get; set; }

        ///<summary>
        ///1 is 'Don't Send to Web', 2 is 'Guided Navigation'
        ///</summary>
        [DataMember]
        [ApiMember(DataType="int", Description="1 is 'Don't Send to Web', 2 is 'Guided Navigation'", Name="WebType", ParameterType="query")]
        public virtual int WebType { get; set; }
    }

    [DataContract]
    public partial class InventoryDetailByLocation
    {
        public InventoryDetailByLocation()
        {
            Serials = new List<InventoryDetailBySerial>{};
            Substitutes = new List<InventoryDetailSubstitute>{};
        }

        [DataMember]
        public virtual long SaqPk { get; set; }

        [DataMember]
        public virtual LocationInfo LocationInfo { get; set; }

        [DataMember]
        public virtual List<InventoryDetailBySerial> Serials { get; set; }

        [DataMember]
        public virtual List<InventoryDetailSubstitute> Substitutes { get; set; }

        [DataMember]
        public virtual decimal Retail { get; set; }

        [DataMember]
        public virtual decimal OurPrice { get; set; }

        [DataMember]
        public virtual decimal? SalePrice { get; set; }

        [DataMember]
        public virtual string SaleInfo { get; set; }

        [DataMember]
        public virtual decimal PriceA { get; set; }

        [DataMember]
        public virtual decimal PriceB { get; set; }

        [DataMember]
        public virtual decimal PriceC { get; set; }

        [DataMember]
        public virtual decimal MinPrice { get; set; }

        [DataMember]
        public virtual decimal ActiveEPrice { get; set; }

        [DataMember]
        public virtual decimal CustomerPrice { get; set; }

        [DataMember]
        public virtual bool AllowPriceChange { get; set; }

        [DataMember]
        public virtual decimal Qty { get; set; }

        [DataMember]
        public virtual decimal QtyAvail { get; set; }

        [DataMember]
        public virtual decimal ActiveeHoldbackQty { get; set; }

        [DataMember]
        public virtual int ReorderMin { get; set; }

        [DataMember]
        public virtual int ReorderMax { get; set; }

        [DataMember]
        public virtual decimal? AverageCost { get; set; }

        [DataMember]
        public virtual decimal? WeightedCost { get; set; }

        [DataMember]
        public virtual string Locator { get; set; }

        [DataMember]
        public virtual string SelectionCode { get; set; }

        [DataMember]
        public virtual string SelectionCodeDescription { get; set; }

        [DataMember]
        public virtual decimal Spiff { get; set; }

        [DataMember]
        public virtual decimal? CurrentSpotCheckQty { get; set; }

        [DataMember]
        public virtual decimal QtyOut { get; set; }

        [DataMember]
        public virtual decimal QtyOnOrder { get; set; }

        [DataMember]
        public virtual decimal AvailableForSTR { get; set; }
    }

    [DataContract]
    public partial class InventoryDetailBySerial
    {
        public InventoryDetailBySerial()
        {
            Attributes = new List<InventoryDetailAttribute>{};
            Images = new List<ImageInfo>{};
        }

        [DataMember]
        public virtual long SasPk { get; set; }

        [DataMember]
        public virtual string Serial { get; set; }

        [DataMember]
        public virtual decimal Retail { get; set; }

        [DataMember]
        public virtual decimal OurPrice { get; set; }

        [DataMember]
        public virtual decimal? SalePrice { get; set; }

        [DataMember]
        public virtual string Status { get; set; }

        [DataMember]
        public virtual string SaleInfo { get; set; }

        [DataMember]
        public virtual decimal PriceA { get; set; }

        [DataMember]
        public virtual decimal PriceB { get; set; }

        [DataMember]
        public virtual decimal PriceC { get; set; }

        [DataMember]
        public virtual decimal MinPrice { get; set; }

        [DataMember]
        public virtual decimal ActiveEPrice { get; set; }

        [DataMember]
        public virtual bool AllowPriceChange { get; set; }

        [DataMember]
        public virtual decimal? Cost { get; set; }

        [DataMember]
        public virtual decimal? WeightedCost { get; set; }

        [DataMember]
        public virtual string Notes { get; set; }

        [DataMember]
        public virtual List<InventoryDetailAttribute> Attributes { get; set; }

        [DataMember]
        public virtual List<ImageInfo> Images { get; set; }

        [DataMember]
        public virtual bool HasImages { get; set; }

        [DataMember]
        public virtual bool IsActiveeHoldback { get; set; }

        [DataMember]
        public virtual int? CustomerAcct { get; set; }

        [DataMember]
        public virtual bool AvailableForSTR { get; set; }
    }

    [DataContract]
    public partial class InventoryDetailByVariant
    {
        public InventoryDetailByVariant()
        {
            Attributes = new List<InventoryDetailAttribute>{};
            LocationDetails = new List<InventoryDetailByLocation>{};
            Images = new List<ImageInfo>{};
            Barcodes = new List<string>{};
        }

        [DataMember]
        public virtual long SkuPk { get; set; }

        [DataMember]
        public virtual string Sku { get; set; }

        [DataMember]
        public virtual decimal? VendorCost { get; set; }

        [DataMember]
        public virtual string VendorName { get; set; }

        [DataMember]
        public virtual List<InventoryDetailAttribute> Attributes { get; set; }

        [DataMember]
        public virtual List<InventoryDetailByLocation> LocationDetails { get; set; }

        [DataMember]
        public virtual List<ImageInfo> Images { get; set; }

        [DataMember]
        public virtual bool HasImages { get; set; }

        [DataMember]
        public virtual List<string> Barcodes { get; set; }
    }

    ///<summary>
    ///InventoryDetailRequires active-e Inventory Service
    ///</summary>
    [DataContract]
    public partial class InventoryDetailRequest
        : BaseSecureRequest
    {
        [DataMember]
        public virtual long? Pk { get; set; }

        [DataMember]
        public virtual string PkType { get; set; }

        [DataMember]
        public virtual string Model { get; set; }

        [DataMember]
        public virtual bool SkipImages { get; set; }

        [DataMember]
        public virtual bool IncludeSerialInfo { get; set; }

        [DataMember]
        public virtual int? CustomerAcct { get; set; }
    }

    [DataContract]
    public partial class InventoryDetailResponse
        : BaseResponse
    {
        public InventoryDetailResponse()
        {
            Images = new List<ImageInfo>{};
            VariantDetails = new List<InventoryDetailByVariant>{};
            AddOns = new List<AddOnDetail>{};
        }

        [DataMember]
        public virtual long SadPk { get; set; }

        [DataMember]
        public virtual string InvType { get; set; }

        [DataMember]
        public virtual string Model { get; set; }

        [DataMember]
        public virtual string Description { get; set; }

        [DataMember]
        public virtual string Mfg { get; set; }

        [DataMember]
        public virtual int Category { get; set; }

        [DataMember]
        public virtual string CategoryDescription { get; set; }

        [DataMember]
        public virtual int SubCategory { get; set; }

        [DataMember]
        public virtual string SubCategoryDescription { get; set; }

        [DataMember]
        public virtual string SelectionCode { get; set; }

        [DataMember]
        public virtual string SelectionCodeDescription { get; set; }

        [DataMember]
        public virtual bool SellSerialsOnline { get; set; }

        [DataMember]
        public virtual string Notes { get; set; }

        [DataMember]
        public virtual List<ImageInfo> Images { get; set; }

        [DataMember]
        public virtual bool HasImages { get; set; }

        [DataMember]
        public virtual List<InventoryDetailByVariant> VariantDetails { get; set; }

        [DataMember]
        public virtual List<AddOnDetail> AddOns { get; set; }

        [DataMember]
        public virtual ActiveEInfo ActiveEInfo { get; set; }

        [DataMember]
        public virtual decimal Weight { get; set; }

        [DataMember]
        public virtual string Unit { get; set; }

        [DataMember]
        public virtual decimal ShipCharge { get; set; }
    }

    [DataContract]
    public partial class InventoryDetailSubstitute
    {
        [DataMember]
        public virtual string Model { get; set; }

        [DataMember]
        public virtual string Sku { get; set; }

        [DataMember]
        public virtual string Mfg { get; set; }

        [DataMember]
        public virtual string Description { get; set; }

        [DataMember]
        public virtual decimal Price { get; set; }

        [DataMember]
        public virtual decimal AvailableQty { get; set; }
    }

}

C# InventoryDetailRequest DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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

POST /api/InventoryDetail HTTP/1.1 
Host: active-ewebservice.biz 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"Pk":0,"PkType":"String","Model":"String","SkipImages":false,"IncludeSerialInfo":false,"CustomerAcct":0,"Token":"String","DeviceId":"String","AppId":"String","ApiKey":"String","OAuthToken":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"SadPk":0,"InvType":"String","Model":"String","Description":"String","Mfg":"String","Category":0,"CategoryDescription":"String","SubCategory":0,"SubCategoryDescription":"String","SelectionCode":"String","SelectionCodeDescription":"String","SellSerialsOnline":false,"Notes":"String","Images":[{"Url":"String","ImageStream":"String","ImageSize":"String","ErrorMessage":"String","UriPk":0}],"HasImages":true,"VariantDetails":[{}],"AddOns":[{}],"ActiveEInfo":{"Dimension":"String","WebDescription":"String","Summary":"String","SETitle":"String","SEDescription":"String","SEKeywords":"String","SEAltText":"String","SEHtmlFreeText":"String","Unpublished":false,"FreeShipping":false,"IsFeatured":false,"WebCategoryIds":[0]},"Weight":0,"Unit":"String","ShipCharge":0,"Status":{"StatusCode":"String","Login":"String","ErrorCode":"String","ErrorDisplayText":"String","ErrorMessage":"String","DomainName":"String","IpAddress":"String"}}