Agentivity API

<back to all web services

GetPNRSegments

The following routes are available for this service:
GET/PNRSegments
import java.math.*
import java.util.*
import java.io.InputStream
import net.servicestack.client.*


@DataContract(Namespace="schemas.agentivity.com/types")
open class GetPNRSegments : PagingMetadata()
{
    /**
    * Record locator
    */
    @DataMember
    open var RecordLocator:String? = null

    /**
    * Date in format YYYYMMDD
    */
    @DataMember
    open var PNRCreationDate:String? = null

    /**
    * Type of segment
    */
    @DataMember
    open var SegmentType:ArrayList<String>? = null

    /**
    * Type of passive segment
    */
    @DataMember
    open var PassiveSegmentType:ArrayList<String>? = null
}

@DataContract(Name="Metadata", Namespace="schemas.agentivity.com/types")
open class PagingMetadata
{
    /**
    * Starting Record
    */
    @DataMember
    @ApiMember(DataType="string", Description="Starting Record", Name="Offset", ParameterType="query")
    open var Offset:String? = null

    /**
    * Number of records to return (PageSize)
    */
    @DataMember
    @ApiMember(DataType="string", Description="Number of records to return (PageSize)", Name="Limit", ParameterType="query")
    open var Limit:String? = null

    /**
    * Total Number of Records in a Full Reponse (if no paging)
    */
    @DataMember
    @ApiMember(DataType="string", Description="Total Number of Records in a Full Reponse (if no paging)", Name="TotalRecords", ParameterType="query")
    open var TotalRecords:Int? = null

    /**
    * Total Number of Records in this Reponse (on this page)
    */
    @DataMember
    @ApiMember(DataType="string", Description="Total Number of Records in this Reponse (on this page)", Name="ResponseRecords", ParameterType="query")
    open var ResponseRecords:Int? = null
}

@DataContract(Name="AgentivityResponse", Namespace="schemas.agentivity.com/types")
open class GetPNRSegmentsResponse : CollectionResponse<PNRSegments>()
{
}

@DataContract(Name="AgentivityResponse", Namespace="schemas.agentivity.com/types")
open class CollectionResponse<TItem>
{
    @DataMember(Order=1)
    open var ResponseMetadata:ResponseMetadata? = null

    @DataMember(Order=2, EmitDefaultValue=false)
    open var ResponseReport:ArrayList<ApiRequestPerHour>? = null

    @DataMember(Order=3, EmitDefaultValue=false)
    open var ResponseError:AgentivityError? = null
}

@DataContract(Name="ResponseMetadata", Namespace="schemas.agentivity.com/types")
open class ResponseMetadata
{
    @DataMember(Order=0)
    open var Success:Boolean? = null

    @DataMember(Order=1)
    open var HasCache:Boolean? = null

    @DataMember(Order=2)
    open var HasPaging:Boolean? = null

    @DataMember(Order=3, EmitDefaultValue=false)
    open var CacheMetadata:CacheMetadata? = null

    @DataMember(Order=4, EmitDefaultValue=false)
    open var PagingMetadata:PagingMetadata? = null
}

@DataContract(Name="CacheMetadata", Namespace="schemas.agentivity.com/types")
open class CacheMetadata
{
    @DataMember(Order=1)
    open var CachedAt:Date? = null

    @DataMember(Order=2)
    open var CacheExpiresAt:Date? = null

    @DataMember(Order=0)
    open var IsFromCache:Boolean? = null
}

@DataContract(Name="ApiRequestPerHour", Namespace="schemas.agentivity.com/types")
open class ApiRequestPerHour
{
    @DataMember(Order=10)
    open var RequestDate:Date? = null

    @DataMember(Order=100)
    open var Hour0:Int? = null

    @DataMember(Order=110)
    open var Hour1:Int? = null

    @DataMember(Order=120)
    open var Hour2:Int? = null

    @DataMember(Order=130)
    open var Hour3:Int? = null

    @DataMember(Order=140)
    open var Hour4:Int? = null

    @DataMember(Order=150)
    open var Hour5:Int? = null

    @DataMember(Order=160)
    open var Hour6:Int? = null

    @DataMember(Order=170)
    open var Hour7:Int? = null

