GET | /CorporateTrackerBookings |
---|
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="ItinerarySegment", Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type ItinerarySegment() =
[<DataMember>]
member val SegmentType:String = null with get,set
[<DataMember>]
member val SegmentNbr:Int32 = new Int32() with get,set
[<DataMember>]
member val BoardPoint:String = null with get,set
[<DataMember>]
member val OffPoint:String = null with get,set
[<DataMember>]
member val OperatorCode:String = null with get,set
[<DataMember>]
member val OperatorService:String = null with get,set
[<DataMember>]
member val SegmentStatus:String = null with get,set
[<DataMember>]
member val DepartureTimeFormatted:String = null with get,set
[<DataMember>]
member val ArrivalTimeFormatted:String = null with get,set
[<DataMember>]
member val ChangeOfDayFormatted:String = null with get,set
[<DataMember>]
member val ServiceCode:String = null with get,set
[<DataMember>]
member val StartDate:String = null with get,set
[<DataMember>]
member val EndDate:String = null with get,set
[<DataMember>]
member val TicketNumber:String = null with get,set
///<summary>
///Comma separated list of vendor locators
///</summary>
[<DataMember>]
member val VendorLocators:String = null with get,set
[<DataMember>]
member val EquipmentCode:String = null with get,set
[<DataMember>]
member val Equipment:String = null with get,set
[<AllowNullLiteral>]
type ItinerarySegmentsCollection() =
inherit ResizeArray<ItinerarySegment>()
[<DataContract(Name="CorporateTrackerBooking", Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type CorporateTrackerBooking() =
[<DataMember(Order=20)>]
member val RecordLocator:String = null with get,set
[<DataMember(Order=30)>]
member val Passenger:String = null with get,set
[<DataMember(Order=40)>]
member val Account:String = null with get,set
[<DataMember(Order=50)>]
member val OwningConsultant:String = null with get,set
[<DataMember(Order=55)>]
member val PhoneNbr:String = null with get,set
[<DataMember(Order=10)>]
member val AgentivityRef:Int32 = new Int32() with get,set
[<DataMember(Order=60)>]
member val Itinerary:ItinerarySegmentsCollection = null with get,set
[<DataMember(Order=70)>]
member val ItineraryFormatted:String = null with get,set
[<DataMember(Order=80)>]
member val DestinationCountries:String = null with get,set
[<DataMember(Order=2000)>]
member val CarbonEmissionValue:Nullable<Double> = new Nullable<Double>() with get,set
[<DataMember(Order=2010)>]
member val CarbonEmissionUnitId:Nullable<Int16> = new Nullable<Int16>() with get,set
[<DataMember(Order=2020)>]
member val CarbonTonnage:Nullable<Double> = new Nullable<Double>() 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="CorporateTrackerBooking", Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type CorporateTrackerBookingsResponseReport() =
inherit Report<CorporateTrackerBookingsItemResponse, CorporateTrackerBooking>()
[<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 CorporateTrackerBookingsItemResponse() =
inherit ItemResponse<CorporateTrackerBooking, CorporateTrackerBookingsResponseReport>()
[<DataContract(Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type CompanyLevelRequestBase() =
inherit PagingMetadata()
///<summary>
///Comma Delimited List of Owning Company Codes
///</summary>
[<DataMember>]
member val OwningCompanyCode:String[] = null with get,set
///<summary>
///UserName in form of an email address
///</summary>
[<DataMember>]
member val UserName:String = null with get,set
[<Flags>]
type FormattingStyle =
| None = 0
| Html = 1
| Charting = 2
[<DataContract(Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type CorporateTrackerBookings() =
inherit CompanyLevelRequestBase()
///<summary>
///Comma Delimited List of Accounts
///</summary>
[<DataMember>]
member val Account:String[] = null with get,set
///<summary>
///Date in format YYYYMMDD
///</summary>
[<DataMember>]
member val TravelDateStart:String = null with get,set
///<summary>
///Date in format YYYYMMDD
///</summary>
[<DataMember>]
member val TravelDateEnd:String = null with get,set
///<summary>
///Pax surname
///</summary>
[<DataMember>]
member val PaxSurname:String = null with get,set
///<summary>
///Indicates the required formatting: 0=None(Default); 1= Html; 2 = Chart
///</summary>
[<DataMember>]
member val ItineraryFormatting:FormattingStyle = new FormattingStyle() with get,set
///<summary>
///Itinerary segments to show
///</summary>
[<DataMember>]
member val ItinerarySegmentsToShow:String = null with get,set
F# CorporateTrackerBookings DTOs
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 /CorporateTrackerBookings 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","Passenger":"String","Account":"String","OwningConsultant":"String","PhoneNbr":"String","Itinerary":[{"SegmentType":"String","SegmentNbr":0,"BoardPoint":"String","OffPoint":"String","OperatorCode":"String","OperatorService":"String","SegmentStatus":"String","DepartureTimeFormatted":"String","ArrivalTimeFormatted":"String","ChangeOfDayFormatted":"String","ServiceCode":"String","StartDate":"String","EndDate":"String","TicketNumber":"String","VendorLocators":"String","EquipmentCode":"String","Equipment":"String"}],"ItineraryFormatted":"String","DestinationCountries":"String","CarbonEmissionValue":0,"CarbonEmissionUnitId":0,"CarbonTonnage":0}},"ResponseError":{"ErrorCode":"String","Message":"String","StatusCode":"String","VerboseMessage":"String"}}