Skip to main content

Overview

 

The SITA Airline Reference API helps developers who want to quickly integrate reliable and up-to-date airline information into their apps. It lets apps autocomplete partial user inputs or link airline names with data like IATA Codes or home countries. 

Features

The API comes with the following features:

  • Airline Match This service returns all the airlines matching your search term and is an excellent solution if you need to build an airline autocomplete field.  

Example of information included: name: "GoJet Airlines", iataCode: "G7", icaoCode: "GJS",alias: "GATEWAY", country: "United States", svcType: "PASSENGER"

This API can be used to answer:

  • What are the codes used by ATI for various airlines?
  • To which country does the airline belong?

SITA Airline Reference API

 

1 Revision History

DateVersionDescription

27 October 2022

1.0

Initial documentation creation

2 Introduction

The SITA Data API is a REST based service which provides information about Airports, Airlines and Aircrafts around the world.

To access the APIs you will need an API key. These can be obtained by creating an account on https://www.developer.aero/ and registering your interest for access to the API.

2.1 Authentication

To access the APIs an OAuth access token must be supplied in an Authorization header in the request. To obtain an OAuth token a request must be sent to the https://sitaopen.api.aero/data/oauth/token endpoint using the OAuth2 Client Credential flow.Use your API key as the client_id, and your consumer secret as the client_secret these should be base64 encoded in an Authorization header when sent to the OAuth endpoint.

Please note the OAuth tokens have an expiry of one hour after the token has been retrieved, after the token has expired you will need to re-issue a request to get a new token.

curl --location 'https://sitaopen.api.aero/data/oauth/token' \--header 'Authorization: Basic YWJjZGVmZ2hpamtsbW5vcC5xcnN0dXY='

You should then see your OAuth token in the response.

"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOJIUzI1NiJ9.eyJyZWZyZXNoX3Rva2VuX2V4cGlyZXNfaW4iOiIzNTk5Iiwic3ViIjoic2l0YSIsImFwaV9cm9kdWN0X2xpc3QiOiJbRE9UUy1GbGlnaHQtQ29ubmVjdGlvbi1JbnRlcm5hbF0iLCJpc3MiOiJ1cm46XC9cL2FwaWdlZS1lZdlLUpXVC1wb2xpY3ktdGVzdCIsImFwaV9hY2Nlc3NfdG9rZW4iOiIweXlIZHduSUdtOGo5WlN6WWtuYTBsWG9ZNTFvIiwiYXBpX3JlZnJlc2hfdG9rZW4iOiJraHNlaXN2T3JwSHBUd2NuUVRHdXdBdVdicXNpamNQTyIsImFwaV9zY29wZSI6IiIsImF1ZCI6ImFwaWdlZS1hcGkiLCJleHAiOj3MzAyOTI3MzIsImFwcF9pZCI6IjIxYzI5NTgyLTIwZTktNDkwMS1hNjExLTVkM2UwM2QxNzFkYiIsImV4cGlyZXNfaW4iOiIzNTk5IiwiaWF0IjoxNzMwMjg5MTMyLCJqdGkiOiI3ZmEzNTU4Mi0xNDhmLTRiMmEtODYxMS0wNWI4NDg5YjFjYmMifQ.g_dFH-08DGADOX9HIk7wzX5edxXejVsnCen27A25TQ0"

Once an access token has been obtained, it can be placed in the Authorization HTTP header as a bearer token, for example:

curl --location 'https://sitaopen.api.aero/data/v1/airlines/AA' \--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOJIUzI1NiJ9.eyJyZWZyZXNoX3Rva2VuX2V4cGlyZXNfaW4iOiIzNTk5Iiwic3ViIjoic2l0YSIsImFwaV9cm9kdWN0X2xpc3QiOiJbRE9UUy1GbGlnaHQtQ29ubmVjdGlvbi1JbnRlcm5hbF0iLCJpc3MiOiJ1cm46XC9cL2FwaWdlZS1lZdlLUpXVC1wb2xpY3ktdGVzdCIsImFwaV9hY2Nlc3NfdG9rZW4iOiIweXlIZHduSUdtOGo5WlN6WWtuYTBsWG9ZNTFvIiwiYXBpX3JlZnJlc2hfdG9rZW4iOiJraHNlaXN2T3JwSHBUd2NuUVRHdXdBdVdicXNpamNQTyIsImFwaV9zY29wZSI6IiIsImF1ZCI6ImFwaWdlZS1hcGkiLCJleHAiOj3MzAyOTI3MzIsImFwcF9pZCI6IjIxYzI5NTgyLTIwZTktNDkwMS1hNjExLTVkM2UwM2QxNzFkYiIsImV4cGlyZXNfaW4iOiIzNTk5IiwiaWF0IjoxNzMwMjg5MTMyLCJqdGkiOiI3ZmEzNTU4Mi0xNDhmLTRiMmEtODYxMS0wNWI4NDg5YjFjYmMifQ.g_dFH-08DGADOX9HIk7wzX5edxXejVsnCen27A25TQ0'

