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 .other suffix or ?format=other
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: text/jsonl
Content-Type: text/jsonl
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: text/jsonl 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"}}