    @DataMember(Order=180)
    open var Hour8:Int? = null

    @DataMember(Order=190)
    open var Hour9:Int? = null

    @DataMember(Order=200)
    open var Hour10:Int? = null

    @DataMember(Order=210)
    open var Hour11:Int? = null

    @DataMember(Order=220)
    open var Hour12:Int? = null

    @DataMember(Order=230)
    open var Hour13:Int? = null

    @DataMember(Order=240)
    open var Hour14:Int? = null

    @DataMember(Order=250)
    open var Hour15:Int? = null

    @DataMember(Order=260)
    open var Hour16:Int? = null

    @DataMember(Order=270)
    open var Hour17:Int? = null

    @DataMember(Order=280)
    open var Hour18:Int? = null

    @DataMember(Order=290)
    open var Hour19:Int? = null

    @DataMember(Order=300)
    open var Hour20:Int? = null

    @DataMember(Order=310)
    open var Hour21:Int? = null

    @DataMember(Order=320)
    open var Hour22:Int? = null

    @DataMember(Order=330)
    open var Hour23:Int? = null
}

@DataContract(Name="ResponseMetadata", Namespace="schemas.agentivity.com/types")
open class AgentivityError
{
    @DataMember
    open var ErrorCode:String? = null

    @DataMember
    open var Message:String? = null

    @DataMember
    open var StatusCode:String? = null

    @DataMember
    open var VerboseMessage:String? = null
}

@DataContract(Name="PNRSegments", Namespace="schemas.agentivity.com/types")
open class PNRSegments
{
    @DataMember(Order=10)
    open var Summary:PNRSummary? = null

    @DataMember(Order=20)
    open var Segments:Segments? = null
}

@DataContract(Name="PNRSummary", Namespace="schemas.agentivity.com/types")
open class PNRSummary
{
    @DataMember(Order=1)
    open var RecordLocator:String? = null

    @DataMember(Order=2)
    open var AirlineReferences:AirlineReferences? = null

    @DataMember(Order=3)
    open var Tickets:PNRSummaryTickets? = null
}

open class AirlineReferences : ArrayList<HostSystem>()
{
}

@DataContract(Namespace="schemas.agentivity.com/types")
open class HostSystem
{
    @DataMember(Order=1)
    open var Vendor:String? = null

    @DataMember(Order=2)
    open var VendorLocator:String? = null
}

open class PNRSummaryTickets : ArrayList<PNRSummaryTicket>()
{
}

@DataContract(Namespace="schemas.agentivity.com/types")
open class PNRSummaryTicket
{
    @DataMember(Order=1)
    open var TktNumber:String? = null

    @DataMember(Order=2)
    open var Passenger:PassengerName? = null

    @DataMember(Order=3)
    open var Coupons:Coupons? = null
}

@DataContract(Namespace="schemas.agentivity.com/types")
open class PassengerName
{
    @DataMember(Order=1)
    open var LastName:String? = null

    @DataMember(Order=2)
    open var FirstName:String? = null
}

open class Coupons : ArrayList<Coupon>()
{
}

@DataContract(Namespace="schemas.agentivity.com/types")
open class Coupon
{
    @DataMember(Order=1)
    open var CouponSequenceNbr:String? = null

    @DataMember(Order=2)
    open var CouponBoardPoint:String? = null

    @DataMember(Order=3)
    open var CouponOffPoint:String? = null

    @DataMember(Order=4)
    open var Carrier:String? = null

    @DataMember(Order=5)
    open var FlightNbr:String? = null

    @DataMember(Order=6)
    open var FlightDate:String? = null

    @DataMember(Order=7)
    open var FlightTime:String? = null
}

@DataContract(Name="Segments", Namespace="schemas.agentivity.com/types")
open class Segments
{
    @DataMember(Order=2, EmitDefaultValue=false)
    open var AirSegments:ArrayList<AirSegment>? = null

    @DataMember(Order=3, EmitDefaultValue=false)
    open var CarSegments:ArrayList<CarSegment>? = null

    @DataMember(Order=4, EmitDefaultValue=false)
    open var HotelSegments:ArrayList<HotelSegmentDepreciated>? = null

