Agentivity API
Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
This is the public documentation for the Agentivity API, covering the subset of API transactions available for general use. Agentivity API gives you access to reports available in the Agentivity application in API form.
If you need access to a transaction that isn't listed here, contact Agentivity support.
API Authentication
Authentication
method="GET"
url="requestURL"
header="ContentType"
dateTime=$(date +"%F %T")
MESSAGE="$method$url$header$dateTime"
APIKEY="apikey"
apisig=`printf %s "$MESSAGE" | openssl dgst -sha256 -hmac "$APIKEY" -binary | 'base64'
using System.Security.Cryptography;
namespace Test
{
public class MyHmac
{
private string CreateToken(string message, string apikey)
{
secret = apikey ?? "";
string dt = webRequest.Date.ToUniversalTime().ToString("r");
var message = string.Format("{0}{1}{2}{3}", webRequest.Method, webRequest.RequestUri.AbsoluteUri, webRequest.ContentType, dt);
var encoding = new System.Text.ASCIIEncoding();
byte[] keyByte = encoding.GetBytes(secret);
byte[] messageBytes = encoding.GetBytes(message);
using (var hmacsha256 = new HMACSHA256(keyByte))
{
byte[] hashmessage = hmacsha256.ComputeHash(messageBytes);
return Convert.ToBase64String(hashmessage);
}
}
}
}
import urllib.request
import datetime
import hashlib
import hmac
import base64
datetime = datetime.datetime.now().strftime("%Y-%m-%d, %H:%M:%S")
method = "GET"
url = "requestURL"
contenttype = "application/xml"
message = bytes (method + url + contenttype + datetime, 'utf-8')
secret = bytes('apikey', 'utf-8')
signature = base64.b64encode(hmac.new(secret, message, digestmod=hashlib.sha256).digest())
print(signature)
import javax.crypto.Mac;
import javax.crypto.spec.SecretKeySpec;
import org.apache.commons.codec.binary.Base64;
import java.text.SimpleDateFormat;
import java.util.Date;
public class ApiSecurityExample {
public static void main(String[] args) {
try {
String secret = "apikey";
String method = "GET";
String url = "requestURL";
String header = "ContentType";
final SimpleDateFormat sdf = new SimpleDateFormat("yyyy MM dd HH:mm:ss");
sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
String dt = sdf.format(new Date());
StringBuilder sb= new StringBuilder();
sb.append(method).append(url).append(header).append(dt);
String message = sb.toString();
Mac sha256_HMAC = Mac.getInstance("HmacSHA256");
SecretKeySpec secret_key = new SecretKeySpec(secret.getBytes(), "HmacSHA256");
sha256_HMAC.init(secret_key);
String hash = Base64.encodeBase64String(sha256_HMAC.doFinal(message.getBytes()));
System.out.println(hash);
}
catch (Exception e){
System.out.println("Error");
}
}
}
You will be provided with a Username (X-AGENTIVTY-API-USERNAME) and a Secret Key (APIKEY). The secret key is only known to you and by the API.
Four headers are used to send a message to the API.
Header 1 is the Username
Header 2 is the Current Timestamp
Header 3 is the Content Type
Header 4 is a Signature that is a Unique Hash.
The Unique Hash is created using a combination of the Method, the URL, the Secret Key, the current Timestamp, and the Content Type that is encrypted using HMAC (Hash-based message authentication code). This means the Unique Hash is different for every request made.
The Timestamp is in UTC and should be of the format:
04 Apr 2016 14:55:34 GMT
You should use a method to convert your timestamp to UTC, e.g. webRequest.Date.ToUniversalTime().ToString("r")
The Content Type's accepted are: application/json; application/xml; text/csv
The Method is: GET
More information about HMAC can be found at: https://en.wikipedia.org/wiki/Hash-based_message_authentication_code
Example code for various programming languages can be found at: https://www.jokecamp.com/blog/examples-of-creating-base64-hashes-using-hmac-sha256-in-different-languages/
API Keys
You will be provided with the following details:
APIKEY
X-AGENTIVTY-API-USERNAME
Both APIKEY and X-AGENTIVTY-API-USERNAME are required for the authentication of the API Request that you are sending as part of the Header.
Header names that you should use with Agentivity API:
- APIKEY
- X-AGENTIVTY-API-USERNAME
- X-AGENTIVTY-API-SIGNATURE
- X-AGENTIVTY-API-DATE
- CONTENT-TYPE
When testing the API, it will help to know some of the following variables:
- Your own PCC’s e.g. 02LN
- Corporate account codes e.g. COMPANYNAME
- GDS Sign-on codes e.g. 02LNEM
These details can be found in Agentivity in the sections:
Settings > Company Settings > Back-Office
Settings > Company Settings > GDS Account Values
Settings > Company Settings > GDS Sign-ons
Getting Started with Postman
Postman is a free API testing tool available as a standalone application. Once installed, follow these steps to start testing the Agentivity API.
Step 1: Import the API Transaction List
- Launch Postman
- Click the icon labelled Import
- Choose Import from Link and enter the URL:
https://api.agentivity.com/postman - Click Import
The Agentivity API collection — reflecting exactly the transactions documented on this site — will now be available under Collections in the left-hand navigation panel.
Step 2: Add a Pre-request Script containing your Username & ApiKey
Every request needs a Signature header that is a unique hash, different for every request made. Postman can generate this automatically via a Pre-request Script attached to the collection, so it applies to every request within it.
Click on the collection name, select the Scripts tab, then Pre-request, and paste in:
// Postman Pre-Request Script
// Apikey(APIKEY) and username (X-AGENTIVTY-API-USERNAME)
var apikey = "00000000-0000-0000-0000-000000000000";
var username = "APIUSERRNAME";
// Data needed for Authentication Code
var method = pm.request.method;
var uri = pm.request.url;
var contenttype = "application/json"
var dt = new Date().toUTCString();
var requestData = method + uri + contenttype + dt;
// Create Authentication Code (Signature)
var CryptoJS = require("crypto-js");
var hash = CryptoJS.HmacSHA256(requestData, apikey);
var signature = CryptoJS.enc.Base64.stringify(hash);
// Add headers
pm.request.headers.add({ key: "X-AGENTIVTY-API-DATE", value: dt});
pm.request.headers.add({ key: "X-AGENTIVTY-API-USERNAME", value: username});
pm.request.headers.add({ key: "X-AGENTIVTY-API-SIGNATURE", value: signature});
pm.request.headers.add({ key: "Content-Type", value: contenttype});
Replace the placeholder apikey and username with the values you've been provided for API access. The username here is the API username (X-AGENTIVTY-API-USERNAME) you were given — not the email address you use to log in to Agentivity itself.
If you want to work with XML instead of JSON, change contenttype = "application/xml".
Step 3: Send a Request
Choose a transaction from the collection list, fill in any required parameters, and press Send.
Note: some transactions accept a userName query parameter, which is an actual Agentivity username belonging to your company (normally an email address) — the request runs on behalf of that user and reflects their access rights. This is distinct from the API username (X-AGENTIVTY-API-USERNAME) set in the pre-request script above. For a list of your company's users and their PCC/OID assignments, check the Agentivity User to PCC/OID Mapping page.
For AI tools and coding agents
If you're setting this API up for an AI assistant or coding agent rather than a human developer: the authentication mechanism above (HMAC-SHA256 signature over method + URL + content-type + timestamp) applies identically regardless of caller. Provide the agent with:
- The APIKEY and X-AGENTIVTY-API-USERNAME values
- The four required headers and how the signature is computed (see Authentication above)
- This documentation site's URL, or the live collection at
https://api.agentivity.com/postman, as its reference for available transactions and parameters
Avoid granting broader access than the task requires — request a scoped API key where possible rather than reusing a key with wide permissions.
Stay updated on the Agentivity API
Response Envelope & Pagination
Every transaction on this API returns the same top-level envelope, regardless of what it's reporting on:
{
"ResponseMetadata": {
"Success": true,
"HasCache": false,
"HasPaging": true,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "2026-08-24T10:00:00Z",
"CacheExpiresAt": "2026-08-24T10:15:00Z"
},
"PagingMetadata": {
"Offset": "0",
"Limit": "100",
"TotalRecords": 342,
"ResponseRecords": 100
}
},
"ResponseReport": { },
"ResponseError": { }
}
Only one of ResponseReport or ResponseError is populated on any given response — check ResponseMetadata.Success to know which.
Pagination — every transaction that returns a list accepts Offset and Limit query parameters (see each transaction's parameter table). ResponseMetadata.PagingMetadata tells you where you are: TotalRecords is the full result count, ResponseRecords is how many came back on this page. Increment Offset by your Limit to page through the rest.
Errors — if ResponseMetadata.Success is false, look at ResponseError for ErrorCode, Message, and StatusCode.
API documentation usage
Here you can find a description of how to use this API documentation.
The left panel is the Table of Contents, listing all endpoints available in the Agentivity API. You can search through them using the search box at the top of that panel.
The central panel shows information about the topic or endpoint you've selected, including:
- The URL for the given endpoint
- A table listing all parameters, including where to put them, their type, whether they're mandatory, and a brief description
- Enumerated values with headers for that endpoint
- An example of the expected response, in JSON format
The right panel holds code examples in several common programming languages. Select your preferred language from the tabs at the top right of the page.
Below the code example is the default response. This shows the expected response in JSON format. Note that only one of the following two parts of the response will be present in an actual response: ResponseReport or ResponseError.
Release Notes
The current version of Agentivity API documentation is 1.0 and it is still in beta. This documentation was regenerated on 2026-08-24 to cover only the current publicly-supported set of API transactions, sourced directly from the live API's own metadata.
Endpoints
Bookings
BookingDetailsByRef
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/BookingDetails \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/BookingDetails");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/BookingDetails', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/BookingDetails");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /BookingDetails
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| AgentivityRef | query | integer | false | Agentivity Booking Reference |
| LoadOptions | query | string | false | Options to retrieve booking details (valid values are: Passengers, Itinerary, DiEntries, Phones, Notepads, VendorRemarks, Tickets, Versions, VendorLocators, CustomFields, Emails, AccountValue, EventDetails or EmailTrails). The option All can be used to get entire booking data. |
| RecordLocator | query | string | false | Record locator |
| PNRCreationDate | query | string | false | Date in format YYYYMMDD |
| RequestConsultantID | query | string | false | Request Consultant ID (sign on) |
| OwningCompanyCode | query | string | false | Comma Delimited List of Owning Company Codes |
| UserName | query | string | false | UserName in form of an email address |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| VendorLocators | query | string | false | Comma separated list of vendor locators |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": [
{
"AgentivityRef": 0,
"RecordLocator": "String",
"PNRCreationDate": "String",
"CreationDate": "/Date(-62135596800000-0000)/",
"PNRTicketed": "String",
"Account": "String",
"OwningConsultantID": "String",
"OwningConsultant": "String",
"CrsDescription": "String",
"LastActionConsultantID": "String",
"LastActionAgencyLocationID": "String",
"OwningAgencyLocationID": "String",
"CreatingAgencyIata": "String",
"Passengers": [
{
"Id": 0,
"FirstName": "String",
"LastName": "String",
"FrequentFlyers": [
{
"Vendor": "String",
"Number": "String",
"FullNumber": "String"
}
],
"SequenceNbr": 0,
"LastNameElement": 0,
"IsVip": false,
"TravellerGUID": "String",
"CRMItems": [
{
"CRM": "String",
"TravellerReference": "String"
}
]
}
],
"Phones": [
{
"PhoneType": "String",
"City": "String",
"Number": "String",
"SequenceNbr": 0
}
],
"Notepads": [
{
"Remark": "String",
"CreatedDate": "/Date(-62135596800000-0000)/",
"CreatedTime": "String",
"Qualifier": "String",
"SequenceNbr": 0
}
],
"VendorRemarks": [
{
"VendorRemarkID": 0,
"TravelOrderIdentifier": 0,
"RmkNum": 0,
"DateStamp": "/Date(-62135596800000-0000)/",
"TimeStamp": "String",
"RemarkType": "String",
"VendorType": "String",
"Vendor": "String",
"Remark": "String"
}
],
"DiEntries": [
{
"SequenceNbr": 0,
"Keyword": "String",
"Remark": "String"
}
],
"Tickets": [
{
"SegmentNbr": 0,
"TicketNumber": "String",
"TicketType": "String",
"TicketDetailsAvailable": false
}
],
"Versions": [
{
"AgentivityRef": 0,
"DataBaseTimeStamp": "/Date(-62135596800000-0000)/",
"EventType": "String",
"PnrTicketed": "String",
"LastActionAgentId": "String",
"AirSegs": 0,
"AirPSegs": 0,
"HtlSegs": 0,
"HtlPSegs": 0,
"CarSegs": 0,
"CarPSegs": 0,
"TrnPSegs": 0,
"OwningAgencyLocationID": "String"
}
],
"VendorLocators": [
{
"AirSegmentNbr": 0,
"CarrierCode": "String",
"VendorLocator": "String"
}
],
"CustomFields": [
{
"PNRPropertiesCustomFieldID": "String",
"RecordLocator": "String",
"PNRCreationDate": "/Date(-62135596800000-0000)/",
"FieldName": "String",
"FieldValue": "String",
"CustomFieldID": 0,
"CreationDateTime": "/Date(-62135596800000-0000)/",
"ElementNumber": 0,
"GDS": "String"
}
],
"Emails": [
{
"SequenceNbr": 0,
"EmailType": "String",
"Email": "String"
}
],
"EventDetails": [
{
"ItineraryEventTypeDetailID": 0,
"AgentivityRef": 0,
"EventTypeDetail": "String",
"OldData": "String",
"NewData": "String",
"DateTimeStamp": "/Date(-62135596800000-0000)/",
"EventTypeDetailID": 0
}
],
"AccountLocations": [
{
"PrimaryAccountLocation": "String",
"SecondaryAccountLocation": "String",
"Valid": false,
"ExactMatch": false,
"GDS": "String"
}
],
"EmailTrails": [
{
"RecipientEmail": "String",
"DeliveryDetails": "String",
"MailSentDateTime": "/Date(-62135596800000-0000)/",
"RecipientLastActivityEvent": "String",
"EmailId": 0,
"UserId": 0,
"SentResponseMessage": "String",
"SentResponseErrorCode": 0,
"DeliveredBookingID": 0
}
],
"AgentivityWarnings": [
{
"Message": "String",
"Vendor": "String",
"WarningDateTime": "/Date(-62135596800000-0000)/",
"OriginalRemark": "String",
"ClearedDateTime": "/Date(-62135596800000-0000)/",
"ClearedByConsultantID": "String",
"PropertiesList": [
{
"Name": "String",
"Value": "String"
}
]
}
],
"AirlineTicketingDues": [
{
"Airline": "String",
"DueDate": "/Date(-62135596800000-0000)/",
"DueTime": "String"
}
],
"CTCE": "String",
"CTCM": "String",
"CarbonTonnage": 0,
"CarbonEmissions": [
{
"Value": 0,
"Unit": {
"Id": 0,
"Symbol": "String",
"Name": "String"
},
"Provider": {
"Id": 0,
"Name": "String",
"Description": "String",
"LogoPath": "String"
},
"CalculationDateTime": "/Date(-62135596800000-0000)/",
"CalculationDetails": {
"Id": 0,
"Name": "String"
}
}
],
"OwningCompanyCode": "String",
"Itinerary": [
{
"SegmentType": "String",
"SegmentNbr": 0,
"BoardPoint": "String",
"OffPoint": "String",
"OperatorCode": "String",
"OperatorService": "String",
"SegmentStatus": "String",
"DepartureTimeFormatted": "String",
"ArrivalTimeFormatted": "String",
"ChangeOfDayFormatted": "String",
"ServiceCode": "String",
"StartDate": "String",
"EndDate": "String",
"TicketNumber": "String",
"VendorLocators": "String",
"EquipmentCode": "String",
"Equipment": "String"
}
],
"ItineraryFormatted": "String"
}
],
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | BookingDetailsByRefItemResponse |
FindBookings
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/FindBookings \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/FindBookings");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/FindBookings', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/FindBookings");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /FindBookings
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| RecordLocator | query | string | true | Record locator |
| AirlineLocator | query | string | false | Airline locator |
| Surname | query | string | false | Surname |
| CustomField | query | string | false | Comma Delimited List of Custom Fields |
| OwningCompanyCode | query | string | false | Comma Delimited List of Owning Company Codes |
| UserName | query | string | false | UserName in form of an email address |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": {
"Item": {
"AgentivityRef": 0,
"RecordLocator": "String",
"PNRCreationDate": "/Date(-62135596800000-0000)/",
"Passengers": "String",
"Account": "String",
"OwningAgencyLocationID": "String",
"OwningConsultant": "String",
"OwningConsultantID": "String",
"TravelDate": "/Date(-62135596800000-0000)/",
"PnrTicketed": "String",
"PnrCancelled": "String",
"AirSegBookingCodeList": "String",
"IsFrequentFlyer": false,
"ItineraryChanges": 0,
"CustomFields": [
{
"FieldName": "String",
"FieldValue": "String"
}
]
}
},
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | FindBookingsItemResponse |
GetBookingsCreated
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/BookingsCreated \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/BookingsCreated");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/BookingsCreated', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/BookingsCreated");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /BookingsCreated
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| IncludeCTFields | query | string | false | Includes CTCM and CTCE in results |
| Account | query | string | false | Comma Delimited List of Accounts |
| HasAccount | query | boolean | false | Return only PNRs with/without an account |
| HasEmail | query | boolean | false | Return only PNRs with/without an email address |
| HasHotel | query | boolean | false | Return only PNRs with/without a hotel |
| HasMobile | query | boolean | false | Return only PNRs with/without a mobile number |
| IncludeItinerary | query | boolean | false | Include Itinerary in the response |
| IsVip | query | boolean | false | Return only PNRs that are or are not flagged as VIP bookings |
| ItineraryFormatting | query | integer | false | Indicates the required formatting: 0=None(Default); 1= Html; 2 = Chart |
| MinSegments | query | integer | false | Return only PNRs that equal or exceed a certain number of segments |
| MissingEmailOrPhone | query | boolean | false | Return only PNRs with/without an email address OR a mobile number |
| PNRCreationDateEnd | query | string | true | Date in format YYYYMMDD |
| PNRCreationDateStart | query | string | true | Date in format YYYYMMDD |
| PNRCancelled | query | boolean | false | Return only PNRs that are cancelled(Y)/not cancelled(N)/all |
| OwningAgencyLocationID | query | string | false | Comma Delimited List of PCCs |
| OwningCompanyCode | query | string | false | Comma Delimited List of Owning Company Codes |
| UserName | query | string | false | UserName in form of an email address |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| VendorLocators | query | string | false | Comma separated list of vendor locators |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": [
{
"AgentivityRef": 0,
"RecordLocator": "String",
"PNRCreationDate": "/Date(-62135596800000-0000)/",
"OwningAgencyLocationID": "String",
"Account": "String",
"OwningConsultantID": "String",
"OwningConsultant": "String",
"PNRTicketed": "String",
"PNRTicketedDate": "/Date(-62135596800000-0000)/",
"PNRCancelled": "String",
"TravelDate": "/Date(-62135596800000-0000)/",
"CancelledTravelDate": "/Date(-62135596800000-0000)/",
"Passengers": "String",
"Mobile": "String",
"Emails": "String",
"DestinationCount": 0,
"IsVip": false,
"CTCM": "String",
"CTCE": "String",
"Itinerary": [
{
"SegmentType": "String",
"SegmentNbr": 0,
"BoardPoint": "String",
"OffPoint": "String",
"OperatorCode": "String",
"OperatorService": "String",
"SegmentStatus": "String",
"DepartureTimeFormatted": "String",
"ArrivalTimeFormatted": "String",
"ChangeOfDayFormatted": "String",
"ServiceCode": "String",
"StartDate": "String",
"EndDate": "String",
"TicketNumber": "String",
"VendorLocators": "String",
"EquipmentCode": "String",
"Equipment": "String"
}
],
"ItineraryFormatted": "String",
"CarbonTonnage": 0
}
],
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | GetBookingsCreatedItemResponse |
GetBookingsCancelled
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/BookingsCancelled \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/BookingsCancelled");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/BookingsCancelled', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/BookingsCancelled");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /BookingsCancelled
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| Account | query | string | false | Comma Delimited List of Accounts |
| PnrCancellationDateStart | query | string | true | Date in format YYYYMMDD |
| PnrCancellationDateEnd | query | string | false | Date in format YYYYMMDD |
| IncludeItinerary | query | bool | false | |
| ItineraryFormatting | query | FormattingStyle | false | |
| Repeat | query | bool | false | |
| OwningCompanyCode | query | string | false | Comma Delimited List of Owning Company Codes |
| UserName | query | string | false | UserName in form of an email address |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| VendorLocators | query | string | false | Comma separated list of vendor locators |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": {
"Item": {
"AgentivityRef": 0,
"RecordLocator": "String",
"PNRCreationDate": "/Date(-62135596800000-0000)/",
"OwningAgencyLocationID": "String",
"Passengers": "String",
"Account": "String",
"OwningConsultant": "String",
"PNRTicketed": "String",
"Itinerary": [
{
"SegmentType": "String",
"SegmentNbr": 0,
"BoardPoint": "String",
"OffPoint": "String",
"OperatorCode": "String",
"OperatorService": "String",
"SegmentStatus": "String",
"DepartureTimeFormatted": "String",
"ArrivalTimeFormatted": "String",
"ChangeOfDayFormatted": "String",
"ServiceCode": "String",
"StartDate": "String",
"EndDate": "String",
"TicketNumber": "String",
"VendorLocators": "String",
"EquipmentCode": "String",
"Equipment": "String"
}
],
"ItineraryFormatted": "String",
"PNRCancelledDate": "/Date(-62135596800000-0000)/"
}
},
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | GetBookingsCancelledItemResponse |
BookingsCountsPerConsultant
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/BookingsCountsPerConsultant \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/BookingsCountsPerConsultant");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/BookingsCountsPerConsultant', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/BookingsCountsPerConsultant");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /BookingsCountsPerConsultant
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| PNRCreationDateStart | query | string | true | Date in format YYYYMMDD |
| PNRCreationDateEnd | query | string | true | Date in format YYYYMMDD |
| OwningAgencyLocationID | query | string | false | Comma Delimited List of PCCs |
| Team | query | string | false | Team name |
| OwningConsultantID | query | string | false | Comma delimited list of owning consultants ids |
| Qualifier | query | string | false | Qualifier |
| OnlySummary | query | boolean | false | List only summary if selected true |
| IncludeItinerary | query | boolean | false | Include Itinerary in the response |
| ItineraryFormatting | query | integer | false | Indicates the required formatting: 0=None(Default); 1= Html; 2 = Chart |
| Repeat | query | string | false | Repeat |
| OwningCompanyCode | query | string | false | Comma Delimited List of Owning Company Codes |
| UserName | query | string | false | UserName in form of an email address |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| VendorLocators | query | string | false | Comma separated list of vendor locators |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": {
"Item": {
"OwningConsultant": "String",
"OwningConsultantID": "String",
"TotalBookings": 0,
"CancelledCount": 0,
"ContainingAirCount": 0,
"GDSTicketedCount": 0,
"LowCostCarrierCount": 0,
"AssumedTicketedCount": 0,
"ChurnCount": 0,
"QualifierCount": 0,
"CountryCount": "String",
"RoboticTicketingCount": 0,
"RecordLocator": "String",
"Account": "String",
"TravelDate": "/Date(-62135596800000-0000)/",
"Remark": "String",
"Passangers": "String",
"AgentivityRef": 0,
"PNRCreationDate": "/Date(-62135596800000-0000)/",
"AgentInitials": "String",
"Itinerary": [
{
"SegmentType": "String",
"SegmentNbr": 0,
"BoardPoint": "String",
"OffPoint": "String",
"OperatorCode": "String",
"OperatorService": "String",
"SegmentStatus": "String",
"DepartureTimeFormatted": "String",
"ArrivalTimeFormatted": "String",
"ChangeOfDayFormatted": "String",
"ServiceCode": "String",
"StartDate": "String",
"EndDate": "String",
"TicketNumber": "String",
"VendorLocators": "String",
"EquipmentCode": "String",
"Equipment": "String"
}
],
"ItineraryFormatted": "String"
}
},
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | BookingsCountsPerConsultantItemResponse |
Passenger
GetPassengerDepartures
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/PassengerDepartures \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/PassengerDepartures");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/PassengerDepartures', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/PassengerDepartures");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /PassengerDepartures
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| Account | query | string | false | Comma Delimited List of Accounts |
| ClassName | query | string | false | Name of the class |
| Carrier | query | string | false | Carrier name |
| TravelDateStart | query | string | true | Date in format YYYYMMDD |
| TravelDateEnd | query | string | false | Date in format YYYYMMDD |
| WithSMS | query | boolean | false | Include items with SMS sent in response |
| AddVouchers | query | boolean | false | Add transfers |
| AddTransfers | query | boolean | false | Add transfers |
| IncludeItinerary | query | boolean | false | Include Itinerary in the response |
| IsVip | query | boolean | false | Return only PNRs that are or are not flagged as VIP bookings |
| ShowSMS | query | boolean | false | Show SMS |
| ItineraryFormatting | query | integer | false | Indicates the required formatting: 0=None(Default); 1= Html; 2 = Chart |
| OwningCompanyCode | query | string | false | Comma Delimited List of Owning Company Codes |
| UserName | query | string | false | UserName in form of an email address |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| VendorLocators | query | string | false | Comma separated list of vendor locators |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": {
"Item": {
"AgentivityRef": 0,
"RecordLocator": "String",
"OwningAgencyLocationID": "String",
"OwningConsultant": "String",
"OwningConsultantID": "String",
"GdsCode": "String",
"Passenger": "String",
"Account": "String",
"TravelDate": "/Date(-62135596800000-0000)/",
"TicketedStatusCode": "String",
"TicketedStatus": "String",
"SupplierReference": "String",
"SMS": "String",
"Vouchers": "String",
"Transfers": "String",
"IsVip": false,
"PhoneNbr": "String",
"EmailAddress": "String",
"DestinationCities": "String",
"DestinationCountries": "String",
"Connections": "String",
"Itinerary": [
{
"SegmentType": "String",
"SegmentNbr": 0,
"BoardPoint": "String",
"OffPoint": "String",
"OperatorCode": "String",
"OperatorService": "String",
"SegmentStatus": "String",
"DepartureTimeFormatted": "String",
"ArrivalTimeFormatted": "String",
"ChangeOfDayFormatted": "String",
"ServiceCode": "String",
"StartDate": "String",
"EndDate": "String",
"TicketNumber": "String",
"VendorLocators": "String",
"EquipmentCode": "String",
"Equipment": "String"
}
],
"ItineraryFormatted": "String"
}
},
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | GetPassengerDeparturesItemResponse |
GetPassengerArrivals
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/PassengerArrivals \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/PassengerArrivals");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/PassengerArrivals', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/PassengerArrivals");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /PassengerArrivals
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| Account | query | string | false | Comma Delimited List of Accounts |
| ArrivalDateStart | query | string | true | Date in format YYYYMMDD |
| ArrivalDateEnd | query | string | false | Date in format YYYYMMDD |
| OwningCompanyCode | query | string | false | Comma Delimited List of Owning Company Codes |
| UserName | query | string | false | UserName in form of an email address |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": {
"Item": {
"AgentivityRef": 0,
"RecordLocator": "String",
"PNRCreationDate": "/Date(-62135596800000-0000)/",
"OwningAgencyLocationID": "String",
"OwningConsultant": "String",
"OwningConsultantID": "String",
"Passenger": "String",
"Account": "String",
"TravelDate": "/Date(-62135596800000-0000)/",
"ArrivalDate": "/Date(-62135596800000-0000)/",
"DaysAway": 0,
"DestinationCountries": "String",
"MobileList": "String",
"EmailList": "String",
"CabinsNames": "String",
"PNRTicketedDate": "/Date(-62135596800000-0000)/"
}
},
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | GetPassengerArrivalsItemResponse |
GetPassengerLocationsByAirport
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/PassengerLocationsByAirport \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/PassengerLocationsByAirport");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/PassengerLocationsByAirport', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/PassengerLocationsByAirport");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /PassengerLocationsByAirport
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| AirportCode | query | string | true | Airport code |
| DateEnd | query | string | true | Date in format YYYYMMDD |
| DateStart | query | string | true | Date in format YYYYMMDD |
| InTransitOnly | query | string | false | Include passengers that are in transit only in response |
| Account | query | string | false | Comma Delimited List of Accounts |
| CustomField | query | string | false | Comma Delimited List of Custom Fields |
| RepeatByPassenger | query | boolean | false | Option to place passenger names on separate lines in the downloadable result (spreadsheet) |
| OwningCompanyCode | query | string | false | Comma Delimited List of Owning Company Codes |
| UserName | query | string | false | UserName in form of an email address |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| VendorLocators | query | string | false | Comma separated list of vendor locators |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": {
"Item": {
"RecordLocator": "String",
"TravelDate": "/Date(-62135596800000-0000)/",
"DepartureDate": "/Date(-62135596800000-0000)/",
"BoardPoint": "String",
"OffPoint": "String",
"PnrTicketed": "String",
"Account": "String",
"Consultant": "String",
"PaxList": "String",
"PhoneNbr": "String",
"EmailAddress": "String",
"DestinationCities": "String",
"Connections": "String",
"CarrierCodes": "String",
"AgentivityRef": 0,
"HotelsNames": "String",
"FlightNumbers": "String",
"OwningAgencyLocationID": "String",
"IataCodes": "String",
"Itinerary": [
{
"SegmentType": "String",
"SegmentNbr": 0,
"BoardPoint": "String",
"OffPoint": "String",
"OperatorCode": "String",
"OperatorService": "String",
"SegmentStatus": "String",
"DepartureTimeFormatted": "String",
"ArrivalTimeFormatted": "String",
"ChangeOfDayFormatted": "String",
"ServiceCode": "String",
"StartDate": "String",
"EndDate": "String",
"TicketNumber": "String",
"VendorLocators": "String",
"EquipmentCode": "String",
"Equipment": "String"
}
],
"ItineraryFormatted": "String",
"CustomFields": [
{
"FieldName": "String",
"FieldValue": "String"
}
],
"DepartureDateTime": "/Date(-62135596800000-0000)/",
"CurrentArrivalDateTime": "/Date(-62135596800000-0000)/",
"SegmentType": "String",
"AirSegmentNbr": "String",
"PNRCreationDate": "/Date(-62135596800000-0000)/",
"TicketNumbers": [
"String"
],
"VendorLocators": [
{
"CarrierCode": "String",
"VendorLocator": "String"
}
],
"PassengerInfo": [
{
"FirstName": "String",
"LastName": "String",
"PassengerDataId": 0,
"Tickets": [
{
"Number": "String",
"Type": "String"
}
]
}
]
}
},
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | GetPassengerLocationsByAirportItemResponse |
GetPassengerLocationsByFlightNumber
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/PassengerLocationsByFlightNumber \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/PassengerLocationsByFlightNumber");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/PassengerLocationsByFlightNumber', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/PassengerLocationsByFlightNumber");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /PassengerLocationsByFlightNumber
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| Account | query | string | false | Comma Delimited List of Accounts |
| DepartureDateStart | query | string | true | Date in format YYYYMMDD |
| DepartureDateEnd | query | string | true | Date in format YYYYMMDD |
| CarrierCode | query | string | true | Two letter code for carrier |
| FlightNumber | query | string | true | Flight number without spaces |
| AllFutureDate | query | boolean | false | All future date |
| CustomField | query | string | false | Comma Delimited List of Custom Fields |
| OwningCompanyCode | query | string | false | Comma Delimited List of Owning Company Codes |
| UserName | query | string | false | UserName in form of an email address |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": {
"Item": {
"AgentivityRef": 0,
"RecordLocator": "String",
"PaxList": "String",
"OwningConsultantID": "String",
"Account": "String",
"DepartureDate": "/Date(-62135596800000-0000)/",
"BoardPoint": "String",
"OffPoint": "String",
"DepartureTime": "String",
"ArrivalTime": "String",
"ChangeOfDay": "String",
"EmailAddress": "String",
"PhoneNbr": "String",
"OwningAgencyLocationID": "String",
"IataCodes": "String",
"CustomFields": [
{
"FieldName": "String",
"FieldValue": "String"
}
],
"PNRCreationDate": "/Date(-62135596800000-0000)/",
"TicketNumbers": [
"String"
],
"VendorLocators": [
{
"CarrierCode": "String",
"VendorLocator": "String"
}
]
}
},
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | GetPassengerLocationsByFlightNumberItemResponse |
Segments
CarSegmentsByDate
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/CarSegmentsByDate \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/CarSegmentsByDate");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/CarSegmentsByDate', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/CarSegmentsByDate");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /CarSegmentsByDate
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| SegmentType | query | string | false | Type of segment |
| DateStart | query | string | true | Date in format YYYYMMDD |
| DateEnd | query | string | true | Date in format YYYYMMDD |
| DateSearchType | query | string | false | Date search type option, a single character (T to search by segment start dates, C to search by booking creation dates). |
| OwningCompanyCode | query | string | false | Comma Delimited List of Owning Company Codes |
| UserName | query | string | false | UserName in form of an email address |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": {
"Item": {
"AgentivityRef": "String",
"RecordLocator": "String",
"OwningAgencyLocationID": "String",
"OwningConsultant": "String",
"Account": "String",
"Passengers": "String",
"PickUpDate": "/Date(-62135596800000-0000)/",
"DropOffDate": "/Date(-62135596800000-0000)/",
"CarVendorCode": "String",
"VendorName": "String",
"SegmentStatus": "String",
"AirportCode": "String",
"ConfirmationNbr": "String",
"CurrencyCode": "String",
"RateAmount": "String",
"NbrOfCars": "String",
"CarType": "String",
"ServiceInformation": "String",
"BRInformation": "String",
"CarSegmentType": "String",
"CreatingAgencyIata": "String",
"CityCode": "String",
"Text": "String",
"Vouchers": "String",
"CarRateCode": "String"
}
},
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | CarSegmentsByDateItemResponse |
AirSegmentsByDate
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/AirSegmentsByDate \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/AirSegmentsByDate");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/AirSegmentsByDate', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/AirSegmentsByDate");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /AirSegmentsByDate
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| DateStart | query | string | true | Date in format YYYYMMDD |
| DateEnd | query | string | true | Date in format YYYYMMDD |
| DateSearchType | query | string | false | Date search type option, a single character (T to search by segment start dates, C to search by booking creation dates). |
| OwningCompanyCode | query | string | false | Comma Delimited List of Owning Company Codes |
| UserName | query | string | false | UserName in form of an email address |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": {
"Item": {
"AgentivityRef": "String",
"RecordLocator": "String",
"PNRCreationDate": "/Date(-62135596800000-0000)/",
"OwningAgencyLocationID": "String",
"OwningConsultant": "String",
"Account": "String",
"Passengers": "String",
"DepartureDate": "/Date(-62135596800000-0000)/",
"DepartureTime": "String",
"ArrivalDate": "/Date(-62135596800000-0000)/",
"ArrivalTime": "String",
"CarrierCode": "String",
"BoardPoint": "String",
"OffPoint": "String",
"FlightNbr": "String",
"BookingCode": "String",
"CreatingAgencyIata": "String",
"SegmentStatus": "String"
}
},
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | AirSegmentsByDateItemResponse |
PNR
GetPNRSegments
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/PNRSegments \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/PNRSegments");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/PNRSegments', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/PNRSegments");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /PNRSegments
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| RecordLocator | query | string | true | Record locator |
| PNRCreationDate | query | string | false | Date in format YYYYMMDD |
| SegmentType | query | string | false | Type of segment |
| PassiveSegmentType | query | string | false | Type of passive segment |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": [
{
"Summary": {
"RecordLocator": "String",
"AirlineReferences": [
{
"Vendor": "String",
"VendorLocator": "String"
}
],
"Tickets": [
{
"TktNumber": "String",
"Passenger": {
"LastName": "String",
"FirstName": "String"
},
"Coupons": [
{
"CouponSequenceNbr": "String",
"CouponBoardPoint": "String",
"CouponOffPoint": "String",
"Carrier": "String",
"FlightNbr": "String",
"FlightDate": "String",
"FlightTime": "String"
}
]
}
]
},
"Segments": {
"AirSegments": [
{
"AirSegmentNbr": 0,
"SegmentStatus": "String",
"DepartureDate": "String",
"DepartureTime": "String",
"CarrierCode": "String",
"BoardPoint": "String",
"OffPoint": "String",
"FlightNbr": "String",
"BookingCode": "String",
"ArrivalTime": "String",
"ChangeOfDay": "String",
"ConnectionIndicator": "String",
"OperatingCarrierCode": "String",
"OperatingCarrierName": "String",
"JourneyTime": "String",
"NbrSeats": 0,
"SeatingData": [
{
"SeatLocation": "String",
"SeatStatusCode": "String"
}
]
}
],
"CarSegments": [
{
"CarSegmentNbr": 0,
"SegmentStatus": "String",
"PickUpDate": "String",
"PickUpTime": "String",
"AirportCode": "String",
"CarLocationCategory": "String",
"DropOffDate": "String",
"DropOffTime": "String",
"ConfirmationNbr": "String",
"CarVendorCode": "String",
"CarRateType": "String",
"CarRateCode": "String",
"CarType": "String",
"CarYieldManagementNbr": "String",
"RateAmount": "String",
"RateGuaranteeIndicator": "String",
"MilesKilometerIndicator": "String",
"DistanceAllowance": "String",
"DistanceRateAmount": "String",
"CurrencyCode": "String",
"NbrOfCars": 0
}
],
"HotelSegments": [
{
"HotelSegmentNbr": "String",
"StatusCode": "String",
"ArrivalDate": "String",
"DepartureDate": "String",
"PropertyName": "String",
"ConfirmationNbr": "String",
"Currency": "String",
"Rate": "String",
"RoomBookingCode": "String",
"NbrNights": 0,
"MultiLevelRateCode": "String",
"NbrRooms": 0,
"BookedInName": "String",
"ServiceInformation": "String",
"PropertyCityCode": "String",
"SegmentStatus": "String",
"HotelVendorCode": "String"
}
],
"PassiveSegments": [
{
"SegmentStatus": "String",
"StartDate": "String",
"DepartureDate": "String",
"NbrNights": "String",
"VendorCode": "String",
"CityCode": "String",
"SegmentType": "String",
"Text": "String",
"Passenger": "String",
"Address": "String",
"BookingReasonCode": "String",
"BookingSource": "String",
"CommissionInformation": "String",
"ConfirmationNumber": "String",
"RateCode": "String",
"RateQuoted": "String",
"RateAccessCode": "String",
"PropertyName": "String",
"PropertyNumber": "String",
"ServiceInformation": "String"
}
]
}
}
],
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | GetPNRSegmentsItemResponse |
Ticket
GetTicketCouponsByStatusCode
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/TicketCouponsByStatusCode \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/TicketCouponsByStatusCode");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/TicketCouponsByStatusCode', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/TicketCouponsByStatusCode");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /TicketCouponsByStatusCode
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| DateStart | query | string | true | Date in format YYYYMMDD |
| DateEnd | query | string | true | Date in format YYYYMMDD |
| TravAgntID | query | integer | false | Travel agent ID |
| Account | query | string | false | Comma Delimited List of Accounts |
| OwningAgencyLocationID | query | string | false | Comma Delimited List of PCCs |
| CouponCodeGroup | query | string | true | Coupon code group ("ALL OPEN") or any Coupon Status eg USED, OPEN |
| DateTracker | query | string | true | Date range type. A single character: I = Issue date, T = Travel date, E = Expiry date |
| Repeat | query | string | false | Repeat |
| NoActiveSegments | query | boolean | false | Lists only segments that are not active |
| IncludePartialMatches | query | boolean | false | Include partial matches |
| ShowMatchingCouponsOnly | query | boolean | false | Show Matching Coupons Only |
| PaxSurname | query | string | false | Pax surname |
| CarrierCode | query | string | false | Two letter code for carrier |
| ExcludedPlatingCarrier | query | string | false | Comma delimited list of 3-character plating carriers |
| OwningConsultantID | query | string | false | Id of the owning consultant |
| CacheGuid | query | string | false | Cache Guid |
| TravellerGUID | query | string | false | Agentivity Traveller GUID |
| RequestConsultantID | query | string | false | Request Consultant ID (sign on) |
| TravellerReference | query | integer | false | Traveller CRM ID or reference |
| CRM | query | string | false | The CRM Name |
| OwningCompanyCode | query | string | false | Comma Delimited List of Owning Company Codes |
| UserName | query | string | false | UserName in form of an email address |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": [
{
"CompanyName": "String",
"TktNumber": "String",
"RN": "String",
"AirTktSegId": "String",
"VndIssueDt": "/Date(-62135596800000-0000)/",
"RecordLocator": "String",
"Passenger": "String",
"TravAgntID": "String",
"OwningConsultantID": "String",
"FOPFare": "String",
"BaseFare": "String",
"FOP": "String",
"TotalTax": "String",
"Tax1Code": "String",
"Tax1Amt": "String",
"Tax2Code": "String",
"Tax2Amt": "String",
"Tax3Code": "String",
"Tax3Amt": "String",
"Tax4Code": "String",
"Tax4Amt": "String",
"Tax5Code": "String",
"Tax5Amt": "String",
"Account": "String",
"ExchangedForTicket": "String",
"CouponSequenceNbr": "String",
"Carrier": "String",
"BoardPoint": "String",
"OffPoint": "String",
"FlightDate": "/Date(-62135596800000-0000)/",
"FlightServiceClass": "String",
"FareBasis": "String",
"FlightCouponStatus": "String",
"DateLastChecked": "/Date(-62135596800000-0000)/",
"PCC": "String",
"AirlineCode": "String",
"OwningCompanyCode": "String",
"CreditCurrency": "String",
"CreditValue": 0,
"FlightServiceClassName": "String",
"FlownKM": 0,
"BAR": "String",
"PNRCreationDate": "/Date(-62135596800000-0000)/",
"AgentivityRef": 0,
"CustomFields": [
{
"FieldName": "String",
"FieldValue": "String"
}
]
}
],
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | GetTicketCouponsByStatusCodeItemResponse |
GetTicketsIssuedByNumber
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/TicketsIssuedByNumber \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/TicketsIssuedByNumber");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/TicketsIssuedByNumber', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/TicketsIssuedByNumber");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /TicketsIssuedByNumber
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| TktNumber | query | string | true | Ticket number |
| OwningCompanyCode | query | string | false | Comma Delimited List of Owning Company Codes |
| UserName | query | string | false | UserName in form of an email address |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": [
{
"RecordLocator": "String",
"TktNumber": "String",
"PlatingCarrier": "String",
"Passenger": "String",
"IATA": "String",
"OwningAgencyLocationID": "String",
"IssueDate": "/Date(-62135596800000-0000)/",
"ExpirationDate": "/Date(-62135596800000-0000)/",
"FOPFare": "String",
"PrintedCurrency": "String",
"TicketingAgentID": "String",
"TicketingAgent": "String"
}
],
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | GetTicketsIssuedByNumberItemResponse |
GetTicketsIssued
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/TicketsIssued \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/TicketsIssued");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/TicketsIssued', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/TicketsIssued");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /TicketsIssued
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| DateStart | query | string | true | Date in format YYYYMMDD |
| DateEnd | query | string | true | Date in format YYYYMMDD |
| IATA | query | string | false | IATA code |
| OwningAgencyLocationID | query | string | false | Comma Delimited List of PCCs |
| OwningCompanyCode | query | string | false | Comma Delimited List of Owning Company Codes |
| UserName | query | string | false | UserName in form of an email address |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": [
{
"RecordLocator": "String",
"TktNumber": "String",
"FOP": "String",
"Passenger": "String",
"Consultant": "String",
"RemarkText": "String",
"AirlineCode": "String",
"TravAgntID": "String",
"PCC": "String",
"PrintedCurrency": "String",
"FOPFare": "String",
"Date": "/Date(-62135596800000-0000)/",
"DueDate": "/Date(-62135596800000-0000)/",
"TicketingAgentID": "String",
"TicketingAgent": "String"
}
],
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | GetTicketsIssuedItemResponse |
Traveller
GetTravellersByCrm
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/TravellersByCRM \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/TravellersByCRM");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/TravellersByCRM', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/TravellersByCRM");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /TravellersByCRM
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| CrmCode | query | int | false | |
| CrmTravellerId | query | string | false | |
| OwningCompanyCode | query | string | false | Comma Delimited List of Owning Company Codes |
| UserName | query | string | false | UserName in form of an email address |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": [
{
"TravellerGUID": "String",
"FirstName": "String",
"LastName": "String",
"BAR": "String",
"MAR": "String",
"PAR": "String",
"Aliases": [
{
"FirstName": "String",
"LastName": "String"
}
],
"Accounts": [
{
"AccountID": "String",
"AccountName": "String",
"PNRStats": {
"PNRsCreatedPreviousThreeYears": 0
}
}
],
"BARS": [
{
"BAR": "String"
}
],
"MARS": [
{
"MAR": "String"
}
],
"PARS": [
{
"PAR": "String"
}
],
"PNRStats": {
"PNRsCreatedPreviousThreeYears": 0
}
}
],
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | GetTravellersByCrmItemResponse |
Hotel
GetHotelSegments
Code samples
# You can also use wget
curl -X GET https://api.agentivity.com/HotelSegments \
--header "X-AGENTIVTY-API-SIGNATURE: $apisig" --header "X-AGENTIVTY-API-DATE: $dateTime" --header "X-AGENTIVTY-API-USERNAME: $username" --header "CONTENT-TYPE: application/json"
var client = new RestClient("https://api.agentivity.com/HotelSegments");
var request = new RestRequest(Method.GET);
request.AddHeader("accept", "application/json");
request.AddHeader("X-AGENTIVTY-API-SIGNATURE", signature);
request.AddHeader("X-AGENTIVTY-API-DATE", dt);
request.AddHeader("X-AGENTIVTY-API-USERNAME", username);
IRestResponse response = client.Execute(request);
import urllib.request
headers = {
'ACCEPT': contenttype,
'CONTENT-TYPE': contenttype,
'X-AGENTIVTY-API-DATE': dt,
'X-AGENTIVTY-API-USERNAME': username,
'X-AGENTIVTY-API-SIGNATURE': signature,
}
req = urllib.request.Request('https://api.agentivity.com/HotelSegments', headers=headers)
with urllib.request.urlopen(req) as response:
response_text = response.read()
print(response_text)
URL obj = new URL("https://api.agentivity.com/HotelSegments");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("X-AGENTIVTY-API-SIGNATURE", signature);
con.setRequestProperty("X-AGENTIVTY-API-DATE", dt);
con.setRequestProperty("X-AGENTIVTY-API-USERNAME", username);
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
System.out.println(response.toString());
GET /HotelSegments
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| DateStart | query | string | true | Date in format YYYYMMDD |
| DateEnd | query | string | true | Date in format YYYYMMDD |
| Account | query | string | false | Comma Delimited List of Accounts |
| CityCode | query | string | false | 3 letter city code |
| WithNotepad | query | string | false | Include Notepad Entry: 1=Yes |
| OwningAgencyLocationID | query | string | false | Comma Delimited List of PCCs |
| OwningAgencyCountryCode | query | string | false | Comma Delimited List of CountryCodes |
| DateSearchType | query | string | false | 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). |
| IncludeCancelled | query | boolean | false | For HotelSegments By SegmentCreationDate |
| IsGDS | query | boolean | false | IsGDS=0 (bookings from Non-GDS eg Supplier Direct). IsGDS=1 (bookings from GDS). |
| IsPassive | query | string | false | IsPassive=0 (only include non-passive segments). IsPassive=1 (only include passive segments). |
| CustomField | query | string | false | Comma Delimited List of Custom Fields |
| OwningCompanyCode | query | string | false | Comma Delimited List of Owning Company Codes |
| UserName | query | string | false | UserName in form of an email address |
| Offset | query | string | false | Starting Record |
| Limit | query | string | false | Number of records to return (PageSize) |
| TotalRecords | query | string | false | Total Number of Records in a Full Reponse (if no paging) |
| ResponseRecords | query | string | false | Total Number of Records in this Reponse (on this page) |
| Accept | header | string | true | Accept Header |
Enumerated Values
| Parameter | Value |
|---|---|
| Accept | application/json |
Default Response
{
"ResponseMetadata": {
"Success": false,
"HasCache": false,
"HasPaging": false,
"CacheMetadata": {
"IsFromCache": false,
"CachedAt": "/Date(-62135596800000-0000)/",
"CacheExpiresAt": "/Date(-62135596800000-0000)/"
},
"PagingMetadata": {
"Offset": "String",
"Limit": "String",
"TotalRecords": 0,
"ResponseRecords": 0
}
},
"ResponseReport": {
"Item": {
"AgentivityRef": 0,
"PNRCreationDate": "/Date(-62135596800000-0000)/",
"HotelSegmentNbr": "String",
"RecordLocator": "String",
"OwningAgencyLocationID": "String",
"Account": "String",
"OwningConsultantID": "String",
"OwningConsultant": "String",
"StatusCode": "String",
"SegmentCreationDate": "/Date(-62135596800000-0000)/",
"ArrivalDate": "/Date(-62135596800000-0000)/",
"DepartureDate": "/Date(-62135596800000-0000)/",
"NbrNights": 0,
"VendorCode": "String",
"PropertyName": "String",
"PropertyPhoneNbr": "String",
"PropertyNbr": "String",
"PropertyAddress": "String",
"CityCode": "String",
"CityName": "String",
"CountryCode": "String",
"CountryName": "String",
"Passenger": "String",
"ConfirmationNbr": "String",
"RateAccessCode": "String",
"RoomBookingCode": "String",
"CurrencyCode": "String",
"RateAmount": "String",
"NbrRooms": 0,
"BookedInName": "String",
"ServiceInformation": "String",
"TotalAirSegs": "String",
"CreatingAgencyIata": "String",
"IsCommissionable": false,
"Commission": "String",
"IsPassive": false,
"CustomFields": [
{
"FieldName": "String",
"FieldValue": "String"
}
],
"HotelNotepad": "String",
"IsCancelled": false,
"CancellationReference": "String"
}
},
"ResponseError": {
"ErrorCode": "String",
"Message": "String",
"StatusCode": "String",
"VerboseMessage": "String"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| default | Default | Default response | GetHotelSegmentsItemResponse |
Other Capabilities
The transactions documented above cover the most common integrations we support. We hold considerably more data and reporting than what's listed here — grouped below by area, so you can see what's possible even where we haven't published the technical detail. Where you see get in touch, reach us there and we'll point you to the right transaction for your case.
Bookings & PNR
Our core booking data — creation, search, cancellation, and status tracking across the full booking lifecycle, including NDC-flagged bookings, outstanding actions, and corporate-level views across your account. If you're building booking search, a status dashboard, or need to track bookings through to ticketing or cancellation, get in touch and we'll point you to the right transaction for your case.
Traveller Location & Duty of Care
Real-time visibility into where your travellers are and where they're going — arrivals and departures by airport, city, country, or flight number, plus itinerary-change tracking and after-hours servicing activity. This is the data behind duty-of-care dashboards and traveller-tracking tools. If you're building traveller safety, notification, or itinerary-change tooling, contact us to discuss what's available.
Ticketing & Revenue
Beyond basic ticket lookup, we support ticketing-status tracking (coupon status, issuance, due dates), revenue reporting by airline or company, and tax breakdowns by issue date. If you're building revenue reconciliation, ticketing-compliance monitoring, or need to track tickets against a booking rather than a ticket number, contact us to discuss the right fit.
Flights, Hotels & Car Hire
We track detailed flight, hotel, and car hire activity — broken down by date, location, vendor, and account, including cancellations and hotels missing a rate code. If you need to reconcile this activity against your own systems, or build reporting broken down by property, carrier, or branch, get in touch and we'll point you to the right transaction for your case.
Consultant & Agency Performance
We hold detailed performance data at the consultant and agency level — activity volumes, productivity, hotel attachment rates, and unsold-inventory tracking. Because this data reflects how individual consultants and agencies are measured, access is discussed case by case rather than published outright — contact us if you're building a reporting or coaching tool that needs this level of detail.
