| GET | /HotelSegments |
|---|
"use strict";
export class PagingMetadata {
/** @param {{Offset?:string,Limit?:string,TotalRecords?:number,ResponseRecords?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description Starting Record */
Offset;
/**
* @type {string}
* @description Number of records to return (PageSize) */
Limit;
/**
* @type {number}
* @description Total Number of Records in a Full Reponse (if no paging) */
TotalRecords;
/**
* @type {number}
* @description Total Number of Records in this Reponse (on this page) */
ResponseRecords;
}
export class CompanyLevelRequestBase extends PagingMetadata {
/** @param {{OwningCompanyCode?:string[],UserName?:string,Offset?:string,Limit?:string,TotalRecords?:number,ResponseRecords?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {string[]}
* @description Comma Delimited List of Owning Company Codes */
OwningCompanyCode;
/**
* @type {string}
* @description UserName in form of an email address */
UserName;
}
export class CustomFieldData {
/** @param {{FieldName?:string,FieldValue?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
FieldName;
/** @type {string} */
FieldValue;
}
export class CustomFieldsCollection extends Array {
constructor(init) { super(init); Object.assign(this, init) }
}
export class HotelSegment {
/** @param {{AgentivityRef?:number,PNRCreationDate?:string,HotelSegmentNbr?:string,RecordLocator?:string,OwningAgencyLocationID?:string,Account?:string,OwningConsultantID?:string,OwningConsultant?:string,StatusCode?:string,SegmentCreationDate?:string,ArrivalDate?:string,DepartureDate?:string,NbrNights?:number,VendorCode?:string,PropertyName?:string,PropertyNbr?:string,PropertyAddress?:string,PropertyPhoneNbr?:string,CityCode?:string,CityName?:string,CountryCode?:string,CountryName?:string,Passenger?:string,ConfirmationNbr?:string,RateAccessCode?:string,RoomBookingCode?:string,CurrencyCode?:string,RateAmount?:string,NbrRooms?:number,BookedInName?:string,ServiceInformation?:string,TotalAirSegs?:string,CreatingAgencyIata?:string,IsCommissionable?:boolean,Commission?:string,IsPassive?:boolean,CustomFields?:CustomFieldsCollection,HotelNotepad?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
AgentivityRef;
/** @type {?string} */
PNRCreationDate;
/** @type {string} */
HotelSegmentNbr;
/** @type {string} */
RecordLocator;
/** @type {string} */
OwningAgencyLocationID;
/** @type {string} */
Account;
/** @type {string} */
OwningConsultantID;
/** @type {string} */
OwningConsultant;
/** @type {string} */
StatusCode;
/** @type {?string} */
SegmentCreationDate;
/** @type {?string} */
ArrivalDate;
/** @type {?string} */
DepartureDate;
/** @type {number} */
NbrNights;
/** @type {string} */
VendorCode;
/** @type {string} */
PropertyName;
/** @type {string} */
PropertyNbr;
/** @type {string} */
PropertyAddress;
/** @type {string} */
PropertyPhoneNbr;
/** @type {string} */
CityCode;
/** @type {string} */
CityName;
/** @type {string} */
CountryCode;
/** @type {string} */
CountryName;
/** @type {string} */
Passenger;
/** @type {string} */
ConfirmationNbr;
/** @type {string} */
RateAccessCode;
/** @type {string} */
RoomBookingCode;
/** @type {string} */
CurrencyCode;
/** @type {string} */
RateAmount;
/** @type {number} */
NbrRooms;
/** @type {string} */
BookedInName;
/** @type {string} */
ServiceInformation;
/** @type {string} */
TotalAirSegs;
/** @type {string} */
CreatingAgencyIata;
/** @type {?boolean} */
IsCommissionable;
/** @type {string} */
Commission;
/** @type {boolean} */
IsPassive;
/** @type {CustomFieldsCollection} */
CustomFields;
/** @type {string} */
HotelNotepad;
}
/** @typedef TItemResponse {any} */
/** @typedef TItem {any} */
export class Report {
/** @param {{Item?:TItem}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {TItem} */
Item;
}
export class HotelSegmentsResponseReport extends Report {
/** @param {{Item?:TItem}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
}
export class CacheMetadata {
/** @param {{CachedAt?:string,CacheExpiresAt?:string,IsFromCache?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
CachedAt;
/** @type {string} */
CacheExpiresAt;
/** @type {boolean} */
IsFromCache;
}
export class ResponseMetadata {
/** @param {{Success?:boolean,HasCache?:boolean,HasPaging?:boolean,CacheMetadata?:CacheMetadata,PagingMetadata?:PagingMetadata}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {boolean} */
Success;
/** @type {boolean} */
HasCache;
/** @type {boolean} */
HasPaging;
/** @type {CacheMetadata} */
CacheMetadata;
/** @type {PagingMetadata} */
PagingMetadata;
}
export class AgentivityError {
/** @param {{ErrorCode?:string,Message?:string,StatusCode?:string,VerboseMessage?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
ErrorCode;
/** @type {string} */
Message;
/** @type {string} */
StatusCode;
/** @type {string} */
VerboseMessage;
}
/** @typedef TItem {any} */
/** @typedef TReport {any} */
export class ItemResponse {
/** @param {{ResponseMetadata?:ResponseMetadata,ResponseReport?:TReport,ResponseError?:AgentivityError}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ResponseMetadata} */
ResponseMetadata;
/** @type {TReport} */
ResponseReport;
/** @type {AgentivityError} */
ResponseError;
}
export class HotelSegmentsItemResponse extends ItemResponse {
/** @param {{ResponseMetadata?:ResponseMetadata,ResponseReport?:TReport,ResponseError?:AgentivityError}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
}
export class GetHotelSegments extends CompanyLevelRequestBase {
/** @param {{DateStart?:string,DateEnd?:string,Account?:string[],CityCode?:string,WithNotepad?:string,OwningAgencyLocationID?:string[],OwningAgencyCountryCode?:string[],DateSearchType?:string,IsGDS?:string,IsPassive?:string,CustomField?:string[],OwningCompanyCode?:string[],UserName?:string,Offset?:string,Limit?:string,TotalRecords?:number,ResponseRecords?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {string}
* @description Date in format YYYYMMDD */
DateStart;
/**
* @type {string}
* @description Date in format YYYYMMDD */
DateEnd;
/**
* @type {string[]}
* @description Comma Delimited List of Accounts */
Account;
/**
* @type {string}
* @description 3 letter city code */
CityCode;
/**
* @type {string}
* @description Include Notepad Entry: 1=Yes */
WithNotepad;
/**
* @type {string[]}
* @description Comma Delimited List of PCCs */
OwningAgencyLocationID;
/**
* @type {string[]}
* @description Comma Delimited List of CountryCodes */
OwningAgencyCountryCode;
/**
* @type {string}
* @description Date search type option, a single character (A to search by Arrival dates, C to search by booking creation dates, S to search by segment creation dates). */
DateSearchType;
/**
* @type {string}
* @description IsGDS=0 (bookings from Non-GDS eg Supplier Direct). IsGDS=1 (bookings from GDS). */
IsGDS;
/**
* @type {string}
* @description IsPassive=0 (only include non-passive segments). IsPassive=1 (only include passive segments). */
IsPassive;
/**
* @type {string[]}
* @description Comma Delimited List of Custom Fields */
CustomField;
}
JavaScript GetHotelSegments 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 /HotelSegments 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>
<Item>
<AgentivityRef>0</AgentivityRef>
<PNRCreationDate>0001-01-01T00:00:00</PNRCreationDate>
<HotelSegmentNbr>String</HotelSegmentNbr>
<RecordLocator>String</RecordLocator>
<OwningAgencyLocationID>String</OwningAgencyLocationID>
<Account>String</Account>
<OwningConsultantID>String</OwningConsultantID>
<OwningConsultant>String</OwningConsultant>
<StatusCode>String</StatusCode>
<SegmentCreationDate>0001-01-01T00:00:00</SegmentCreationDate>
<ArrivalDate>0001-01-01T00:00:00</ArrivalDate>
<DepartureDate>0001-01-01T00:00:00</DepartureDate>
<NbrNights>0</NbrNights>
<VendorCode>String</VendorCode>
<PropertyName>String</PropertyName>
<PropertyPhoneNbr>String</PropertyPhoneNbr>
<PropertyNbr>String</PropertyNbr>
<PropertyAddress>String</PropertyAddress>
<CityCode>String</CityCode>
<CityName>String</CityName>
<CountryCode>String</CountryCode>
<CountryName>String</CountryName>
<Passenger>String</Passenger>
<ConfirmationNbr>String</ConfirmationNbr>
<RateAccessCode>String</RateAccessCode>
<RoomBookingCode>String</RoomBookingCode>
<CurrencyCode>String</CurrencyCode>
<RateAmount>String</RateAmount>
<NbrRooms>0</NbrRooms>
<BookedInName>String</BookedInName>
<ServiceInformation>String</ServiceInformation>
<TotalAirSegs>String</TotalAirSegs>
<CreatingAgencyIata>String</CreatingAgencyIata>
<IsCommissionable>false</IsCommissionable>
<Commission>String</Commission>
<IsPassive>false</IsPassive>
<CustomFields>
<CustomField>
<FieldName>String</FieldName>
<FieldValue>String</FieldValue>
</CustomField>
</CustomFields>
<HotelNotepad>String</HotelNotepad>
</Item>
</ResponseReport>
<ResponseError>
<ErrorCode>String</ErrorCode>
<Message>String</Message>
<StatusCode>String</StatusCode>
<VerboseMessage>String</VerboseMessage>
</ResponseError>
</AgentivityResponse>