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 .xml suffix or ?format=xml

HTTP + XML

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/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<AgentivityResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="schemas.agentivity.com/types">
  <ResponseMetadata>
    <Success>false</Success>
    <HasCache>false</HasCache>
    <HasPaging>false</HasPaging>
    <CacheMetadata>
      <IsFromCache>false</IsFromCache>
      <CachedAt>0001-01-01T00:00:00</CachedAt>
      <CacheExpiresAt>0001-01-01T00:00:00</CacheExpiresAt>
    </CacheMetadata>
    <PagingMetadata>
      <Limit>String</Limit>
      <Offset>String</Offset>
      <ResponseRecords>0</ResponseRecords>
      <TotalRecords>0</TotalRecords>
    </PagingMetadata>
  </ResponseMetadata>
  <ResponseReport>
    <PNRSegments>
      <Summary>
        <RecordLocator>String</RecordLocator>
        <AirlineReferences>
          <HostSystem>
            <Vendor>String</Vendor>
            <VendorLocator>String</VendorLocator>
          </HostSystem>
        </AirlineReferences>
        <Tickets>
          <Ticket>
            <TktNumber>String</TktNumber>
            <Passenger>
              <LastName>String</LastName>
              <FirstName>String</FirstName>
            </Passenger>
            <Coupons>
              <Coupon>
                <CouponSequenceNbr>String</CouponSequenceNbr>
                <CouponBoardPoint>String</CouponBoardPoint>
                <CouponOffPoint>String</CouponOffPoint>
                <Carrier>String</Carrier>
                <FlightNbr>String</FlightNbr>
                <FlightDate>String</FlightDate>
                <FlightTime>String</FlightTime>
              </Coupon>
            </Coupons>
          </Ticket>
        </Tickets>
      </Summary>
      <Segments>
        <AirSegments>
          <AirSegment>
            <AirSegmentNbr>0</AirSegmentNbr>
            <ArrivalTime>String</ArrivalTime>
            <BoardPoint>String</BoardPoint>
            <BookingCode>String</BookingCode>
            <CarrierCode>String</CarrierCode>
            <ChangeOfDay>String</ChangeOfDay>
            <ConnectionIndicator>String</ConnectionIndicator>
            <DepartureDate>String</DepartureDate>
            <DepartureTime>String</DepartureTime>
            <FlightNbr>String</FlightNbr>
            <JourneyTime>String</JourneyTime>
            <NbrSeats>0</NbrSeats>
            <OffPoint>String</OffPoint>
            <OperatingCarrierCode>String</OperatingCarrierCode>
            <OperatingCarrierName>String</OperatingCarrierName>
            <SeatingData>
              <Seat>
                <SeatLocation>String</SeatLocation>
                <SeatStatusCode>String</SeatStatusCode>
              </Seat>
            </SeatingData>
            <SegmentStatus>String</SegmentStatus>
          </AirSegment>
        </AirSegments>
        <CarSegments>
          <CarSegment>
            <AirportCode>String</AirportCode>
            <CarLocationCategory>String</CarLocationCategory>
            <CarRateCode>String</CarRateCode>
            <CarRateType>String</CarRateType>
            <CarSegmentNbr>0</CarSegmentNbr>
            <CarType>String</CarType>
            <CarVendorCode>String</CarVendorCode>
            <CarYieldManagementNbr>String</CarYieldManagementNbr>
            <ConfirmationNbr>String</ConfirmationNbr>
            <CurrencyCode>String</CurrencyCode>
            <DistanceAllowance>String</DistanceAllowance>
            <DistanceRateAmount>String</DistanceRateAmount>
            <DropOffDate>String</DropOffDate>
            <DropOffTime>String</DropOffTime>
            <MilesKilometerIndicator>String</MilesKilometerIndicator>
            <NbrOfCars>0</NbrOfCars>
            <PickUpDate>String</PickUpDate>
            <PickUpTime>String</PickUpTime>
            <RateAmount>String</RateAmount>
            <RateGuaranteeIndicator>String</RateGuaranteeIndicator>
            <SegmentStatus>String</SegmentStatus>
          </CarSegment>
        </CarSegments>
        <HotelSegments>
          <Segment>
            <HotelSegmentNbr>String</HotelSegmentNbr>
            <StatusCode>String</StatusCode>
            <ArrivalDate>String</ArrivalDate>
            <DepartureDate>String</DepartureDate>
            <PropertyName>String</PropertyName>
            <ConfirmationNbr>String</ConfirmationNbr>
            <Currency>String</Currency>
            <Rate>String</Rate>
            <RoomBookingCode>String</RoomBookingCode>
            <NbrNights>0</NbrNights>
            <MultiLevelRateCode>String</MultiLevelRateCode>
            <NbrRooms>0</NbrRooms>
            <BookedInName>String</BookedInName>
            <ServiceInformation>String</ServiceInformation>
            <PropertyCityCode>String</PropertyCityCode>
            <SegmentStatus>String</SegmentStatus>
            <HotelVendorCode>String</HotelVendorCode>
          </Segment>
        </HotelSegments>
        <PassiveSegments>
          <PassiveSegment>
            <Address>String</Address>
            <BookingReasonCode>String</BookingReasonCode>
            <BookingSource>String</BookingSource>
            <CityCode>String</CityCode>
            <CommissionInformation>String</CommissionInformation>
            <ConfirmationNumber>String</ConfirmationNumber>
            <DepartureDate>String</DepartureDate>
            <NbrNights>String</NbrNights>
            <Passenger>String</Passenger>
            <PropertyName>String</PropertyName>
            <PropertyNumber>String</PropertyNumber>
            <RateAccessCode>String</RateAccessCode>
            <RateCode>String</RateCode>
            <RateQuoted>String</RateQuoted>
            <SegmentStatus>String</SegmentStatus>
            <SegmentType>String</SegmentType>
            <ServiceInformation>String</ServiceInformation>
            <StartDate>String</StartDate>
            <Text>String</Text>
            <VendorCode>String</VendorCode>
          </PassiveSegment>
        </PassiveSegments>
      </Segments>
    </PNRSegments>
  </ResponseReport>
  <ResponseError>
    <ErrorCode>String</ErrorCode>
    <Message>String</Message>
    <StatusCode>String</StatusCode>
    <VerboseMessage>String</VerboseMessage>
  </ResponseError>
</AgentivityResponse>