    @DataMember(Order=5, EmitDefaultValue=false)
    open var PassiveSegments:ArrayList<PassiveSegment>? = null
}

@DataContract(Name="AirSegment", Namespace="schemas.agentivity.com/types")
open class AirSegment
{
    @DataMember
    open var AirSegmentNbr:Int? = null

    @DataMember
    open var SegmentStatus:String? = null

    @DataMember
    open var DepartureDate:String? = null

    @DataMember
    open var DepartureTime:String? = null

    @DataMember
    open var CarrierCode:String? = null

    @DataMember
    open var BoardPoint:String? = null

    @DataMember
    open var OffPoint:String? = null

    @DataMember
    open var FlightNbr:String? = null

    @DataMember
    open var BookingCode:String? = null

    @DataMember
    open var ArrivalTime:String? = null

    @DataMember
    open var ChangeOfDay:String? = null

    @DataMember
    open var ConnectionIndicator:String? = null

    @DataMember
    open var OperatingCarrierCode:String? = null

    @DataMember
    open var OperatingCarrierName:String? = null

    @DataMember
    open var JourneyTime:String? = null

    @DataMember
    open var NbrSeats:Int? = null

    @DataMember(EmitDefaultValue=false)
    open var SeatingData:SeatingData? = null
}

open class SeatingData : ArrayList<Seat>()
{
}

@DataContract(Namespace="schemas.agentivity.com/types")
open class Seat
{
    @DataMember(Order=1)
    open var SeatLocation:String? = null

    @DataMember(Order=2)
    open var SeatStatusCode:String? = null
}

@DataContract(Name="CarSegment", Namespace="schemas.agentivity.com/types")
open class CarSegment
{
    @DataMember
    open var CarSegmentNbr:Int? = null

    @DataMember
    open var SegmentStatus:String? = null

    @DataMember
    open var PickUpDate:String? = null

    @DataMember
    open var PickUpTime:String? = null

    @DataMember
    open var AirportCode:String? = null

    @DataMember
    open var CarLocationCategory:String? = null

    @DataMember
    open var DropOffDate:String? = null

    @DataMember
    open var DropOffTime:String? = null

    @DataMember
    open var ConfirmationNbr:String? = null

    @DataMember
    open var CarVendorCode:String? = null

    @DataMember
    open var CarRateType:String? = null

    @DataMember
    open var CarRateCode:String? = null

    @DataMember
    open var CarType:String? = null

    @DataMember
    open var CarYieldManagementNbr:String? = null

    @DataMember
    open var RateAmount:String? = null

    @DataMember
    open var RateGuaranteeIndicator:String? = null

    @DataMember
    open var MilesKilometerIndicator:String? = null

    @DataMember
    open var DistanceAllowance:String? = null

    @DataMember
    open var DistanceRateAmount:String? = null

    @DataMember
    open var CurrencyCode:String? = null

    @DataMember
    open var NbrOfCars:Int? = null
}

@DataContract(Name="Segment", Namespace="schemas.agentivity.com/types")
open class HotelSegmentDepreciated
{
    @DataMember(Order=1)
    open var HotelSegmentNbr:String? = null

    @DataMember(Order=4)
    open var StatusCode:String? = null

    @DataMember(Order=5)
    open var ArrivalDate:String? = null

    @DataMember(Order=6)
    open var DepartureDate:String? = null

    @DataMember(Order=7)
    open var PropertyName:String? = null

    @DataMember(Order=16)
    open var ConfirmationNbr:String? = null

    @DataMember(Order=17)
    open var Currency:String? = null

    @DataMember(Order=18)
    open var Rate:String? = null

    @DataMember(Order=19)
    open var RoomBookingCode:String? = null

    @DataMember(Order=20)
    open var NbrNights:Int? = null

    @DataMember(Order=21)
    open var MultiLevelRateCode:String? = null

    @DataMember(Order=22)
    open var NbrRooms:Int? = null

    @DataMember(Order=23)
    open var BookedInName:String? = null

    @DataMember(Order=24)
    open var ServiceInformation:String? = null

    @DataMember(Order=25)
    open var PropertyCityCode:String? = null

