AIM Web Services

<back to all web services

SearchInventoryRequest

SearchInventory
Requires active-e Inventory Service

The following routes are available for this service:
POST, GET/api/SearchInventory
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using AIM.WebService;
using AIM.Model.DB;
using AIM.Global.Utils;
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.Global.Utils
{
    [DataContract]
    public partial class BindableObject
    {
    }

}

namespace AIM.Model.DB
{
    [DataContract]
    public partial class SearchInventoryResultSet
        : BindableObject, IAIMInventoryRecord
    {
        [DataMember]
        public virtual long Pk { get; set; }

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

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

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

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

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

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

        [DataMember]
        public virtual decimal? 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 string Sku { get; set; }

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

        [DataMember]
        public virtual bool? Discontinued { get; set; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        [DataMember]
        public virtual decimal ActiveePrice { 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 AvailableQuantity { get; set; }

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

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

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

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

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

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

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

        [DataMember]
        public virtual DateTime TimeStamp { 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 InventoryDetail
    {
        public InventoryDetail()
        {
            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; }
    }

    [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; }
    }

    [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; }
    }

    [DataContract]
    public partial class SearchInventoryApiResult
        : SearchInventoryResultSet
    {
        [DataMember]
        public virtual InventoryDetail Detail { get; set; }

        [DataMember]
        public virtual ImageInfo IconImage { get; set; }

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

    ///<summary>
    ///SearchInventoryRequires active-e Inventory Service
    ///</summary>
    [DataContract]
    public partial class SearchInventoryRequest
        : BaseSecureRequest
    {
        public SearchInventoryRequest()
        {
            CatIdList = new List<long>{};
            SubIdList = new List<long>{};
            MfgIdList = new List<long>{};
            SelIdList = new List<long>{};
        }

        ///<summary>
        ///If sent, only items from the passed location will be returned
        ///</summary>
        [DataMember]
        [ApiMember(DataType="integer", Description="If sent, only items from the passed location will be returned", Format="int32", Name="LocFk")]
        public virtual int? LocFk { get; set; }

        ///<summary>
        ///For Internal Use Only
        ///</summary>
        [DataMember]
        [ApiMember(DataType="integer", Description="For Internal Use Only", Format="int32", Name="MfgFk")]
        public virtual int? MfgFk { get; set; }

        ///<summary>
        ///For Internal Use Only
        ///</summary>
        [DataMember]
        [ApiMember(DataType="integer", Description="For Internal Use Only", Format="int32", Name="CatFk")]
        public virtual int? CatFk { get; set; }

        ///<summary>
        ///For Internal Use Only
        ///</summary>
        [DataMember]
        [ApiMember(DataType="integer", Description="For Internal Use Only", Format="int32", Name="SubFk")]
        public virtual int? SubFk { get; set; }

        ///<summary>
        ///For Internal Use Only
        ///</summary>
        [DataMember]
        [ApiMember(DataType="integer", Description="For Internal Use Only", Format="int32", Name="SelFk")]
        public virtual int? SelFk { get; set; }

        ///<summary>
        ///If sent, only items from the passed category# will be returned
        ///</summary>
        [DataMember]
        [ApiMember(DataType="integer", Description="If sent, only items from the passed category# will be returned", Format="int32", Name="Cat")]
        public virtual int? Cat { get; set; }

        ///<summary>
        ///If sent, only items from the passed subcategory# will be returned. Must be used in conjunction with the Cat parameter.
        ///</summary>
        [DataMember]
        [ApiMember(DataType="integer", Description="If sent, only items from the passed subcategory# will be returned. Must be used in conjunction with the Cat parameter.", Format="int32", Name="Sub")]
        public virtual int? Sub { get; set; }

        ///<summary>
        ///If sent, only items with the passed selection code will be returned
        ///</summary>
        [DataMember]
        [ApiMember(Description="If sent, only items with the passed selection code will be returned", Name="SelectionCode")]
        public virtual string SelectionCode { get; set; }

        ///<summary>
        ///If sent, only items with the passed mfg code will be returned
        ///</summary>
        [DataMember]
        [ApiMember(Description="If sent, only items with the passed mfg code will be returned", Name="Mfg")]
        public virtual string Mfg { get; set; }

        ///<summary>
        ///Serialized Items will be included in the search results
        ///</summary>
        [DataMember]
        [ApiMember(DataType="boolean", Description="Serialized Items will be included in the search results", Name="IncludeSerials")]
        public virtual bool? IncludeSerials { get; set; }

        ///<summary>
        ///Media Items will be included in the search results
        ///</summary>
        [DataMember]
        [ApiMember(DataType="boolean", Description="Media Items will be included in the search results", Name="IncludeMedia")]
        public virtual bool? IncludeMedia { get; set; }

        ///<summary>
        ///Non-Serialized, Non-Media Items will be included in the search results
        ///</summary>
        [DataMember]
        [ApiMember(DataType="boolean", Description="Non-Serialized, Non-Media Items will be included in the search results", Name="IncludeAccessories")]
        public virtual bool? IncludeAccessories { get; set; }

        ///<summary>
        ///Package Deal Items will be included in the search results
        ///</summary>
        [DataMember]
        [ApiMember(DataType="boolean", Description="Package Deal Items will be included in the search results", Name="IncludePackages")]
        public virtual bool? IncludePackages { get; set; }

        ///<summary>
        ///The string to be searched for
        ///</summary>
        [DataMember]
        [ApiMember(Description="The string to be searched for", Name="SearchStr")]
        public virtual string SearchStr { get; set; }

        ///<summary>
        ///If set, only items with the exact model contained in the search string will be returned
        ///</summary>
        [DataMember]
        [ApiMember(DataType="boolean", Description="If set, only items with the exact model contained in the search string will be returned", Name="ExactModel")]
        public virtual bool? ExactModel { get; set; }

        ///<summary>
        ///The Starting Offse
        ///</summary>
        [DataMember]
        [ApiMember(DataType="integer", Description="The Starting Offse", Format="int64", Name="StartOffset")]
        public virtual long? StartOffset { get; set; }

        ///<summary>
        ///The # of records to be returned
        ///</summary>
        [DataMember]
        [ApiMember(DataType="integer", Description="The # of records to be returned", Format="int64", Name="RecordCount")]
        public virtual long? RecordCount { get; set; }

        ///<summary>
        ///If set, Icon Image Urls will be included in the result, if available
        ///</summary>
        [DataMember]
        [ApiMember(DataType="boolean", Description="If set, Icon Image Urls will be included in the result, if available", Name="IncludeIconImage")]
        public virtual bool? IncludeIconImage { get; set; }

        ///<summary>
        ///If sent, only items from the passed category IDs will be returned
        ///</summary>
        [DataMember]
        [ApiMember(Description="If sent, only items from the passed category IDs will be returned", Name="CatIdList")]
        public virtual List<long> CatIdList { get; set; }

        ///<summary>
        ///If sent, only items from the passed subcategory IDs will be returned
        ///</summary>
        [DataMember]
        [ApiMember(Description="If sent, only items from the passed subcategory IDs will be returned", Name="SubIdList")]
        public virtual List<long> SubIdList { get; set; }

        ///<summary>
        ///If sent, only items from the passed mfg IDs will be returned
        ///</summary>
        [DataMember]
        [ApiMember(Description="If sent, only items from the passed mfg IDs will be returned", Name="MfgIdList")]
        public virtual List<long> MfgIdList { get; set; }

        ///<summary>
        ///If sent, only items from the passed selection code IDs will be returned
        ///</summary>
        [DataMember]
        [ApiMember(Description="If sent, only items from the passed selection code IDs will be returned", Name="SelIdList")]
        public virtual List<long> SelIdList { get; set; }

        ///<summary>
        ///Deleted Items will be included in the search results
        ///</summary>
        [DataMember]
        [ApiMember(DataType="boolean", Description="Deleted Items will be included in the search results", Name="IncludeDeleted")]
        public virtual bool? IncludeDeleted { get; set; }

        ///<summary>
        ///If sent, only inventory changed on or after this date/time will be included
        ///</summary>
        [DataMember]
        [ApiMember(DataType="string", Description="If sent, only inventory changed on or after this date/time will be included", Format="date", Name="ChangedDate", ParameterType="query")]
        public virtual DateTime? ChangedDate { get; set; }

        ///<summary>
        ///Package Deal Line Items will be included
        ///</summary>
        [DataMember]
        [ApiMember(DataType="boolean", Description="Package Deal Line Items will be included", Name="IncludePackageLineItems")]
        public virtual bool? IncludePackageLineItems { get; set; }

        ///<summary>
        ///If set, the InventoryDetails object for each item will also be returned. This is much slower.
        ///</summary>
        [DataMember]
        [ApiMember(DataType="boolean", Description="If set, the InventoryDetails object for each item will also be returned. This is much slower.", Name="IncludeDetails")]
        public virtual bool? IncludeDetails { get; set; }

        ///<summary>
        ///If sent, only items with an Available Quantity greater then or equal to the sent value will be returned. Use of this parameter requires that the LocFk parameter also be sent.
        ///</summary>
        [DataMember]
        [ApiMember(DataType="integer", Description="If sent, only items with an Available Quantity greater then or equal to the sent value will be returned. Use of this parameter requires that the LocFk parameter also be sent.", Format="int32", Name="MinimumAvailableQuantity")]
        public virtual int? MinimumAvailableQuantity { get; set; }
    }

    [DataContract]
    public partial class SearchInventoryResponse
        : BaseResponse
    {
        public SearchInventoryResponse()
        {
            Records = new List<SearchInventoryApiResult>{};
        }

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

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

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

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

        [DataMember]
        [ApiMember(Name="Records", ParameterType="body")]
        public virtual List<SearchInventoryApiResult> Records { get; set; }
    }

}

C# SearchInventoryRequest 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/SearchInventory HTTP/1.1 
Host: active-ewebservice.biz 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"LocFk":0,"MfgFk":0,"CatFk":0,"SubFk":0,"SelFk":0,"Cat":0,"Sub":0,"SelectionCode":"String","Mfg":"String","IncludeSerials":false,"IncludeMedia":false,"IncludeAccessories":false,"IncludePackages":false,"SearchStr":"String","ExactModel":false,"StartOffset":0,"RecordCount":0,"IncludeIconImage":false,"CatIdList":[0],"SubIdList":[0],"MfgIdList":[0],"SelIdList":[0],"IncludeDeleted":false,"ChangedDate":"0001-01-01T00:00:00.0000000","IncludePackageLineItems":false,"IncludeDetails":false,"MinimumAvailableQuantity":0,"Token":"String","DeviceId":"String","AppId":"String","ApiKey":"String","OAuthToken":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"StartOffset":0,"RecordCount":0,"RemainingRecords":0,"TotalRecords":0,"Records":[{"Detail":{"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"},"IconImage":{"Url":"String","ImageStream":"String","ImageSize":"String","ErrorMessage":"String","UriPk":0},"CustomerPrice":0,"Pk":0,"Description":"String","InventoryType":"String","Manufacturer":"String","Model":"String","Category":0,"CategoryDescription":"String","SubCategory":0,"SubCategoryDescription":"String","SelectionCode":"String","SelectionCodeDescription":"String","Sku":"String","Mpn":"String","Discontinued":false,"Attribute1":"String","Attribute2":"String","Attribute3":"String","Attribute4":"String","Attribute5":"String","Attribute6":"String","Attribute7":"String","Attribute8":"String","Attribute9":"String","Attribute10":"String","Attribute11":"String","Attribute12":"String","Attribute13":"String","Attribute14":"String","Attribute15":"String","Attribute16":"String","Attribute17":"String","Attribute18":"String","Attribute19":"String","Attribute20":"String","ComputerQuantity":0,"OurPrice":0,"RetailPrice":0,"ActiveePrice":0,"PriceA":0,"PriceB":0,"PriceC":0,"MinPrice":0,"AvailableQuantity":0,"IsMedia":false,"IsPackage":false,"HasImage":false,"SearchTerm":"String","Keywords":"String","KeywordsOrigin":"String","Deleted":false,"PackageLineItems":[{"Model":"String","Cat":0,"Sub":0,"Description":"String","Quantity":0,"Amount":0,"Discount":0,"ItemType":"String"}]}],"Status":{"StatusCode":"String","Login":"String","ErrorCode":"String","ErrorDisplayText":"String","ErrorMessage":"String","DomainName":"String","IpAddress":"String"}}