| GET | /AirRailDurations |
|---|
"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 AirRailDuration {
/** @param {{AgentivityRef?:number,RecordLocator?:string,PNRCreationDate?:string,SegmentType?:string,Account?:string,BookingClass?:string,PNRTicketed?:string,Passenger?:string,VendorLocator?:string,CarrierCode?:string,FlightNbr?:string,DepartureDateTime?:string,ArrivalDateTime?:string,BoardPoint?:string,OffPoint?:string,DistanceMiles?:number,DurationMinutes?:number,LayoverMinutes?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
AgentivityRef;
/** @type {string} */
RecordLocator;
/** @type {?string} */
PNRCreationDate;
/** @type {string} */
SegmentType;
/** @type {string} */
Account;
/** @type {string} */
BookingClass;
/** @type {string} */
PNRTicketed;
/** @type {string} */
Passenger;
/** @type {string} */
VendorLocator;
/** @type {string} */
CarrierCode;
/** @type {string} */
FlightNbr;
/** @type {string} */
DepartureDateTime;
/** @type {string} */
ArrivalDateTime;
/** @type {string} */
BoardPoint;
/** @type {string} */
OffPoint;
/** @type {?number} */
DistanceMiles;
/** @type {?number} */
DurationMinutes;
/** @type {?number} */
LayoverMinutes;
}
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 ApiRequestPerHour {
/** @param {{RequestDate?:string,Hour0?:number,Hour1?:number,Hour2?:number,Hour3?:number,Hour4?:number,Hour5?:number,Hour6?:number,Hour7?:number,Hour8?:number,Hour9?:number,Hour10?:number,Hour11?:number,Hour12?:number,Hour13?:number,Hour14?:number,Hour15?:number,Hour16?:number,Hour17?:number,Hour18?:number,Hour19?:number,Hour20?:number,Hour21?:number,Hour22?:number,Hour23?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
RequestDate;
/** @type {number} */
Hour0;
/** @type {number} */
Hour1;
/** @type {number} */
Hour2;
/** @type {number} */
Hour3;
/** @type {number} */
Hour4;
/** @type {number} */
Hour5;
/** @type {number} */
Hour6;
/** @type {number} */
Hour7;
/** @type {number} */
Hour8;
/** @type {number} */
Hour9;
/** @type {number} */
Hour10;
/** @type {number} */
Hour11;
/** @type {number} */
Hour12;
/** @type {number} */
Hour13;
/** @type {number} */
Hour14;
/** @type {number} */
Hour15;
/** @type {number} */
Hour16;
/** @type {number} */
Hour17;
/** @type {number} */
Hour18;
/** @type {number} */
Hour19;
/** @type {number} */
Hour20;
/** @type {number} */
Hour21;
/** @type {number} */
Hour22;
/** @type {number} */
Hour23;
}
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} */
export class CollectionResponse {
/** @param {{ResponseMetadata?:ResponseMetadata,ResponseReport?:ApiRequestPerHour[],ResponseError?:AgentivityError}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ResponseMetadata} */
ResponseMetadata;
/** @type {ApiRequestPerHour[]} */
ResponseReport;
/** @type {AgentivityError} */
ResponseError;
}
export class AirRailDurationsResponse extends CollectionResponse {
/** @param {{ResponseMetadata?:ResponseMetadata,ResponseReport?:ApiRequestPerHour[],ResponseError?:AgentivityError}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
}
export class GetAirRailDurations extends CompanyLevelRequestBase {
/** @param {{DepartureDateStart?:string,DepartureDateEnd?:string,Account?: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 */
DepartureDateStart;
/**
* @type {string}
* @description Date in format YYYYMMDD */
DepartureDateEnd;
/**
* @type {string[]}
* @description Comma Delimited List of Accounts */
Account;
}
JavaScript GetAirRailDurations 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 /AirRailDurations 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>
<AirRailDuration>
<AgentivityRef>0</AgentivityRef>
<RecordLocator>String</RecordLocator>
<PNRCreationDate>0001-01-01T00:00:00</PNRCreationDate>
<SegmentType>String</SegmentType>
<Account>String</Account>
<BookingClass>String</BookingClass>
<PNRTicketed>String</PNRTicketed>
<Passenger>String</Passenger>
<VendorLocator>String</VendorLocator>
<CarrierCode>String</CarrierCode>
<FlightNbr>String</FlightNbr>
<DepartureDateTime>0001-01-01T00:00:00</DepartureDateTime>
<ArrivalDateTime>0001-01-01T00:00:00</ArrivalDateTime>
<BoardPoint>String</BoardPoint>
<OffPoint>String</OffPoint>
<DistanceMiles>0</DistanceMiles>
<DurationMinutes>0</DurationMinutes>
<LayoverMinutes>0</LayoverMinutes>
</AirRailDuration>
</ResponseReport>
<ResponseError>
<ErrorCode>String</ErrorCode>
<Message>String</Message>
<StatusCode>String</StatusCode>
<VerboseMessage>String</VerboseMessage>
</ResponseError>
</AgentivityResponse>