    @DataMember(Order=26)
    open var SegmentStatus:String? = null

    @DataMember(Order=27)
    open var HotelVendorCode:String? = null
}

@DataContract(Namespace="schemas.agentivity.com/types")
open class PassiveSegment
{
    @DataMember
    open var SegmentStatus:String? = null

    @DataMember
    open var StartDate:String? = null

    @DataMember
    open var DepartureDate:String? = null

    @DataMember
    open var NbrNights:String? = null

    @DataMember
    open var VendorCode:String? = null

    @DataMember
    open var CityCode:String? = null

    @DataMember
    open var SegmentType:String? = null

    @DataMember
    open var Text:String? = null

    @DataMember
    open var Passenger:String? = null

    @DataMember
    open var Address:String? = null

    @DataMember
    open var BookingReasonCode:String? = null

    @DataMember
    open var BookingSource:String? = null

    @DataMember
    open var CommissionInformation:String? = null

    @DataMember
    open var ConfirmationNumber:String? = null

    @DataMember
    open var RateCode:String? = null

    @DataMember
    open var RateQuoted:String? = null

    @DataMember
    open var RateAccessCode:String? = null

    @DataMember
    open var PropertyName:String? = null

    @DataMember
    open var PropertyNumber:String? = null

    @DataMember
    open var ServiceInformation:String? = null
}

Kotlin GetPNRSegments 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

HTTP + JSON

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /PNRSegments 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":[{"Summary":{"RecordLocator":"String","AirlineReferences":[{"Vendor":"String","VendorLocator":"String"}],"Tickets":[{"TktNumber":"String","Passenger":{"LastName":"String","FirstName":"String"},"Coupons":[{"CouponSequenceNbr":"String","CouponBoardPoint":"String","CouponOffPoint":"String","Carrier":"String","FlightNbr":"String","FlightDate":"String","FlightTime":"String"}]}]},"Segments":{"AirSegments":[{"AirSegmentNbr":0,"SegmentStatus":"String","DepartureDate":"String","DepartureTime":"String","CarrierCode":"String","BoardPoint":"String","OffPoint":"String","FlightNbr":"String","BookingCode":"String","ArrivalTime":"String","ChangeOfDay":"String","ConnectionIndicator":"String","OperatingCarrierCode":"String","OperatingCarrierName":"String","JourneyTime":"String","NbrSeats":0,"SeatingData":[{"SeatLocation":"String","SeatStatusCode":"String"}]}],"CarSegments":[{"CarSegmentNbr":0,"SegmentStatus":"String","PickUpDate":"String","PickUpTime":"String","AirportCode":"String","CarLocationCategory":"String","DropOffDate":"String","DropOffTime":"String","ConfirmationNbr":"String","CarVendorCode":"String","CarRateType":"String","CarRateCode":"String","CarType":"String","CarYieldManagementNbr":"String","RateAmount":"String","RateGuaranteeIndicator":"String","MilesKilometerIndicator":"String","DistanceAllowance":"String","DistanceRateAmount":"String","CurrencyCode":"String","NbrOfCars":0}],"HotelSegments":[{"HotelSegmentNbr":"String","StatusCode":"String","ArrivalDate":"String","DepartureDate":"String","PropertyName":"String","ConfirmationNbr":"String","Currency":"String","Rate":"String","RoomBookingCode":"String","NbrNights":0,"MultiLevelRateCode":"String","NbrRooms":0,"BookedInName":"String","ServiceInformation":"String","PropertyCityCode":"String","SegmentStatus":"String","HotelVendorCode":"String"}],"PassiveSegments":[{"SegmentStatus":"String","StartDate":"String","DepartureDate":"String","NbrNights":"String","VendorCode":"String","CityCode":"String","SegmentType":"String","Text":"String","Passenger":"String","Address":"String","BookingReasonCode":"String","BookingSource":"String","CommissionInformation":"String","ConfirmationNumber":"String","RateCode":"String","RateQuoted":"String","RateAccessCode":"String","PropertyName":"String","PropertyNumber":"String","ServiceInformation":"String"}]}}],"ResponseError":{"ErrorCode":"String","Message":"String","StatusCode":"String","VerboseMessage":"String"}}