GET | /AirlineTicketRevenues |
---|
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="AirlineTicketRevenue", Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type AirlineTicketRevenue() =
[<DataMember(Order=10)>]
member val PlatingCarrier:String = null with get,set
[<DataMember(Order=20)>]
member val AirlineShortName:String = null with get,set
[<DataMember(Order=30)>]
member val TotalFares:Nullable<Decimal> = new Nullable<Decimal>() with get,set
[<DataMember(Order=40)>]
member val TotalTax:Nullable<Decimal> = new Nullable<Decimal>() with get,set
[<DataMember(Order=50)>]
member val TotalBaseRevenue:Nullable<Decimal> = new Nullable<Decimal>() with get,set
[<DataMember(Order=60)>]
member val FormattedCarrierPlatingName:String = null with get,set
[<DataMember(Order=70)>]
member val PrintedCurrency:String = null with get,set
[<DataMember(Order=80)>]
member val FormattedTotalFares:String = null with get,set
[<DataMember(Order=90)>]
member val FormattedTotalTax:String = null with get,set
[<DataMember(Order=100)>]
member val FormattedTotalBaseRevenue: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="AirlineTicketRevenue", Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type AirlineTicketRevenuesResponseReport() =
inherit Report<AirlineTicketRevenuesItemResponse, AirlineTicketRevenue>()
[<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 AirlineTicketRevenuesItemResponse() =
inherit ItemResponse<AirlineTicketRevenue, AirlineTicketRevenuesResponseReport>()
[<DataContract(Namespace="schemas.agentivity.com/types")>]
[<AllowNullLiteral>]
type GetCompanyTicketRevenuePerAirline() =
inherit PagingMetadata()
///<summary>
///ID of a travel agent
///</summary>
[<DataMember>]
member val TravelAgentID:String = null with get,set
///<summary>
///Code for Plating Carrier
///</summary>
[<DataMember>]
member val PlatingCarrier:String = null with get,set
///<summary>
///Date in format YYYYMMDD
///</summary>
[<DataMember>]
member val DepartureDateStart:String = null with get,set
///<summary>
///Date in format YYYYMMDD
///</summary>
[<DataMember>]
member val DepartureDateEnd:String = null with get,set
///<summary>
///One letter code for flight coupon status
///</summary>
[<DataMember>]
member val FlightCouponStatus:String = null with get,set
///<summary>
///UserName in form of an email address
///</summary>
[<DataMember>]
member val UserName:String = null with get,set
///<summary>
///Two letter airline code
///</summary>
[<DataMember>]
member val AirlineCode:String = null with get,set
F# GetCompanyTicketRevenuePerAirline DTOs
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.
GET /AirlineTicketRevenues HTTP/1.1 Host: api.agentivity.com Accept: text/csv
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":{"PlatingCarrier":"String","AirlineShortName":"String","TotalFares":0,"TotalTax":0,"TotalBaseRevenue":0,"FormattedCarrierPlatingName":"String","PrintedCurrency":"String","FormattedTotalFares":"String","FormattedTotalTax":"String","FormattedTotalBaseRevenue":"String"}},"ResponseError":{"ErrorCode":"String","Message":"String","StatusCode":"String","VerboseMessage":"String"}}