GET | /api/History360 |
---|
import java.math.*
import java.util.*
import net.servicestack.client.*
/**
* History360Requires active-e Customer Service.
*/
@DataContract
open class History360Request : BaseSecureRequest()
{
@DataMember
var CustomerAccount:Int? = null
@DataMember
var IncludeInvoices:Boolean? = null
@DataMember
var IncludeOrders:Boolean? = null
@DataMember
var IncludeWorkOrders:Boolean? = null
@DataMember
var IncludeContracts:Boolean? = null
@DataMember
var IncludeClosed:Boolean? = null
@DataMember
var ClosedStartDate:Date? = 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 History360Response : BaseResponse()
{
@DataMember
var Invoices:ArrayList<Invoice360> = ArrayList<Invoice360>()
@DataMember
var Orders:ArrayList<Order360> = ArrayList<Order360>()
@DataMember
var WorkOrders:ArrayList<WorkOrder360> = ArrayList<WorkOrder360>()
@DataMember
var Contracts:ArrayList<Contract360> = ArrayList<Contract360>()
}
@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 Invoice360
{
@DataMember
var Id:String? = null
@DataMember
var DueDate:Date? = null
@DataMember
var Total:BigDecimal? = null
@DataMember
var Status:String? = null
@DataMember
var AmountPaid:BigDecimal? = null
@DataMember
var LateFeeAmount:BigDecimal? = null
@DataMember
var PurchaseDate:Date? = null
@DataMember
var StoreLocationId:Int? = null
@DataMember
var Items:ArrayList<Item360> = ArrayList<Item360>()
}
@DataContract
open class Item360
{
@DataMember
var PslrId:Long? = null
@DataMember
var Quantity:BigDecimal? = null
@DataMember
var Price:BigDecimal? = null
@DataMember
var TotalDiscountAmount:BigDecimal? = null
@DataMember
var SerialNumber:String? = null
@DataMember
var Condition:String? = null
}
@DataContract
open class Order360
{
@DataMember
var Id:Int? = null
@DataMember
var Date:Date? = null
@DataMember
var Discount:BigDecimal? = null
@DataMember
var PaymentType:String? = null
@DataMember
var SubTotal:BigDecimal? = null
@DataMember
var Tax:BigDecimal? = null
@DataMember
var ShippingAmount:BigDecimal? = null
@DataMember
var Total:BigDecimal? = null
}
@DataContract
open class WorkOrder360
{
@DataMember
var Id:String? = null
@DataMember
var Status:String? = null
@DataMember
var Deposit:BigDecimal? = null
@DataMember
var StoreLocationId:Int? = null
@DataMember
var CreationDate:Date? = null
@DataMember
var CompletedDate:Date? = null
@DataMember
var Price:BigDecimal? = null
@DataMember
var Jobs:ArrayList<Job360> = ArrayList<Job360>()
}
@DataContract
open class Job360
{
@DataMember
var ItemId:String? = null
@DataMember
var ItemType:String? = null
@DataMember
var Title:String? = null
@DataMember
var Quantity:BigDecimal? = null
@DataMember
var Price:BigDecimal? = null
@DataMember
var TotalDiscountAmount:BigDecimal? = null
@DataMember
var SerialNumber:String? = null
@DataMember
var Condition:String? = null
}
@DataContract
open class Contract360
{
@DataMember
var Id:String? = null
@DataMember
var PaymentDate:Date? = null
@DataMember
var StoreLocationId:Int? = null
@DataMember
var AmountDue:BigDecimal? = null
@DataMember
var LateFee:BigDecimal? = null
@DataMember
var ContractStatus:String? = null
@DataMember
var Amount:BigDecimal? = null
@DataMember
var ContractItems:ArrayList<Item360> = ArrayList<Item360>()
}
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.
GET /api/History360 HTTP/1.1 Host: active-ewebservice.biz Accept: text/jsonl
HTTP/1.1 200 OK Content-Type: text/jsonl Content-Length: length {"Invoices":[{"Id":"String","DueDate":"0001-01-01T00:00:00.0000000","Total":0,"Status":"String","AmountPaid":0,"LateFeeAmount":0,"StoreLocationId":0,"Items":[{"PslrId":0,"Quantity":0,"Price":0,"TotalDiscountAmount":0,"SerialNumber":"String","Condition":"String"}]}],"Orders":[{"Id":0,"Discount":0,"PaymentType":"String","SubTotal":0,"Tax":0,"ShippingAmount":0,"Total":0}],"WorkOrders":[{"Id":"String","Status":"String","Deposit":0,"StoreLocationId":0,"CompletedDate":"0001-01-01T00:00:00.0000000","Price":0,"Jobs":[{"ItemId":"String","ItemType":"String","Title":"String","Quantity":0,"Price":0,"TotalDiscountAmount":0,"SerialNumber":"String","Condition":"String"}]}],"Contracts":[{"Id":"String","StoreLocationId":0,"AmountDue":0,"LateFee":0,"ContractStatus":"String","Amount":0,"ContractItems":[{"PslrId":0,"Quantity":0,"Price":0,"TotalDiscountAmount":0,"SerialNumber":"String","Condition":"String"}]}],"Status":{"StatusCode":"String","Login":"String","ErrorCode":"String","ErrorDisplayText":"String","ErrorMessage":"String","DomainName":"String","IpAddress":"String"}}