| GET | /api/InvoiceDetail |
|---|
// @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;
/** @description The OAuthToken token return by AeServices30 */
// @DataMember
// @ApiMember(DataType="string", Description="The OAuthToken token return by AeServices30", IsRequired=true, Name="OAuthToken", ParameterType="Header")
public OAuthToken: string;
/** @description The Device ID of the Mobile Device. Not used for non-mobile devices. */
// @DataMember
// @ApiMember(DataType="string", Description="The Device ID of the Mobile Device. Not used for non-mobile devices.", Name="DeviceId", ParameterType="Header")
public DeviceId: string;
/** @description An identifier for your integration */
// @DataMember
// @ApiMember(DataType="string", Description="An identifier for your integration", IsRequired=true, Name="AppId", ParameterType="Header")
public AppId: string;
public constructor(init?: Partial<BaseRequest>) { (Object as any).assign(this, init); }
}
// @DataContract
export class BaseSecureRequest extends BaseRequest
{
/** @description The Login Token return by the Security API. Required for secured calls. */
// @DataMember
// @ApiMember(DataType="string", Description="The Login Token return by the Security API. Required for secured calls.", Name="Token", ParameterType="Header")
public Token: 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 InvoiceLineItem
{
// @DataMember
public Quantity: number;
// @DataMember
public Sku: string;
// @DataMember
public Description: string;
// @DataMember
public PriceEach: number;
// @DataMember
public Extended: number;
// @DataMember
public Discount: number;
// @DataMember
public Total: number;
// @DataMember
public OriginalRef: string;
// @DataMember
public Notes: string;
// @DataMember
public Source: string;
public constructor(init?: Partial<InvoiceLineItem>) { (Object as any).assign(this, init); }
}
// @DataContract
export class InvoicePaymentItem
{
// @DataMember
public PayRef: string;
// @DataMember
public DateTime: string;
// @DataMember
public Amount: number;
// @DataMember
public Notes: string;
// @DataMember
public Source: string;
public constructor(init?: Partial<InvoicePaymentItem>) { (Object as any).assign(this, init); }
}
// @DataContract
export class InvoiceInfo
{
// @DataMember
public InvoiceNumber: string;
// @DataMember
public DateTime: string;
// @DataMember
public SoldToAcct: number;
// @DataMember
public SoldToName: string;
// @DataMember
public BillToAcct: number;
// @DataMember
public BillToName: string;
// @DataMember
public Type: string;
// @DataMember
public PO: string;
// @DataMember
public OriginalAmount: number;
// @DataMember
public Balance: number;
// @DataMember
public Location: string;
// @DataMember
public ShipToName: string;
// @DataMember
public ShipToAddress: string;
// @DataMember
public ShipToId?: number;
// @DataMember
public LineItems: InvoiceLineItem[];
// @DataMember
public Payments: InvoicePaymentItem[];
public constructor(init?: Partial<InvoiceInfo>) { (Object as any).assign(this, init); }
}
// @DataContract
export class InvoiceDetailResponse extends BaseResponse
{
// @DataMember
public Invoices: InvoiceInfo[];
// @DataMember
public RemainingRecords: number;
public constructor(init?: Partial<InvoiceDetailResponse>) { super(init); (Object as any).assign(this, init); }
}
/** @description InvoiceDetailRequires active-e Customer Service. */
// @DataContract
export class InvoiceDetailRequest extends BaseSecureRequest
{
// @DataMember
public Acct?: number;
// @DataMember
public InvoiceStartDate?: string;
// @DataMember
public InvoiceEndDate?: string;
/** @description The Starting Offset. Defaults to 0 if not sent. */
// @DataMember
// @ApiMember(DataType="integer", Description="The Starting Offset. Defaults to 0 if not sent.", Format="int64", Name="StartOffset")
public StartOffset?: number;
/** @description The # of records to be returned. Defaults to 100 if not sent. */
// @DataMember
// @ApiMember(DataType="integer", Description="The # of records to be returned. Defaults to 100 if not sent.", Format="int64", Name="RecordCount")
public RecordCount?: number;
/** @description The Invoice Ref# to be looked up. If sent, do not send WebRef, Acct, InvoiceStartDate, InvoiceEndDate, StartOffset, or RecordCount */
// @DataMember
// @ApiMember(DataType="string", Description="The Invoice Ref# to be looked up. If sent, do not send WebRef, Acct, InvoiceStartDate, InvoiceEndDate, StartOffset, or RecordCount", Name="AIMRef")
public AIMRef: string;
/** @description The WebRef to be looked up. If sent, do not send AIMRef, Acct, InvoiceStartDate, InvoiceEndDate, StartOffset, or RecordCount */
// @DataMember
// @ApiMember(DataType="string", Description="The WebRef to be looked up. If sent, do not send AIMRef, Acct, InvoiceStartDate, InvoiceEndDate, StartOffset, or RecordCount", Name="WebRef")
public WebRef: string;
public constructor(init?: Partial<InvoiceDetailRequest>) { super(init); (Object as any).assign(this, init); }
}
TypeScript InvoiceDetailRequest 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/InvoiceDetail HTTP/1.1 Host: active-ewebservice.biz Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<InvoiceDetailResponse 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>
<Invoices>
<InvoiceInfo>
<Balance>0</Balance>
<BillToAcct>0</BillToAcct>
<BillToName>String</BillToName>
<DateTime>0001-01-01T00:00:00</DateTime>
<InvoiceNumber>String</InvoiceNumber>
<LineItems>
<InvoiceLineItem>
<Description>String</Description>
<Discount>0</Discount>
<Extended>0</Extended>
<Notes>String</Notes>
<OriginalRef>String</OriginalRef>
<PriceEach>0</PriceEach>
<Quantity>0</Quantity>
<Sku>String</Sku>
<Source>String</Source>
<Total>0</Total>
</InvoiceLineItem>
</LineItems>
<Location>String</Location>
<OriginalAmount>0</OriginalAmount>
<PO>String</PO>
<Payments>
<InvoicePaymentItem>
<Amount>0</Amount>
<DateTime>0001-01-01T00:00:00</DateTime>
<Notes>String</Notes>
<PayRef>String</PayRef>
<Source>String</Source>
</InvoicePaymentItem>
</Payments>
<ShipToAddress>String</ShipToAddress>
<ShipToId>0</ShipToId>
<ShipToName>String</ShipToName>
<SoldToAcct>0</SoldToAcct>
<SoldToName>String</SoldToName>
<Type>String</Type>
</InvoiceInfo>
</Invoices>
<RemainingRecords>0</RemainingRecords>
</InvoiceDetailResponse>