NAV Navigation
cURL C# Python Java

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:

When testing the API, it will help to know some of the following variables:

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

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:

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