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
import java.math.*
import java.util.*
import net.servicestack.client.*


/**
* InventoryDetailRequires active-e Inventory Service
*/
@DataContract
open class InventoryDetailRequest : BaseSecureRequest()
{
    @DataMember
    var Pk:Long? = null

    @DataMember
    var PkType:String? = null

    @DataMember
    var Model:String? = null

    @DataMember
    var SkipImages:Boolean? = null

    @DataMember
    var IncludeSerialInfo:Boolean? = null

    @DataMember
    var CustomerAcct:Int? = null
}

@DataContract
open class BaseSecureRequest : BaseRequest()
{
    /**
    * 
    */
    @DataMember
    @ApiMember(DataType="string", Description="", Name="Token", ParameterType="Header")
    var Token:String? = null

    /**
    * 
    */
    @DataMember
    @ApiMember(DataType="string", Description="", Name="DeviceId", ParameterType="Header")
    var DeviceId:String? = null

    /**
    * 
    */
    @DataMember
    @ApiMember(DataType="string", Description="", IsRequired=true, Name="AppId", ParameterType="Header")
    var AppId:String? = null
}

@DataContract
open class BaseRequest
{
    /**
    * This is your AIM API Key provided by Tri-Tech
    */
    @DataMember
    @ApiMember(DataType="string", Description="This is your AIM API Key provided by Tri-Tech", IsRequired=true, Name="ApiKey", ParameterType="header")
    var ApiKey:String? = null

    @DataMember
    @ApiMember(DataType="string", Name="OAuthToken", ParameterType="header")
    var OAuthToken:String? = null
}

@DataContract
open class InventoryDetailResponse : BaseResponse()
{
    @DataMember
    var SadPk:Long? = null

    @DataMember
    var InvType:String? = null

    @DataMember
    var Model:String? = null

    @DataMember
    var Description:String? = null

    @DataMember
    var Mfg:String? = null

    @DataMember
    var Category:Int? = null

    @DataMember
    var CategoryDescription:String? = null

    @DataMember
    var SubCategory:Int? = null

    @DataMember
    var SubCategoryDescription:String? = null

    @DataMember
    var SelectionCode:String? = null

    @DataMember
    var SelectionCodeDescription:String? = null

    @DataMember
    var SellSerialsOnline:Boolean? = null

    @DataMember
    var Notes:String? = null

    @DataMember
    var Images:ArrayList<ImageInfo> = ArrayList<ImageInfo>()

    @DataMember
    var HasImages:Boolean? = null

    @DataMember
    var VariantDetails:ArrayList<InventoryDetailByVariant> = ArrayList<InventoryDetailByVariant>()

    @DataMember
    var AddOns:ArrayList<AddOnDetail> = ArrayList<AddOnDetail>()

    @DataMember
    var ActiveEInfo:ActiveEInfo? = null

    @DataMember
    var Weight:BigDecimal? = null

    @DataMember
    var Unit:String? = null

    @DataMember
    var ShipCharge:BigDecimal? = null
}

@DataContract
open class BaseResponse
{
    /**
    * 
    */
    @DataMember
    @ApiMember(DataType="BaseResponseResult", Description="", Name="Status", ParameterType="body")
    var Status:BaseResponseResult? = null
}

@DataContract
open class BaseResponseResult
{
    /**
    * 
    */
    @DataMember
    @ApiMember(DataType="string", Description="", Name="StatusCode", ParameterType="body")
    var StatusCode:String? = null

    /**
    * 
    */
    @DataMember
    @ApiMember(DataType="string", Description="", Name="Login", ParameterType="body")
    var Login:String? = null

    /**
    * 
    */
    @DataMember
    @ApiMember(DataType="string", Description="", Name="ErrorCode", ParameterType="body")
    var ErrorCode:String? = null

    /**
    * 
    */
    @DataMember
    @ApiMember(DataType="string", Description="", Name="ErrorDisplayText", ParameterType="body")
    var ErrorDisplayText:String? = null

    /**
    * 
    */
    @DataMember
    @ApiMember(DataType="string", Description="", Name="ErrorMessage", ParameterType="body")
    var ErrorMessage:String? = null

    /**
    * 
    */
    @DataMember
    @ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="DomainName", ParameterType="body")
    var DomainName:String? = null

    /**
    * 
    */
    @DataMember
    @ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="IPAddress", ParameterType="body")
    var IpAddress:String? = null
}

@DataContract
open class ImageInfo
{
    @DataMember
    var Url:String? = null

    @DataMember
    var ImageStream:String? = null

    @DataMember
    var ImageSize:String? = null

    @DataMember
    var ErrorMessage:String? = null

    @DataMember
    var UriPk:Long? = null
}

@DataContract
open class InventoryDetailByVariant
{
    @DataMember
    var SkuPk:Long? = null

    @DataMember
    var Sku:String? = null

    @DataMember
    var VendorCost:BigDecimal? = null

    @DataMember
    var VendorName:String? = null

    @DataMember
    var Attributes:ArrayList<InventoryDetailAttribute> = ArrayList<InventoryDetailAttribute>()

    @DataMember
    var LocationDetails:ArrayList<InventoryDetailByLocation> = ArrayList<InventoryDetailByLocation>()

    @DataMember
    var Images:ArrayList<ImageInfo> = ArrayList<ImageInfo>()

    @DataMember
    var HasImages:Boolean? = null

    @DataMember
    var Barcodes:ArrayList<String> = ArrayList<String>()
}

@DataContract
open class InventoryDetailAttribute
{
    @DataMember
    var Name:String? = null

    @DataMember
    var Value:String? = null

    @DataMember
    var Priority:Int? = null