2.2 Security

  • All incoming requests will be REST over HTTPS.
  • Users are authenticated using their OAuth token.
  • Certain response payload elements will be filtered based on permissions associated with their token.

2.3 Rate Limiting

All incoming requests are subject to a rate limiting restriction. The following headers are included in HTTP responses:

HeaderDescription

X-RateLimit-Limit

The total number of requests allowed in the current time window

X-RateLimit-Remaining

The number of requests left for the current time window

X-RateLimit-Policy

The policy describing how many request per time window are allowed

X-RateLimit-Reset

The number of seconds remaining in the current time window. Header not displayed after rate limit has been exceeded

retry-after

The EPOCH timestamp at which the current rate limit window resets. Header only displayed after rate limit has been exceeded

3 SITA Airline Reference API

The SITA Airline Reference API is a REST based service which provides information about Airlines around the world.

3.1 Resources

This section describes the SITA Airline Reference API.

Detailed API structure, example requests and responses, JSON schema for request (where appropriate) and responses, and error response codes and formats are included.

3.2 Airline

3.2.1 Get All Airlines

Request headers
NameDescription

Content-Type

The Content-Type of this request.

Authorization

Authorization header that contains the access token.

Response fields
PathTypeDescription

airlines[].icaoCode

String

ICAO Airline code

airlines[].alias

String

Airline Alias code

airlines[].country

String

Airline’s country

success

Boolean

Indicates if request was correctly processed

airlines[]

Array

List of existing Airlines

airlines[].name

String

Airline name

airlines[].iataCode

String

IATA Airline code

Curl request
$ curl 'https://data-qa.api.aero/v1/airlines' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer eyJkb2N1bWVudGF0aW9uIiwidG9rZW4ifQ...'
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 326
{
  "success" : true,
  "airlines" : [ {
    "name" : "Virgin Australia",
    "iataCode" : "VA",
    "icaoCode" : "VOZ",
    "alias" : "VIRGIN",
    "country" : "Australia"
  }, {
    "name" : "Copa Airlines",
    "iataCode" : "CM",
    "icaoCode" : "CMP",
    "alias" : "COPA",
    "country" : "Panama"
  } ]
}

3.2.2 Get Airline by Code

Path parameters
Table 1. /v1/airlines/{airlineCode}
ParameterDescription

airlineCode

Valid IATA Airline Code

Request headers
NameDescription

Content-Type

The Content-Type of this request.

Authorization

Authorization header that contains the access token.

Response fields
PathTypeDescription

airlines[].icaoCode

String

ICAO Airline code

airlines[].alias

String

Airline Alias code

airlines[].country

String

Airline’s country

success

Boolean

Indicates if request was correctly processed

airlines[]

Array

List of existing Airlines

airlines[].name

String

Airline name

airlines[].iataCode

String

IATA Airline code

Curl request
$ curl 'https://data-qa.api.aero/v1/airlines/VA' -i -X GET \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer eyJkb2N1bWVudGF0aW9uIiwidG9rZW4ifQ...'
HTTP response
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 189
{
  "success" : true,
  "airlines" : [ {
    "name" : "Virgin Australia",
    "iataCode" : "VA",
    "icaoCode" : "VOZ",
    "alias" : "VIRGIN",
    "country" : "Australia"
  } ]
}

4 Error Response

4.1 Response fields

PathTypeDescription

errors

Object

Object that holds the error information

errors.error[].description

String

Error Description

errors.error[]

Array

Array of errors

errors.error[].invalidParam

String

Indicates the invalid query parameter

errors.error[].code

Number

API Internal Error Code

4.2 HTTP Response

HTTP/1.1 400 Bad Request
Content-Type: application/json
Content-Length: 159
{
  "errors" : {
  "error" : [ {
  "description" : "Error Description",
  "code" : 9999,
  "invalidParam" : "parameterName"
  } ]
  }
}

5 Appendix A Airline Reference API Use Cases

Scenario:

As an API user I want to make a request to the Airline Reference API to return data for a specific airline

Request:

GET /data/v1/airlines/KL

Response:

Returns data for the airline KL

Scenario:

As an API user I want to make a request to the Airline Reference API to return data for all airlines

Request:

GET /data/v1/airlines

Response:

Returns data for all airlines

Scenario:

As an API user I want to make a request to the Airline Reference API to match airlines by name or by code (IATA or ICAO)

Request:

GET /data/v1/airlines/match/EI

Response:

Checks for airline with a name/code of EI and returns its data

 

 

Contact Us

For subscription and sales queries, please contact:

Product Inquiries

Contact Us

 

For any technical queries and support, please contact:

Technical Support Team

Contact Us

 

contact-icon

Do you have a question? We are here, ready to help

Get in touch

About us

We are the world's leading specialist in air transport communications and IT solutions. 

 

bottom navigation SITA logo