GET | /api/CategoryListing |
---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using AIM.WebService;
namespace AIM.WebService
{
[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 CategoryInfo
{
public CategoryInfo()
{
SubCategoryListing = new List<SubCategoryInfo>{};
}
[DataMember]
public virtual int CategoryNumber { get; set; }
[DataMember]
public virtual string CategoryType { get; set; }
[DataMember]
public virtual string Description { get; set; }
[DataMember]
public virtual bool Active { get; set; }
[DataMember]
public virtual List<SubCategoryInfo> SubCategoryListing { get; set; }
[DataMember]
public virtual string PaymentCategoryType { get; set; }
[DataMember]
public virtual bool? AllowedOnMobile { get; set; }
}
///<summary>
///CategoryListingRequires active-e Inventory Service.
///</summary>
[DataContract]
public partial class CategoryListingRequest
: BaseSecureRequest
{
///<summary>
///If true, Inactive Categories and Subcategories will be returned. Defaults to false.
///</summary>
[DataMember]
[ApiMember(DataType="boolean", Description="If true, Inactive Categories and Subcategories will be returned. Defaults to false.", Name="IncludeInactive", ParameterType="query")]
public virtual bool? IncludeInactive { get; set; }
///<summary>
///Category Number lookup. If sent, only this category and it's subs will be returned. Further parameters will be ignored.
///</summary>
[DataMember]
[ApiMember(DataType="integer", Description="Category Number lookup. If sent, only this category and it's subs will be returned. Further parameters will be ignored.", Format="int64", Name="CategoryNumber", ParameterType="query")]
public virtual int? CategoryNumber { get; set; }
///<summary>
///If true, Inventory Categories will be returned. Defaults to true.
///</summary>
[DataMember]
[ApiMember(DataType="boolean", Description="If true, Inventory Categories will be returned. Defaults to true.", Name="IncludeInventory", ParameterType="query")]
public virtual bool? IncludeInventory { get; set; }
///<summary>
///If true, Non-Inventory Categories will be returned. Defaults to false.
///</summary>
[DataMember]
[ApiMember(DataType="boolean", Description="If true, Non-Inventory Categories will be returned. Defaults to false.", Name="IncludeNonInventory", ParameterType="query")]
public virtual bool? IncludeNonInventory { get; set; }
///<summary>
///If true, Return Payment Categories will be returned. Defaults to false.
///</summary>
[DataMember]
[ApiMember(DataType="boolean", Description="If true, Return Payment Categories will be returned. Defaults to false.", Name="IncludeReturn", ParameterType="query")]
public virtual bool? IncludeReturn { get; set; }
///<summary>
///If true, Payment Categories will be returned. Defaults to false.
///</summary>
[DataMember]
[ApiMember(DataType="boolean", Description="If true, Payment Categories will be returned. Defaults to false.", Name="IncludePayment", ParameterType="query")]
public virtual bool? IncludePayment { get; set; }
}
[DataContract]
public partial class CategoryListingResponse
: BaseResponse
{
public CategoryListingResponse()
{
CategoryListing = new List<CategoryInfo>{};
}
[DataMember]
public virtual List<CategoryInfo> CategoryListing { get; set; }
}
[DataContract]
public partial class SubCategoryAttributeInfo
{
[DataMember]
public virtual string AttributeName { get; set; }
[DataMember]
public virtual int Priority { get; set; }
}
[DataContract]
public partial class SubCategoryInfo
{
public SubCategoryInfo()
{
SkuAttributes = new List<SubCategoryAttributeInfo>{};
SerialAttributes = new List<SubCategoryAttributeInfo>{};
}
[DataMember]
public virtual int SubNumber { get; set; }
[DataMember]
public virtual string Description { get; set; }
[DataMember]
public virtual bool Active { get; set; }
[DataMember]
public virtual decimal Price { get; set; }
[DataMember]
public virtual List<SubCategoryAttributeInfo> SkuAttributes { get; set; }
[DataMember]
public virtual List<SubCategoryAttributeInfo> SerialAttributes { get; set; }
}
}
C# CategoryListingRequest DTOs
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 /api/CategoryListing HTTP/1.1 Host: active-ewebservice.biz Accept: application/xml
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <CategoryListingResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AIM.WebService"> <Status> <DomainName>String</DomainName> <ErrorCode>String</ErrorCode> <ErrorDisplayText>String</ErrorDisplayText> <ErrorMessage>String</ErrorMessage> <IpAddress>String</IpAddress> <Login>String</Login> <StatusCode>String</StatusCode> </Status> <CategoryListing> <CategoryInfo> <Active>false</Active> <AllowedOnMobile>false</AllowedOnMobile> <CategoryNumber>0</CategoryNumber> <CategoryType>String</CategoryType> <Description>String</Description> <PaymentCategoryType>String</PaymentCategoryType> <SubCategoryListing> <SubCategoryInfo> <Active>false</Active> <Description>String</Description> <Price>0</Price> <SerialAttributes> <SubCategoryAttributeInfo> <AttributeName>String</AttributeName> <Priority>0</Priority> </SubCategoryAttributeInfo> </SerialAttributes> <SkuAttributes> <SubCategoryAttributeInfo> <AttributeName>String</AttributeName> <Priority>0</Priority> </SubCategoryAttributeInfo> </SkuAttributes> <SubNumber>0</SubNumber> </SubCategoryInfo> </SubCategoryListing> </CategoryInfo> </CategoryListing> </CategoryListingResponse>