All Verbs | /QLogForward |
---|
namespace AgentivityAPI.ServiceModel
open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<DataContract(Name="QLogForwardItem", Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type QLogForwardItem() =
[<DataMember(Order=10)>]
member val AgentivityRef:Int32 = new Int32() with get,set
[<DataMember(Order=20)>]
member val LogID:Int32 = new Int32() with get,set
[<DataMember(Order=30)>]
member val MatchedOn:String = null with get,set
[<DataMember(Order=40)>]
member val RecordLocator:String = null with get,set
[<DataMember(Order=50)>]
member val LogDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
[<DataMember(Order=50)>]
member val Destination:String = null with get,set
[<DataContract(Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type Report<TItemResponse, TItem>() =
[<DataMember(Order=1, EmitDefaultValue=false)>]
member val Item:TItem = null with get,set
[<DataContract(Name="QLogForwardItem", Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type QLogForwardResponseReport() =
inherit Report<QLogForwardItemResponse, QLogForwardItem>()
[<DataContract(Name="CacheMetadata", Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type CacheMetadata() =
[<DataMember(Order=1)>]
member val CachedAt:DateTime = new DateTime() with get,set
[<DataMember(Order=2)>]
member val CacheExpiresAt:DateTime = new DateTime() with get,set
[<DataMember(Order=0)>]
member val IsFromCache:Boolean = new Boolean() with get,set
[<DataContract(Name="Metadata", Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type PagingMetadata() =
///<summary>
///Starting Record
///</summary>
[<DataMember>]
[<ApiMember(DataType="string", Description="Starting Record", Name="Offset", ParameterType="query")>]
member val Offset:String = null with get,set
///<summary>
///Number of records to return (PageSize)
///</summary>
[<DataMember>]
[<ApiMember(DataType="string", Description="Number of records to return (PageSize)", Name="Limit", ParameterType="query")>]
member val Limit:String = null with get,set
///<summary>
///Total Number of Records in a Full Reponse (if no paging)
///</summary>
[<DataMember>]
[<ApiMember(DataType="string", Description="Total Number of Records in a Full Reponse (if no paging)", Name="TotalRecords", ParameterType="query")>]
member val TotalRecords:Int32 = new Int32() with get,set
///<summary>
///Total Number of Records in this Reponse (on this page)
///</summary>
[<DataMember>]
[<ApiMember(DataType="string", Description="Total Number of Records in this Reponse (on this page)", Name="ResponseRecords", ParameterType="query")>]
member val ResponseRecords:Int32 = new Int32() with get,set
[<DataContract(Name="ResponseMetadata", Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type ResponseMetadata() =
[<DataMember(Order=0)>]
member val Success:Boolean = new Boolean() with get,set
[<DataMember(Order=1)>]
member val HasCache:Boolean = new Boolean() with get,set
[<DataMember(Order=2)>]
member val HasPaging:Boolean = new Boolean() with get,set
[<DataMember(Order=3, EmitDefaultValue=false)>]
member val CacheMetadata:CacheMetadata = null with get,set
[<DataMember(Order=4, EmitDefaultValue=false)>]
member val PagingMetadata:PagingMetadata = null with get,set
[<DataContract(Name="ResponseMetadata", Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type AgentivityError() =
[<DataMember>]
member val ErrorCode:String = null with get,set
[<DataMember>]
member val Message:String = null with get,set
[<DataMember>]
member val StatusCode:String = null with get,set
[<DataMember>]
member val VerboseMessage:String = null with get,set
[<DataContract(Name="AgentivityResponse", Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type ItemResponse<TItem, TReport>() =
[<DataMember(Order=1)>]
member val ResponseMetadata:ResponseMetadata = null with get,set
[<DataMember(Order=2, EmitDefaultValue=false)>]
member val ResponseReport:TReport = null with get,set
[<DataMember(Order=3, EmitDefaultValue=false)>]
member val ResponseError:AgentivityError = null with get,set
[<DataContract(Name="AgentivityResponse", Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type QLogForwardItemResponse() =
inherit ItemResponse<QLogForwardItem, QLogForwardResponseReport>()
[<DataContract(Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type QLogForward() =
inherit PagingMetadata()
///<summary>
///ID of a Company (travel agency)
///</summary>
[<DataMember>]
member val CompanyID:Nullable<Int32> = new Nullable<Int32>() with get,set
///<summary>
///ID for queue entry
///</summary>
[<DataMember>]
member val QueueEntryID:Nullable<Int32> = new Nullable<Int32>() with get,set
///<summary>
///Date in format YYYYMMDD
///</summary>
[<DataMember>]
member val LogDateStart:String = null with get,set
///<summary>
///Date in format YYYYMMDD
///</summary>
[<DataMember>]
member val LogDateEnd:String = null with get,set
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /QLogForward HTTP/1.1
Host: api.agentivity.com
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"CompanyID":0,"QueueEntryID":0,"LogDateStart":"String","LogDateEnd":"String","Offset":"String","Limit":"String","TotalRecords":0,"ResponseRecords":0}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"ResponseMetadata":{"Success":false,"HasCache":false,"HasPaging":false,"CacheMetadata":{"IsFromCache":false,"CachedAt":"\/Date(-62135596800000-0000)\/","CacheExpiresAt":"\/Date(-62135596800000-0000)\/"},"PagingMetadata":{"Offset":"String","Limit":"String","TotalRecords":0,"ResponseRecords":0}},"ResponseReport":{"Item":{"AgentivityRef":0,"LogID":0,"MatchedOn":"String","RecordLocator":"String","LogDate":"\/Date(-62135596800000-0000)\/","Destination":"String"}},"ResponseError":{"ErrorCode":"String","Message":"String","StatusCode":"String","VerboseMessage":"String"}}