| 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: servicestack.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>