POST, GET | /api/C2BGetInstrumentInfo |
---|
// @DataContract
export class BaseRequest
{
/** @description 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")
public ApiKey: string;
// @DataMember
// @ApiMember(DataType="string", Name="OAuthToken", ParameterType="header")
public OAuthToken: string;
public constructor(init?: Partial<BaseRequest>) { (Object as any).assign(this, init); }
}
// @DataContract
export class BaseSecureRequest extends BaseRequest
{
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", Name="Token", ParameterType="Header")
public Token: string;
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", Name="DeviceId", ParameterType="Header")
public DeviceId: string;
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", IsRequired=true, Name="AppId", ParameterType="Header")
public AppId: string;
public constructor(init?: Partial<BaseSecureRequest>) { super(init); (Object as any).assign(this, init); }
}
// @DataContract
export class BaseResponseResult
{
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", Name="StatusCode", ParameterType="body")
public StatusCode: string;
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", Name="Login", ParameterType="body")
public Login: string;
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", Name="ErrorCode", ParameterType="body")
public ErrorCode: string;
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", Name="ErrorDisplayText", ParameterType="body")
public ErrorDisplayText: string;
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", Name="ErrorMessage", ParameterType="body")
public ErrorMessage: string;
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="DomainName", ParameterType="body")
public DomainName: string;
/** @description */
// @DataMember
// @ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="IPAddress", ParameterType="body")
public IpAddress: string;
public constructor(init?: Partial<BaseResponseResult>) { (Object as any).assign(this, init); }
}
// @DataContract
export class BaseResponse
{
/** @description */
// @DataMember
// @ApiMember(DataType="BaseResponseResult", Description="", Name="Status", ParameterType="body")
public Status: BaseResponseResult;
public constructor(init?: Partial<BaseResponse>) { (Object as any).assign(this, init); }
}
// @DataContract
export class C2BGradeGeneric
{
// @DataMember
public Level: number;
// @DataMember
public Grade: string;
// @DataMember
public DownPay: number;
// @DataMember
public DownMaint: number;
// @DataMember
public MoPay: number;
// @DataMember
public MoMaint: number;
// @DataMember
public Id: number;
// @DataMember
public OutOfStock: boolean;
// @DataMember
public RentPrice: number;
// @DataMember
public CashPrice: number;
// @DataMember
public DownPayTax?: number;
// @DataMember
public DownMaintTax?: number;
// @DataMember
public MoPayTax?: number;
// @DataMember
public MoMaintTax?: number;
// @DataMember
public RentPricePlusTax: number;
// @DataMember
public RentPricePlusTaxLessDownpay: number;
// @DataMember
public Months: number;
public constructor(init?: Partial<C2BGradeGeneric>) { (Object as any).assign(this, init); }
}
// @DataContract
export class C2BAccessoryGeneric
{
// @DataMember
public AccessoryDesc: string;
// @DataMember
public Price: number;
// @DataMember
public Required: boolean;
// @DataMember
public Default: boolean;
// @DataMember
public RequiresLocation: boolean;
// @DataMember
public Type: string;
// @DataMember
public Topic: string;
// @DataMember
public Id: number;
// @DataMember
public DisplayOrder: number;
// @DataMember
public Sku: string;
// @DataMember
public TaxAmount?: number;
// @DataMember
public CatNum?: number;
public constructor(init?: Partial<C2BAccessoryGeneric>) { (Object as any).assign(this, init); }
}
// @DataContract
export class C2BInstrumentGeneric
{
// @DataMember
public InstrumentName: string;
// @DataMember
public Sku: string;
// @DataMember
public Topic: string;
// @DataMember
public Image: string;
// @DataMember
public Level: number;
// @DataMember
public RentPrice?: number;
// @DataMember
public CashPrice?: number;
// @DataMember
public Token: string;
// @DataMember
public InstrumentId: number;
// @DataMember
public InstrumentTeacherId: number;
// @DataMember
public GradeList: C2BGradeGeneric[];
// @DataMember
public HasGrades: boolean;
// @DataMember
public DisplayOrder: number;
// @DataMember
public AccessoryList: C2BAccessoryGeneric[];
// @DataMember
public DeliveryList: C2BAccessoryGeneric[];
// @DataMember
public MaintenanceList: C2BAccessoryGeneric[];
public constructor(init?: Partial<C2BInstrumentGeneric>) { (Object as any).assign(this, init); }
}
// @DataContract
export class C2BGetInstrumentInfoResponse extends BaseResponse
{
// @DataMember
public Instruments: C2BInstrumentGeneric[];
public constructor(init?: Partial<C2BGetInstrumentInfoResponse>) { super(init); (Object as any).assign(this, init); }
}
/** @description C2BGetInstrumentInfoRequires active-e Contracts Service. */
// @DataContract
export class C2BGetInstrumentInfoRequest extends BaseSecureRequest
{
/** @description ID of the Teacher/Instrument record. */
// @DataMember
// @ApiMember(DataType="integer", Description="ID of the Teacher/Instrument record.", Format="int64", Name="RsiPk", ParameterType="query")
public RsiPk?: number;
/** @description ID of the Teacher record. */
// @DataMember
// @ApiMember(DataType="integer", Description="ID of the Teacher record.", Format="int64", Name="TeacherId", ParameterType="query")
public TeacherId?: number;
/** @description Optional Plan Code Override. If not sent, plancode from the school will be used. */
// @DataMember
// @ApiMember(DataType="string", Description="Optional Plan Code Override. If not sent, plancode from the school will be used.", Name="PlanCode", ParameterType="query")
public PlanCode: string;
/** @description If set to false, less details will be sent. Defaults to True. */
// @DataMember
// @ApiMember(DataType="boolean", Description="If set to false, less details will be sent. Defaults to True.", Name="GetDetails", ParameterType="query")
public GetDetails?: boolean;
/** @description If set to true, Out of Stock items will be included. */
// @DataMember
// @ApiMember(DataType="boolean", Description="If set to true, Out of Stock items will be included.", Name="IncludeOutOfStockItems", ParameterType="query")
public IncludeOutOfStockItems?: boolean;
/** @description If set to true, each instrument will include a list of accessory options. Defaults to False. */
// @DataMember
// @ApiMember(DataType="boolean", Description="If set to true, each instrument will include a list of accessory options. Defaults to False.", Name="IncludeAccessoryOptions", ParameterType="query")
public IncludeAccessoryOptions?: boolean;
/** @description If set to true, each instrument will include a list of delivery options. Defaults to False. */
// @DataMember
// @ApiMember(DataType="boolean", Description="If set to true, each instrument will include a list of delivery options. Defaults to False.", Name="IncludeDeliveryOptions", ParameterType="query")
public IncludeDeliveryOptions?: boolean;
/** @description If set to true, each instrument will include a list of maintenance options. Defaults to False. */
// @DataMember
// @ApiMember(DataType="boolean", Description="If set to true, each instrument will include a list of maintenance options. Defaults to False.", Name="IncludeMaintenanceOptions", ParameterType="query")
public IncludeMaintenanceOptions?: boolean;
public constructor(init?: Partial<C2BGetInstrumentInfoRequest>) { super(init); (Object as any).assign(this, init); }
}
TypeScript C2BGetInstrumentInfoRequest 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.
POST /api/C2BGetInstrumentInfo HTTP/1.1
Host: active-ewebservice.biz
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<C2BGetInstrumentInfoRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/AIM.WebService">
<ApiKey>String</ApiKey>
<OAuthToken>String</OAuthToken>
<AppId>String</AppId>
<DeviceId>String</DeviceId>
<Token>String</Token>
<GetDetails>false</GetDetails>
<IncludeAccessoryOptions>false</IncludeAccessoryOptions>
<IncludeDeliveryOptions>false</IncludeDeliveryOptions>
<IncludeMaintenanceOptions>false</IncludeMaintenanceOptions>
<IncludeOutOfStockItems>false</IncludeOutOfStockItems>
<PlanCode>String</PlanCode>
<RsiPk>0</RsiPk>
<TeacherId>0</TeacherId>
</C2BGetInstrumentInfoRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <C2BGetInstrumentInfoResponse 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> <Instruments xmlns:d2p1="http://schemas.datacontract.org/2004/07/AIM"> <d2p1:C2BInstrumentGeneric i:nil="true" /> </Instruments> </C2BGetInstrumentInfoResponse>