GET | /TicketsByAccount |
---|
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports AgentivityAPI.ServiceModel.Types
Imports AgentivityAPI.ServiceModel
Namespace Global
Namespace AgentivityAPI.ServiceModel
<DataContract(Name:="AgentivityResponse", Namespace:="schemas.agentivity.com/types")>
Public Partial Class ItemResponse(Of TItem, TReport)
<DataMember(Order:=1)>
Public Overridable Property ResponseMetadata As ResponseMetadata
<DataMember(Order:=2, EmitDefaultValue:=false)>
Public Overridable Property ResponseReport As TReport
<DataMember(Order:=3, EmitDefaultValue:=false)>
Public Overridable Property ResponseError As AgentivityError
End Class
<DataContract(Namespace:="schemas.agentivity.com/types")>
Public Partial Class Report(Of TItemResponse, TItem)
<DataMember(Order:=1, EmitDefaultValue:=false)>
Public Overridable Property Item As TItem
End Class
End Namespace
Namespace AgentivityAPI.ServiceModel.Types
<DataContract(Name:="ResponseMetadata", Namespace:="schemas.agentivity.com/types")>
Public Partial Class AgentivityError
<DataMember>
Public Overridable Property ErrorCode As String
<DataMember>
Public Overridable Property Message As String
<DataMember>
Public Overridable Property StatusCode As String
<DataMember>
Public Overridable Property VerboseMessage As String
End Class
<DataContract(Name:="CacheMetadata", Namespace:="schemas.agentivity.com/types")>
Public Partial Class CacheMetadata
<DataMember(Order:=1)>
Public Overridable Property CachedAt As Date
<DataMember(Order:=2)>
Public Overridable Property CacheExpiresAt As Date
<DataMember(Order:=0)>
Public Overridable Property IsFromCache As Boolean
End Class
<DataContract(Name:="Metadata", Namespace:="schemas.agentivity.com/types")>
Public Partial Class PagingMetadata
'''<Summary>
'''Starting Record
'''</Summary>
<DataMember>
<ApiMember(DataType:="string", Description:="Starting Record", Name:="Offset", ParameterType:="query")>
Public Overridable Property Offset As String
'''<Summary>
'''Number of records to return (PageSize)
'''</Summary>
<DataMember>
<ApiMember(DataType:="string", Description:="Number of records to return (PageSize)", Name:="Limit", ParameterType:="query")>
Public Overridable Property Limit As String
'''<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")>
Public Overridable Property TotalRecords As Integer
'''<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")>
Public Overridable Property ResponseRecords As Integer
End Class
<DataContract(Name:="ResponseMetadata", Namespace:="schemas.agentivity.com/types")>
Public Partial Class ResponseMetadata
<DataMember(Order:=0)>
Public Overridable Property Success As Boolean
<DataMember(Order:=1)>
Public Overridable Property HasCache As Boolean
<DataMember(Order:=2)>
Public Overridable Property HasPaging As Boolean
<DataMember(Order:=3, EmitDefaultValue:=false)>
Public Overridable Property CacheMetadata As CacheMetadata
<DataMember(Order:=4, EmitDefaultValue:=false)>
Public Overridable Property PagingMetadata As PagingMetadata
End Class
<DataContract(Name:="TicketByAccount", Namespace:="schemas.agentivity.com/types")>
Public Partial Class TicketByAccount
<DataMember(Order:=10)>
Public Overridable Property AgentivityRef As Integer
<DataMember(Order:=15)>
Public Overridable Property RecordLocator As String
<DataMember(Order:=20)>
Public Overridable Property PNRCreationDate As Date
<DataMember(Order:=30)>
Public Overridable Property Account As String
<DataMember(Order:=40)>
Public Overridable Property IssueDate As Date
<DataMember(Order:=50)>
Public Overridable Property TicketNumber As String
<DataMember(Order:=60)>
Public Overridable Property PrimaryPassenger As String
<DataMember(Order:=70)>
Public Overridable Property PlatingCarrier As String
<DataMember(Order:=80)>
Public Overridable Property IATA As String
End Class
<DataContract(Namespace:="schemas.agentivity.com/types")>
Public Partial Class TicketsByAccount
Inherits PagingMetadata
'''<Summary>
'''Account
'''</Summary>
<DataMember>
Public Overridable Property Account As String
'''<Summary>
'''UserName in form of an email address
'''</Summary>
<DataMember>
Public Overridable Property UserName As String
'''<Summary>
'''Date in format YYYYMMDD
'''</Summary>
<DataMember>
Public Overridable Property TicketIssueStartDate As String
'''<Summary>
'''Date in format YYYYMMDD
'''</Summary>
<DataMember>
Public Overridable Property TicketIssueEndDate As String
End Class
<DataContract(Name:="AgentivityResponse", Namespace:="schemas.agentivity.com/types")>
Public Partial Class TicketsByAccountItemResponse
Inherits ItemResponse(Of TicketByAccount, TicketsByAccountResponseReport)
End Class
<DataContract(Name:="TicketByAccount", Namespace:="schemas.agentivity.com/types")>
Public Partial Class TicketsByAccountResponseReport
Inherits Report(Of TicketsByAccountItemResponse, TicketByAccount)
End Class
End Namespace
End Namespace
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /TicketsByAccount HTTP/1.1 Host: api.agentivity.com Accept: application/json
HTTP/1.1 200 OK Content-Type: application/json 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,"RecordLocator":"String","PNRCreationDate":"\/Date(-62135596800000-0000)\/","Account":"String","IssueDate":"\/Date(-62135596800000-0000)\/","TicketNumber":"String","PrimaryPassenger":"String","PlatingCarrier":"String","IATA":"String"}},"ResponseError":{"ErrorCode":"String","Message":"String","StatusCode":"String","VerboseMessage":"String"}}