Agentivity API

<back to all web services

GetPNRSegments

The following routes are available for this service:
GET/PNRSegments

// @DataContract(Name="Metadata", Namespace="schemas.agentivity.com/types")
export class PagingMetadata
{
    /** @description Starting Record */
    // @DataMember
    // @ApiMember(DataType="string", Description="Starting Record", Name="Offset", ParameterType="query")
    public Offset: string;

    /** @description Number of records to return (PageSize) */
    // @DataMember
    // @ApiMember(DataType="string", Description="Number of records to return (PageSize)", Name="Limit", ParameterType="query")
    public Limit: string;

    /** @description 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")
    public TotalRecords: number;

    /** @description 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")
    public ResponseRecords: number;

    public constructor(init?: Partial<PagingMetadata>) { (Object as any).assign(this, init); }
}

// @DataContract(Namespace="schemas.agentivity.com/types")
export class HostSystem
{
    // @DataMember(Order=1)
    public Vendor: string;

    // @DataMember(Order=2)
    public VendorLocator: string;

    public constructor(init?: Partial<HostSystem>) { (Object as any).assign(this, init); }
}

export class AirlineReferences extends Array<HostSystem>
{

    public constructor(init?: Partial<AirlineReferences>) { super(); (Object as any).assign(this, init); }
}

// @DataContract(Namespace="schemas.agentivity.com/types")
export class PassengerName
{
    // @DataMember(Order=1)
    public LastName: string;

    // @DataMember(Order=2)
    public FirstName: string;

    public constructor(init?: Partial<PassengerName>) { (Object as any).assign(this, init); }
}

// @DataContract(Namespace="schemas.agentivity.com/types")
export class Coupon
{
    // @DataMember(Order=1)
    public CouponSequenceNbr: string;

    // @DataMember(Order=2)
    public CouponBoardPoint: string;

    // @DataMember(Order=3)
    public CouponOffPoint: string;

    // @DataMember(Order=4)
    public Carrier: string;

    // @DataMember(Order=5)
    public FlightNbr: string;

    // @DataMember(Order=6)
    public FlightDate: string;

    // @DataMember(Order=7)
    public FlightTime: string;

    public constructor(init?: Partial<Coupon>) { (Object as any).assign(this, init); }
}

export class Coupons extends Array<Coupon>
{

    public constructor(init?: Partial<Coupons>) { super(); (Object as any).assign(this, init); }
}

// @DataContract(Namespace="schemas.agentivity.com/types")
export class PNRSummaryTicket
{
    // @DataMember(Order=1)
    public TktNumber: string;

    // @DataMember(Order=2)
    public Passenger: PassengerName;

    // @DataMember(Order=3)
    public Coupons: Coupons;

    public constructor(init?: Partial<PNRSummaryTicket>) { (Object as any).assign(this, init); }
}

export class PNRSummaryTickets extends Array<PNRSummaryTicket>
{

    public constructor(init?: Partial<PNRSummaryTickets>) { super(); (Object as any).assign(this, init); }
}

// @DataContract(Name="PNRSummary", Namespace="schemas.agentivity.com/types")
export class PNRSummary
{
    // @DataMember(Order=1)
    public RecordLocator: string;

    // @DataMember(Order=2)
    public AirlineReferences: AirlineReferences;

    // @DataMember(Order=3)
    public Tickets: PNRSummaryTickets;

    public constructor(init?: Partial<PNRSummary>) { (Object as any).assign(this, init); }
}

// @DataContract(Namespace="schemas.agentivity.com/types")
export class Seat
{
    // @DataMember(Order=1)
    public SeatLocation: string;

    // @DataMember(Order=2)
    public SeatStatusCode: string;

    public constructor(init?: Partial<Seat>) { (Object as any).assign(this, init); }
}

export class SeatingData extends Array<Seat>
{

    public constructor(init?: Partial<SeatingData>) { super(); (Object as any).assign(this, init); }
}

// @DataContract(Name="AirSegment", Namespace="schemas.agentivity.com/types")
export class AirSegment
{
    // @DataMember
    public AirSegmentNbr: number;

    // @DataMember
    public SegmentStatus: string;

    // @DataMember
    public DepartureDate: string;

    // @DataMember
    public DepartureTime: string;

    // @DataMember
    public CarrierCode: string;

    // @DataMember
    public BoardPoint: string;

    // @DataMember
    public OffPoint: string;

    // @DataMember
    public FlightNbr: string;

    // @DataMember
    public BookingCode: string;

    // @DataMember
    public ArrivalTime: string;

    // @DataMember
    public ChangeOfDay: string;

    // @DataMember
    public ConnectionIndicator: string;

    // @DataMember
    public OperatingCarrierCode: string;

    // @DataMember
    public OperatingCarrierName: string;

    // @DataMember
    public JourneyTime: string;

    // @DataMember
    public NbrSeats: number;

    // @DataMember(EmitDefaultValue=false)
    public SeatingData: SeatingData;

    public constructor(init?: Partial<AirSegment>) { (Object as any).assign(this, init); }
}

// @DataContract(Name="CarSegment", Namespace="schemas.agentivity.com/types")
export class CarSegment
{
    // @DataMember
    public CarSegmentNbr: number;

    // @DataMember
    public SegmentStatus: string;

    // @DataMember
    public PickUpDate: string;

    // @DataMember
    public PickUpTime: string;

    // @DataMember
    public AirportCode: string;

    // @DataMember
    public CarLocationCategory: string;

    // @DataMember
    public DropOffDate: string;

    // @DataMember
    public DropOffTime: string;

    // @DataMember
    public ConfirmationNbr: string;

    // @DataMember
    public CarVendorCode: string;

    // @DataMember
    public CarRateType: string;

    // @DataMember
    public CarRateCode: string;

    // @DataMember
    public CarType: string;

    // @DataMember
    public CarYieldManagementNbr: string;

    // @DataMember
    public RateAmount: string;

    // @DataMember
    public RateGuaranteeIndicator: string;

    // @DataMember
    public MilesKilometerIndicator: string;

    // @DataMember
    public DistanceAllowance: string;

    // @DataMember
    public DistanceRateAmount: string;

    // @DataMember
    public CurrencyCode: string;

    // @DataMember
    public NbrOfCars: number;

    public constructor(init?: Partial<CarSegment>) { (Object as any).assign(this, init); }
}

// @DataContract(Name="Segment", Namespace="schemas.agentivity.com/types")
export class HotelSegmentDepreciated
{
    // @DataMember(Order=1)
    public HotelSegmentNbr: string;

    // @DataMember(Order=4)
    public StatusCode: string;

    // @DataMember(Order=5)
    public ArrivalDate: string;

    // @DataMember(Order=6)
    public DepartureDate: string;

    // @DataMember(Order=7)
    public PropertyName: string;

    // @DataMember(Order=16)
    public ConfirmationNbr: string;

    // @DataMember(Order=17)
    public Currency: string;

    // @DataMember(Order=18)
    public Rate: string;

    // @DataMember(Order=19)
    public RoomBookingCode: string;

    // @DataMember(Order=20)
    public NbrNights: number;

    // @DataMember(Order=21)
    public MultiLevelRateCode: string;

    // @DataMember(Order=22)
    public NbrRooms: number;

    // @DataMember(Order=23)
    public BookedInName: string;

    // @DataMember(Order=24)
    public ServiceInformation: string;

    // @DataMember(Order=25)
    public PropertyCityCode: string;

    // @DataMember(Order=26)
    public SegmentStatus: string;

    // @DataMember(Order=27)
    public HotelVendorCode: string;

    public constructor(init?: Partial<HotelSegmentDepreciated>) { (Object as any).assign(this, init); }
}

// @DataContract(Namespace="schemas.agentivity.com/types")
export class PassiveSegment
{
    // @DataMember
    public SegmentStatus: string;

    // @DataMember
    public StartDate: string;

    // @DataMember
    public DepartureDate: string;

    // @DataMember
    public NbrNights: string;

    // @DataMember
    public VendorCode: string;

    // @DataMember
    public CityCode: string;

    // @DataMember
    public SegmentType: string;

    // @DataMember
    public Text: string;

    // @DataMember
    public Passenger: string;

    // @DataMember
    public Address: string;

    // @DataMember
    public BookingReasonCode: string;

    // @DataMember
    public BookingSource: string;

    // @DataMember
    public CommissionInformation: string;

    // @DataMember
    public ConfirmationNumber: string;

    // @DataMember
    public RateCode: string;

    // @DataMember
    public RateQuoted: string;

    // @DataMember
    public RateAccessCode: string;

    // @DataMember
    public PropertyName: string;

    // @DataMember
    public PropertyNumber: string;

    // @DataMember
    public ServiceInformation: string;

    public constructor(init?: Partial<PassiveSegment>) { (Object as any).assign(this, init); }
}

// @DataContract(Name="Segments", Namespace="schemas.agentivity.com/types")
export class Segments
{
    // @DataMember(Order=2, EmitDefaultValue=false)
    public AirSegments: AirSegment[];

    // @DataMember(Order=3, EmitDefaultValue=false)
    public CarSegments: CarSegment[];

    // @DataMember(Order=4, EmitDefaultValue=false)
    public HotelSegments: HotelSegmentDepreciated[];

    // @DataMember(Order=5, EmitDefaultValue=false)
    public PassiveSegments: PassiveSegment[];

    public constructor(init?: Partial<Segments>) { (Object as any).assign(this, init); }
}

// @DataContract(Name="PNRSegments", Namespace="schemas.agentivity.com/types")
export class PNRSegments
{
    // @DataMember(Order=10)
    public Summary: PNRSummary;

    // @DataMember(Order=20)
    public Segments: Segments;

    public constructor(init?: Partial<PNRSegments>) { (Object as any).assign(this, init); }
}

// @DataContract(Name="CacheMetadata", Namespace="schemas.agentivity.com/types")
export class CacheMetadata
{
    // @DataMember(Order=1)
    public CachedAt: string;

    // @DataMember(Order=2)
    public CacheExpiresAt: string;

    // @DataMember(Order=0)
    public IsFromCache: boolean;

    public constructor(init?: Partial<CacheMetadata>) { (Object as any).assign(this, init); }
}

// @DataContract(Name="ResponseMetadata", Namespace="schemas.agentivity.com/types")
export class ResponseMetadata
{
    // @DataMember(Order=0)
    public Success: boolean;

    // @DataMember(Order=1)
    public HasCache: boolean;

    // @DataMember(Order=2)
    public HasPaging: boolean;

    // @DataMember(Order=3, EmitDefaultValue=false)
    public CacheMetadata: CacheMetadata;

    // @DataMember(Order=4, EmitDefaultValue=false)
    public PagingMetadata: PagingMetadata;

    public constructor(init?: Partial<ResponseMetadata>) { (Object as any).assign(this, init); }
}

// @DataContract(Name="ApiRequestPerHour", Namespace="schemas.agentivity.com/types")
export class ApiRequestPerHour
{
    // @DataMember(Order=10)
    public RequestDate: string;

    // @DataMember(Order=100)
    public Hour0: number;

    // @DataMember(Order=110)
    public Hour1: number;

    // @DataMember(Order=120)
    public Hour2: number;

    // @DataMember(Order=130)
    public Hour3: number;

    // @DataMember(Order=140)
    public Hour4: number;

    // @DataMember(Order=150)
    public Hour5: number;

    // @DataMember(Order=160)
    public Hour6: number;

    // @DataMember(Order=170)
    public Hour7: number;

    // @DataMember(Order=180)
    public Hour8: number;

    // @DataMember(Order=190)
    public Hour9: number;

    // @DataMember(Order=200)
    public Hour10: number;

    // @DataMember(Order=210)
    public Hour11: number;

    // @DataMember(Order=220)
    public Hour12: number;

    // @DataMember(Order=230)
    public Hour13: number;

    // @DataMember(Order=240)
    public Hour14: number;

    // @DataMember(Order=250)
    public Hour15: number;

    // @DataMember(Order=260)
    public Hour16: number;

    // @DataMember(Order=270)
    public Hour17: number;

    // @DataMember(Order=280)
    public Hour18: number;

    // @DataMember(Order=290)
    public Hour19: number;

    // @DataMember(Order=300)
    public Hour20: number;

    // @DataMember(Order=310)
    public Hour21: number;

    // @DataMember(Order=320)
    public Hour22: number;

    // @DataMember(Order=330)
    public Hour23: number;

    public constructor(init?: Partial<ApiRequestPerHour>) { (Object as any).assign(this, init); }
}

// @DataContract(Name="ResponseMetadata", Namespace="schemas.agentivity.com/types")
export class AgentivityError
{
    // @DataMember
    public ErrorCode: string;

    // @DataMember
    public Message: string;

    // @DataMember
    public StatusCode: string;

    // @DataMember
    public VerboseMessage: string;

    public constructor(init?: Partial<AgentivityError>) { (Object as any).assign(this, init); }
}

// @DataContract(Name="AgentivityResponse", Namespace="schemas.agentivity.com/types")
export class CollectionResponse<TItem>
{
    // @DataMember(Order=1)
    public ResponseMetadata: ResponseMetadata;

    // @DataMember(Order=2, EmitDefaultValue=false)
    public ResponseReport: ApiRequestPerHour[];

    // @DataMember(Order=3, EmitDefaultValue=false)
    public ResponseError: AgentivityError;

    public constructor(init?: Partial<CollectionResponse<TItem>>) { (Object as any).assign(this, init); }
}

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

    public constructor(init?: Partial<GetPNRSegmentsResponse>) { super(init); (Object as any).assign(this, init); }
}

// @DataContract(Namespace="schemas.agentivity.com/types")
export class GetPNRSegments extends PagingMetadata
{
    /** @description Record locator */
    // @DataMember
    public RecordLocator: string;

    /** @description Date in format YYYYMMDD */
    // @DataMember
    public PNRCreationDate: string;

    /** @description Type of segment */
    // @DataMember
    public SegmentType: string[];

    /** @description Type of passive segment */
    // @DataMember
    public PassiveSegmentType: string[];

    public constructor(init?: Partial<GetPNRSegments>) { super(init); (Object as any).assign(this, init); }
}

TypeScript 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>