| GET | /api/History360 |
|---|
namespace AIM.WebService
open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<DataContract>]
[<AllowNullLiteral>]
type BaseResponseResult() =
///<summary>
///
///</summary>
[<DataMember>]
[<ApiMember(DataType="string", Description="", Name="StatusCode", ParameterType="body")>]
member val StatusCode:String = null with get,set
///<summary>
///
///</summary>
[<DataMember>]
[<ApiMember(DataType="string", Description="", Name="Login", ParameterType="body")>]
member val Login:String = null with get,set
///<summary>
///
///</summary>
[<DataMember>]
[<ApiMember(DataType="string", Description="", Name="ErrorCode", ParameterType="body")>]
member val ErrorCode:String = null with get,set
///<summary>
///
///</summary>
[<DataMember>]
[<ApiMember(DataType="string", Description="", Name="ErrorDisplayText", ParameterType="body")>]
member val ErrorDisplayText:String = null with get,set
///<summary>
///
///</summary>
[<DataMember>]
[<ApiMember(DataType="string", Description="", Name="ErrorMessage", ParameterType="body")>]
member val ErrorMessage:String = null with get,set
///<summary>
///
///</summary>
[<DataMember>]
[<ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="DomainName", ParameterType="body")>]
member val DomainName:String = null with get,set
///<summary>
///
///</summary>
[<DataMember>]
[<ApiMember(DataType="string", Description="", ExcludeInSchema=true, Name="IPAddress", ParameterType="body")>]
member val IpAddress:String = null with get,set
[<DataContract>]
[<AllowNullLiteral>]
type BaseResponse() =
///<summary>
///
///</summary>
[<DataMember>]
[<ApiMember(DataType="BaseResponseResult", Description="", Name="Status", ParameterType="body")>]
member val Status:BaseResponseResult = null with get,set
[<DataContract>]
[<AllowNullLiteral>]
type Item360() =
[<DataMember>]
member val PslrId:Nullable<Int64> = new Nullable<Int64>() with get,set
[<DataMember>]
member val Quantity:Decimal = new Decimal() with get,set
[<DataMember>]
member val Price:Decimal = new Decimal() with get,set
[<DataMember>]
member val TotalDiscountAmount:Decimal = new Decimal() with get,set
[<DataMember>]
member val SerialNumber:String = null with get,set
[<DataMember>]
member val Condition:String = null with get,set
[<DataContract>]
[<AllowNullLiteral>]
type Invoice360() =
[<DataMember>]
member val Id:String = null with get,set
[<DataMember>]
member val DueDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
[<DataMember>]
member val Total:Decimal = new Decimal() with get,set
[<DataMember>]
member val Status:String = null with get,set
[<DataMember>]
member val AmountPaid:Decimal = new Decimal() with get,set
[<DataMember>]
member val PaymentType:String = null with get,set
[<DataMember>]
member val LateFeeAmount:Decimal = new Decimal() with get,set
[<DataMember>]
member val PurchaseDate:DateTime = new DateTime() with get,set
[<DataMember>]
member val StoreLocationId:Nullable<Int32> = new Nullable<Int32>() with get,set
[<DataMember>]
member val Discount:Decimal = new Decimal() with get,set
[<DataMember>]
member val Tax:Decimal = new Decimal() with get,set
[<DataMember>]
member val Shipping:Decimal = new Decimal() with get,set
[<DataMember>]
member val Items:ResizeArray<Item360> = new ResizeArray<Item360>() with get,set
[<DataContract>]
[<AllowNullLiteral>]
type Order360() =
[<DataMember>]
member val Id:Int32 = new Int32() with get,set
[<DataMember>]
member val Date:DateTime = new DateTime() with get,set
[<DataMember>]
member val Discount:Decimal = new Decimal() with get,set
[<DataMember>]
member val PaymentType:String = null with get,set
[<DataMember>]
member val SubTotal:Decimal = new Decimal() with get,set
[<DataMember>]
member val Tax:Decimal = new Decimal() with get,set
[<DataMember>]
member val ShippingAmount:Decimal = new Decimal() with get,set
[<DataMember>]
member val Total:Decimal = new Decimal() with get,set
[<DataContract>]
[<AllowNullLiteral>]
type Job360() =
[<DataMember>]
member val ItemId:String = null with get,set
[<DataMember>]
member val ItemType:String = null with get,set
[<DataMember>]
member val Title:String = null with get,set
[<DataMember>]
member val Quantity:Decimal = new Decimal() with get,set
[<DataMember>]
member val Price:Decimal = new Decimal() with get,set
[<DataMember>]
member val TotalDiscountAmount:Decimal = new Decimal() with get,set
[<DataMember>]
member val SerialNumber:String = null with get,set
[<DataMember>]
member val Condition:String = null with get,set
[<DataContract>]
[<AllowNullLiteral>]
type WorkOrder360() =
[<DataMember>]
member val Id:String = null with get,set
[<DataMember>]
member val Status:String = null with get,set
[<DataMember>]
member val Deposit:Decimal = new Decimal() with get,set
[<DataMember>]
member val StoreLocationId:Nullable<Int32> = new Nullable<Int32>() with get,set
[<DataMember>]
member val CreationDate:DateTime = new DateTime() with get,set
[<DataMember>]
member val CompletedDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
[<DataMember>]
member val Price:Decimal = new Decimal() with get,set
[<DataMember>]
member val LocationName:String = null with get,set
[<DataMember>]
member val Jobs:ResizeArray<Job360> = new ResizeArray<Job360>() with get,set
[<DataContract>]
[<AllowNullLiteral>]
type Contract360() =
[<DataMember>]
member val Id:String = null with get,set
[<DataMember>]
member val PaymentDate:DateTime = new DateTime() with get,set
[<DataMember>]
member val StoreLocationId:Nullable<Int32> = new Nullable<Int32>() with get,set
[<DataMember>]
member val AmountDue:Decimal = new Decimal() with get,set
[<DataMember>]
member val LateFee:Decimal = new Decimal() with get,set
[<DataMember>]
member val ContractStatus:String = null with get,set
[<DataMember>]
member val Amount:Decimal = new Decimal() with get,set
[<DataMember>]
member val LocationName:String = null with get,set
[<DataMember>]
member val ContractItems:ResizeArray<Item360> = new ResizeArray<Item360>() with get,set
[<DataContract>]
[<AllowNullLiteral>]
type History360Response() =
inherit BaseResponse()
[<DataMember>]
member val Invoices:ResizeArray<Invoice360> = new ResizeArray<Invoice360>() with get,set
[<DataMember>]
member val Orders:ResizeArray<Order360> = new ResizeArray<Order360>() with get,set
[<DataMember>]
member val WorkOrders:ResizeArray<WorkOrder360> = new ResizeArray<WorkOrder360>() with get,set
[<DataMember>]
member val Contracts:ResizeArray<Contract360> = new ResizeArray<Contract360>() with get,set
[<DataContract>]
[<AllowNullLiteral>]
type 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")>]
member val ApiKey:String = null with get,set
///<summary>
///The OAuthToken token return by AeServices30
///</summary>
[<DataMember>]
[<ApiMember(DataType="string", Description="The OAuthToken token return by AeServices30", IsRequired=true, Name="OAuthToken", ParameterType="Header")>]
member val OAuthToken:String = null with get,set
///<summary>
///The Device ID of the Mobile Device. Not used for non-mobile devices.
///</summary>
[<DataMember>]
[<ApiMember(DataType="string", Description="The Device ID of the Mobile Device. Not used for non-mobile devices.", Name="DeviceId", ParameterType="Header")>]
member val DeviceId:String = null with get,set
///<summary>
///An identifier for your integration
///</summary>
[<DataMember>]
[<ApiMember(DataType="string", Description="An identifier for your integration", IsRequired=true, Name="AppId", ParameterType="Header")>]
member val AppId:String = null with get,set
[<DataContract>]
[<AllowNullLiteral>]
type BaseSecureRequest() =
inherit BaseRequest()
///<summary>
///The Login Token return by the Security API. Required for secured calls.
///</summary>
[<DataMember>]
[<ApiMember(DataType="string", Description="The Login Token return by the Security API. Required for secured calls.", Name="Token", ParameterType="Header")>]
member val Token:String = null with get,set
///<summary>
///History360Requires active-e Customer Service.
///</summary>
[<DataContract>]
[<AllowNullLiteral>]
type History360Request() =
inherit BaseSecureRequest()
[<DataMember>]
member val CustomerAccount:Int32 = new Int32() with get,set
[<DataMember>]
member val IncludeInvoices:Boolean = new Boolean() with get,set
[<DataMember>]
member val IncludeOrders:Boolean = new Boolean() with get,set
[<DataMember>]
member val IncludeWorkOrders:Boolean = new Boolean() with get,set
[<DataMember>]
member val IncludeContracts:Boolean = new Boolean() with get,set
[<DataMember>]
member val IncludeClosed:Boolean = new Boolean() with get,set
[<DataMember>]
member val ClosedStartDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
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/History360 HTTP/1.1 Host: active-ewebservice.biz Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<History360Response 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>
<Contracts>
<Contract360>
<Amount>0</Amount>
<AmountDue>0</AmountDue>
<ContractItems>
<Item360>
<Condition>String</Condition>
<Price>0</Price>
<PslrId>0</PslrId>
<Quantity>0</Quantity>
<SerialNumber>String</SerialNumber>
<TotalDiscountAmount>0</TotalDiscountAmount>
</Item360>
</ContractItems>
<ContractStatus>String</ContractStatus>
<Id>String</Id>
<LateFee>0</LateFee>
<LocationName>String</LocationName>
<PaymentDate>0001-01-01T00:00:00</PaymentDate>
<StoreLocationId>0</StoreLocationId>
</Contract360>
</Contracts>
<Invoices>
<Invoice360>
<AmountPaid>0</AmountPaid>
<Discount>0</Discount>
<DueDate>0001-01-01T00:00:00</DueDate>
<Id>String</Id>
<Items>
<Item360>
<Condition>String</Condition>
<Price>0</Price>
<PslrId>0</PslrId>
<Quantity>0</Quantity>
<SerialNumber>String</SerialNumber>
<TotalDiscountAmount>0</TotalDiscountAmount>
</Item360>
</Items>
<LateFeeAmount>0</LateFeeAmount>
<PaymentType>String</PaymentType>
<PurchaseDate>0001-01-01T00:00:00</PurchaseDate>
<Shipping>0</Shipping>
<Status>String</Status>
<StoreLocationId>0</StoreLocationId>
<Tax>0</Tax>
<Total>0</Total>
</Invoice360>
</Invoices>
<Orders>
<Order360>
<Date>0001-01-01T00:00:00</Date>
<Discount>0</Discount>
<Id>0</Id>
<PaymentType>String</PaymentType>
<ShippingAmount>0</ShippingAmount>
<SubTotal>0</SubTotal>
<Tax>0</Tax>
<Total>0</Total>
</Order360>
</Orders>
<WorkOrders>
<WorkOrder360>
<CompletedDate>0001-01-01T00:00:00</CompletedDate>
<CreationDate>0001-01-01T00:00:00</CreationDate>
<Deposit>0</Deposit>
<Id>String</Id>
<Jobs>
<Job360>
<Condition>String</Condition>
<ItemId>String</ItemId>
<ItemType>String</ItemType>
<Price>0</Price>
<Quantity>0</Quantity>
<SerialNumber>String</SerialNumber>
<Title>String</Title>
<TotalDiscountAmount>0</TotalDiscountAmount>
</Job360>
</Jobs>
<LocationName>String</LocationName>
<Price>0</Price>
<Status>String</Status>
<StoreLocationId>0</StoreLocationId>
</WorkOrder360>
</WorkOrders>
</History360Response>