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