    /**
    * 1 is 'Don't Send to Web', 2 is 'Guided Navigation'
    */
    @DataMember
    @ApiMember(DataType="int", Description="1 is 'Don't Send to Web', 2 is 'Guided Navigation'", Name="WebType", ParameterType="query")
    var WebType:Int? = null
}

@DataContract
open class InventoryDetailByLocation
{
    @DataMember
    var SaqPk:Long? = null

    @DataMember
    var LocationInfo:LocationInfo? = null

    @DataMember
    var Serials:ArrayList<InventoryDetailBySerial> = ArrayList<InventoryDetailBySerial>()

    @DataMember
    var Substitutes:ArrayList<InventoryDetailSubstitute> = ArrayList<InventoryDetailSubstitute>()

    @DataMember
    var Retail:BigDecimal? = null

    @DataMember
    var OurPrice:BigDecimal? = null

    @DataMember
    var SalePrice:BigDecimal? = null

    @DataMember
    var SaleInfo:String? = null

    @DataMember
    var PriceA:BigDecimal? = null

    @DataMember
    var PriceB:BigDecimal? = null

    @DataMember
    var PriceC:BigDecimal? = null

    @DataMember
    var MinPrice:BigDecimal? = null

    @DataMember
    var ActiveEPrice:BigDecimal? = null

    @DataMember
    var CustomerPrice:BigDecimal? = null

    @DataMember
    var AllowPriceChange:Boolean? = null

    @DataMember
    var Qty:BigDecimal? = null

    @DataMember
    var QtyAvail:BigDecimal? = null

    @DataMember
    var ActiveeHoldbackQty:BigDecimal? = null

    @DataMember
    var ReorderMin:Int? = null

    @DataMember
    var ReorderMax:Int? = null

    @DataMember
    var AverageCost:BigDecimal? = null

    @DataMember
    var WeightedCost:BigDecimal? = null

    @DataMember
    var Locator:String? = null

    @DataMember
    var SelectionCode:String? = null

    @DataMember
    var SelectionCodeDescription:String? = null

    @DataMember
    var Spiff:BigDecimal? = null

    @DataMember
    var CurrentSpotCheckQty:BigDecimal? = null

    @DataMember
    var QtyOut:BigDecimal? = null

    @DataMember
    var QtyOnOrder:BigDecimal? = null

    @DataMember
    var AvailableForSTR:BigDecimal? = null
}

@DataContract
open class LocationInfo
{
    @DataMember
    var Id:Long? = null

    @DataMember
    var Desc:String? = null

    @DataMember
    var ShortDesc:String? = null

    @DataMember
    var Region:String? = null

    @DataMember
    var Latitude:BigDecimal? = null

    @DataMember
    var Longitude:BigDecimal? = null

    @DataMember
    var InStorePickup:String? = null

    @DataMember
    var Active:Boolean? = null

    @DataMember
    var CashSaleAcct:Int? = null
}

@DataContract
open class InventoryDetailBySerial
{
    @DataMember
    var SasPk:Long? = null

    @DataMember
    var Serial:String? = null

    @DataMember
    var Retail:BigDecimal? = null

    @DataMember
    var OurPrice:BigDecimal? = null

    @DataMember
    var SalePrice:BigDecimal? = null

    @DataMember
    var Status:String? = null

    @DataMember
    var SaleInfo:String? = null

    @DataMember
    var PriceA:BigDecimal? = null

    @DataMember
    var PriceB:BigDecimal? = null

    @DataMember
    var PriceC:BigDecimal? = null

    @DataMember
    var MinPrice:BigDecimal? = null

    @DataMember
    var ActiveEPrice:BigDecimal? = null

    @DataMember
    var AllowPriceChange:Boolean? = null

    @DataMember
    var Cost:BigDecimal? = null

    @DataMember
    var WeightedCost:BigDecimal? = null

    @DataMember
    var Notes:String? = null

    @DataMember
    var Attributes:ArrayList<InventoryDetailAttribute> = ArrayList<InventoryDetailAttribute>()

    @DataMember
    var Images:ArrayList<ImageInfo> = ArrayList<ImageInfo>()

    @DataMember
    var HasImages:Boolean? = null

    @DataMember
    var IsActiveeHoldback:Boolean? = null

    @DataMember
    var CustomerAcct:Int? = null

    @DataMember
    var AvailableForSTR:Boolean? = null
}

@DataContract
open class InventoryDetailSubstitute
{
    @DataMember
    var Model:String? = null

    @DataMember
    var Sku:String? = null

    @DataMember
    var Mfg:String? = null

    @DataMember
    var Description:String? = null

    @DataMember
    var Price:BigDecimal? = null

    @DataMember
    var AvailableQty:BigDecimal? = null
}

@DataContract
open class AddOnDetail
{
    @DataMember
    var SadPk:Long? = null

    @DataMember
    var SkuPk:Long? = null

    @DataMember
    var CatPk:Long? = null

    @DataMember
    var SubPk:Long? = null

    @DataMember
    var Item:String? = null

    @DataMember
    var Description:String? = null

    @DataMember
    var Price:BigDecimal? = null
}

@DataContract
open class ActiveEInfo
{
    @DataMember
    var Dimension:String? = null

    @DataMember
    var WebDescription:String? = null

    @DataMember
    var Summary:String? = null

    @DataMember
    var SETitle:String? = null

    @DataMember
    var SEDescription:String? = null

    @DataMember
    var SEKeywords:String? = null

    @DataMember
    var SEAltText:String? = null

    @DataMember
    var SEHtmlFreeText:String? = null

    @DataMember
    var Unpublished:Boolean? = null

    @DataMember
    var FreeShipping:Boolean? = null

    @DataMember
    var IsFeatured:Boolean? = null

    @DataMember
    var WebCategoryIds:ArrayList<Long> = ArrayList<Long>()
}

Kotlin 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"}}