Sourced from the original:
The Live API is our HTTP API used for requesting data from Infinite Flight Servers. Current features include:
- List available servers for pilots and ATC in-game.
- List active flights for each server.
- List active ATC for each server.
- Retrieve flight plans for each flight.
- Retrieve stats for users.
An API key is required to use the Live API. Contact hello@infiniteflight.com to let us know what you plan on building and to request a key.
The Live API uses HTTP and the endpoints require you to make a GET or POST request to the endpoint URL. See individual endpoint documentation for specifics
-
All apps are required to have a timeout feature if the app isn’t being used. We don’t want users to have the app running for hours if no-one is looking. If no action is taken for 15 minutes, have your apps stop downloading new content unless the user presses a button (FlightRadar24 does this on their site).
-
No permanent storing of data retrieved via the API is permitted. (You cannot keep the data in your own database). Caching is permitted.
If you need additional functionality from the API, please contact us.
This documentation is aimed at someone with knowledge of:
- HTTP
- JSON
- Infinite Flight System (Grades, Servers, etc.)
If you are not knowledgeable in these areas, you are of course welcome to browse the documentation. You can also check out these resources to help you learn.
Retrieve active sessions (servers) in Infinite Flight.
GET https://api.infiniteflight.com/public/v2/sessions
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
{
"errorCode": 0,
"result": [
{
"maxUsers": 1000,
"id": "89573c7f-d398-4281-bcc0-3e9b7f6b8492",
"name": "Sample Server",
"userCount": 187,
"type": 0
}
]
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
[SessionInfo] | Array of SessionInfo objects |
Name | Type | Description |
---|---|---|
id |
string | The unique identifier for the server. Use this to request flights and ATC data |
name |
string | Name of the server |
maxUsers |
integer | Maximum number of users the server can accept |
userCount |
integer | Connected users to the server |
type |
integer | Enum: "Unrestricted = 0" , "Restricted = 1" |
Retrieve a list of all flights for a session.
GET https://api.infiniteflight.com/public/v2/sessions/{sessionId}/flights
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
Name | Located in | Description | Required | Schema |
---|---|---|---|---|
sessionId |
path | ID of the session returned from the Sessions endpoint | Yes | string (uuid) |
{
"errorCode": 0,
"result": [
{
"username": "Cameron",
"callsign": "EC-CAM",
"latitude": 30.123479009207056,
"longitude": 31.413340256981044,
"altitude": 597.8003749797689,
"speed": 185.3844049009562,
"verticalSpeed": 2167.31591796875,
"track": 162.13836669921875,
"lastReport": "2020-10-02 00:46:19Z",
"flightId": "348d1ba8-1e60-48ca-8278-42f019147de8",
"userId": "3f8b28bf-bbb1-4024-80ae-2a0ea9b30685",
"aircraftId": "de510d3d-04f8-46e0-8d65-55b888f33129",
"liveryId": "c875c0e9-19c2-420d-8fb4-32c151bd797c",
"heading": 159.33542,
"virtualOrganization": "IFATC [IFATC]"
}
]
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
[FlightEntry] | Array of FlightEntry objects |
Name | Type | Description |
---|---|---|
flightId |
string (uuid) | Unique identifier for the flight |
userId |
string (uuid) | Unique identifier for the user |
aircraftId |
string (uuid) | Unique identifier for the aircraft type |
liveryId |
string (uuid) | Unique identifier for the livery and aircraft combination. |
username |
string | The user's forum username if the account is linked. If the account isn't linked, this will be null |
virtualOrganization |
string | The virtual organization of the user's forum account if linked. Can be null if not set |
callsign |
string | Callsign for the flight |
latitude |
double | Current decimal latitude of the aircraft |
longitude |
double | Current decimal longitude of the aircraft |
altitude |
double | Current altitude of the aircraft in feet |
speed |
double | Current groundspeed of the aircraft in knots |
verticalSpeed |
double | Current vertical speed of the aircraft in ft/min |
track |
double | Track of the aircraft in degrees |
heading |
float | Heading of the aircraft in degrees |
lastReport |
string | Last position report time of the flight in the following format: YYYY-MM-DD HH:mm:ssZ |
Retrieve the flown route of a specific flight with position, altitude, speed and track information at different points in time.
Please note, this is currently only supported on the Expert Server and Training Server.
GET https://api.infiniteflight.com/public/v2/sessions/{sessionId}/flights/{flightId}/route
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
Name | Located in | Description | Required | Schema |
---|---|---|---|---|
flightId |
path | ID of the flight. The flight must be in an active session. | Yes | string (uuid) |
{
"errorCode": 0,
"result": [
{
"latitude": 25.52992361245416,
"longitude": -80.33701239710909,
"altitude": 18429.91132829714,
"track": 75.00002,
"groundSpeed": 194.6716372048416,
"date": "2021-01-06T16:20:27.3275657Z"
},
{
"latitude": 25.59595843191219,
"longitude": -79.96882929194611,
"altitude": 27448.993829140254,
"track": 77.0936,
"groundSpeed": 229.58654094765924,
"date": "2021-01-06T16:23:27.4572883Z"
},
{
"latitude": 25.621774462118506,
"longitude": -79.56246802075516,
"altitude": 30999.01751208178,
"track": 110.30767,
"groundSpeed": 235.4484678810845,
"date": "2021-01-06T16:26:27.5268907Z"
}
]
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
[PositionReport] | Array of PositionReport objects |
Name | Type | Description |
---|---|---|
latitude |
double | Decimal latitude of the aircraft at this position. |
longitude |
double | Decimal longitude of the aircraft at this position. |
altitude |
double | Altitude of the aircraft in feet. |
track |
double | Track / Course of aircraft in degrees |
groundSpeed |
double | Ground speed of the aircraft in knots |
date |
string | Position report time of the flight in the following format: YYYY-MM-DD HH:mm:ssZ |
Retrieve the flight plan for a specific active flight.
GET https://api.infiniteflight.com/public/v2/sessions/{sessionId}/flights/{flightId}/flightplan
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
Name | Located in | Description | Required | Schema |
---|---|---|---|---|
flightId |
path | ID of the flight. The flight must be in an active session and have a filed flight plan. | Yes | string (uuid) |
{
"errorCode": 0,
"result": {
"flightPlanId": "4a57de08-a3b1-48ba-a081-adeff0a5b503",
"flightId": "0b8cc273-d97d-4223-afac-907d09d8ca8b",
"waypoints": [
"AMAHE",
"L12R"
],
"lastUpdate": "2021-01-06 15:35:04Z",
"flightPlanItems": [
{
"name": "AMAHE",
"type": 0,
"children": null,
"identifier": null,
"altitude": -1,
"location": {
"latitude": 26.92723722,
"longitude": -77.47139889,
"altitude": 0
}
},
{
"name": "L12R",
"type": 2,
"children": [
{
"name": "ZESTY",
"type": 0,
"children": null,
"identifier": "ZESTY",
"altitude": 4000,
"location": {
"latitude": 44.97196917,
"longitude": -93.429735,
"altitude": 0
}
},
{
"name": "RW12R",
"type": 0,
"children": null,
"identifier": "RW12R",
"altitude": -1,
"location": {
"latitude": 44.887794494628906,
"longitude": -93.23413848876953,
"altitude": 0
}
}
],
"identifier": "L12R",
"altitude": 0,
"location": {
"latitude": 0,
"longitude": 0,
"altitude": 0
}
}
]
}
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
[FlightPlanInfo] | Array of FlightPlanInfo objects |
Name | Type | Description |
---|---|---|
flightPlanId |
string (uuid) | Unique identifier for the flight plan |
flightId |
string (uuid) | Unique identifier for the flight. Associate with the response from the Get Flights endpoint |
waypoints |
[string] | Deprecated. An array of waypoint names. You can correlate these with data from the Airport Editing Project |
lastUpdate |
string | Last report time of the flight plan in the following format: YYYY-MM-DD HH:mm:ssZ |
flightPlanItems |
[FlightPlanItem] | An array of FlightPlanItems which contain waypoint and procedure data for points in a flight plan. |
Name | Type | Description |
---|---|---|
name |
string | Name of the waypoint or the procedure. In the children array, this is the name of a waypoint inside a procedure. |
type |
integer | Type of procedure for this item. Only use this if the FlightPlanItem's children field is populated and not null. Enum: "Sid = 0" , "STAR = 1" , "Approach = 2" , "Track = 3" , "Unknown = 5" |
children |
[FlightPlanItem] | An array of FlightPlanItems containing waypoint information about a procedure. Only present if this item defines a procedure (SID/STAR/Approach/Track). If not, assume this is a Fix/VOR/Custom User Waypoint. |
identifier |
string | Identifier for the waypoint or the procedure. This is not unique. |
altitude |
integer | The altitude in feet for this waypoint. This is optionally defined by the user and defaults to -1 if not set. |
location |
Coordinate | A Coordinate object defining the position of this waypoint. |
Name | Type | Description |
---|---|---|
latitude |
double | Current decimal latitude of the aircraft |
longitude |
double | Current decimal longitude of the aircraft |
altitude |
double | Current decimal altitude of the aircraft |
Retrieve active Air Traffic Control frequencies for a session
GET https://api.infiniteflight.com/public/v2/sessions/{sessionId}/atc
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
Name | Located in | Description | Required | Schema |
---|---|---|---|---|
sessionId |
path | ID of the session returned from the Sessions endpoint | Yes | string (uuid) |
{
"errorCode": 0,
"result": [
{
"frequencyId": "c2d7decc-2803-c905-5d88-81bc07626b1f",
"userId": "3f8b28bf-bbb1-4024-80ae-2a0ea9b30685",
"username": "Cameron",
"virtualOrganization": null,
"airportName": "LEPA",
"type": 1,
"latitude": 39.551575,
"longitude": 2.736811,
"startTime": "2020-10-02 15:47:25Z"
}
]
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
[ActiveATCFacility] | Array of ActiveATCFacility objects |
Name | Type | Description |
---|---|---|
frequencyId |
string (uuid) | Unique identifier for the open frequency |
userId |
string (uuid) | Unique identifier for the user controlling the frequency |
username |
string | The user's forum username if the account is linked. If the account isn't linked, this will be null |
virtualOrganization |
string | (not currently in use) |
airportName |
string | The 4-character ICAO identifier for the airport. null for center |
type |
integer | The type of frequency opened - not all of these are in use. Enum: "Ground = 0" , "Tower = 1" , "Unicom = 2" , "Clearance = 3" , "Approach = 4" , "Departure = 5" , "Center = 6" , "ATIS = 7" , "Aircraft = 8" , "Recorded = 9" , "Unknown = 10" , "Unused = 11" |
latitude |
float | Decimal latitude of the airport |
longitude |
float | Decimal longitude of the airport |
startTime |
string | Time at which the frequency was opened, in the following format: YYYY-MM-DD HH:mm:ssZ |
Retrieve user statistics for up to 25 users at once, including their grade, flight time and username.
POST https://api.infiniteflight.com/public/v2/users
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
Request Content-Type: application/json
Name | Located in | Description | Required | Schema |
---|---|---|---|---|
userIds |
POST request body | An array of user ID strings retrieved from another endpoint | No\* | [string (uuid)] |
discourseNames |
POST request body | An array of IFC Usernames. Not case sensitive. | No\* | [string] |
userHashes |
POST request body | An array of user hashes retrieved in-app or from another endpoint. All letters must be upper case. | No\* | [string] |
*At least one search parameter is required
{
"userIds": [
"2a11e620-1cc1-4ac6-90d1-18c4ed9cb913",
"5917d076-88a5-40e7-95e0-8818748f8e99"
],
"discourseNames": [
"KaiM",
"Laura"
],
"userHashes": [
"F0081CAA",
"E2087C9F"
],
}
{
"errorCode": 0,
"result": [
{
"onlineFlights": 2449,
"violations": 102,
"xp": 572128,
"landingCount": 898,
"flightTime": 45983,
"atcOperations": 548,
"atcRank": 7,
"grade": 5,
"hash": "5F0973A9",
"violationCountByLevel": {
"level1": 102,
"level2": 0,
"level3": 0
},
"roles": [
1,
2,
64
],
"userId": "2a11e620-1cc1-4ac6-90d1-18c4ed9cb913",
"virtualOrganization": null,
"discourseUsername": "Cameron",
"groups": [
"8c93a113-0c6c-491f-926d-1361e43a5833",
"d07afad8-79df-4363-b1c7-a5a1dde6e3c8",
"df0f6341-5f6a-40ef-8b73-087a0ec255b5"
],
"errorCode": 0
},
{
"onlineFlights": 21,
"violations": 0,
"xp": 29984,
"landingCount": 24,
"flightTime": 2717,
"atcOperations": 0,
"atcRank": null,
"grade": 1,
"hash": "56099EA4",
"userId": "66e362c0-894b-495b-93a6-75f9befa502d",
"virtualOrganization": null,
"discourseUsername": null,
"violationCountByLevel": {
"level1": 22,
"level2": 0,
"level3": 0
},
"roles": [
64
],
"groups": [],
"errorCode": 0
}
]
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
[UserStats] | Array of UserStats objects |
Name | Type | Description |
---|---|---|
userId |
string (uuid) | Unique identifier for the user |
virtualOrganization |
string | The virtual organization of the user's forum account if linked. Can be null if not set |
discourseUsername |
string | The user's forum username if the account is linked. If the account isn't linked, this will be null |
groups |
[string (uuid)] | Deprecated - will be removed in a future update A list of groups the user can be a part of. |
roles |
[integer] | A list of roles a user has been assigned. See below for a list of main roles. |
errorCode |
integer | Status code of user query. Not in use for this endpoint |
onlineFlights |
integer | Number of flights carried out in multiplayer |
violations |
integer | Number of Level 1, 2 and 3 violations the user received in multiplayer |
violationCountByLevel |
dict | A dictionary with a count of violations issued to the user, split up by levels (Level 1/2/3). |
xp |
double | Total XP obtained in multiplayer |
landingCount |
integer | Total landings carried out in multiplayer |
flightTime |
double | Total flight time in minutes in multiplayer |
atcOperations |
integer | Total number of ATC Operations. |
atcRank |
integer | ATC Rank on the Expert Server. See below for the ranks. Can be null if user isn't an IFATC controller. |
grade |
integer | The grade of the user, from 1 to 5. |
hash |
string | A short-form user identifier, shown in the app to identify anonymous users. |
The main roles are as follows.
ID | Name |
---|---|
1 | Infinite Flight Staff |
2 | Moderators |
64 | IFATC Members |
The ATC Ranks are as follows.
ID | Name |
---|---|
0 | Observer |
1 | ATC Trainee |
2 | ATC Apprentice |
3 | ATC Specialist |
4 | ATC Officer |
5 | ATC Supervisor |
6 | ATC Recruiter |
7 | ATC Manager |
Retrieve the full grade table and detailed statistics for a user.
GET https://api.infiniteflight.com/public/v2/users/{userId}
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
Name | Located in | Description | Required | Schema |
---|---|---|---|---|
userId |
path | ID of the User | Yes | string (uuid) |
{
"errorCode": 0,
"result": {
"totalXP": 217242,
"total12MonthsViolations": 4,
"gradeDetails": {
"grades": [...],
"gradeIndex": 2,
"ruleDefinitions": [...]
},
"atcOperations": 14641,
"atcRank": 3,
"lastLevel1ViolationDate": "2020-12-16T03:20:10.283484",
"lastReportViolationDate": "0001-01-01T00:00:00",
"violationCountByLevel": {
"level1": 9,
"level2": 0,
"level3": 0
},
"roles": [
41,
43,
53,
61,
64,
68
],
"userId": "b0018209-e010-40a0-afe1-00ecd5856c5e",
"virtualOrganization": "IFATC [IFATC]",
"discourseUsername": "KaiM",
"groups": [
"df0f6341-5f6a-40ef-8b73-087a0ec255b5"
],
"errorCode": 0
}
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
GradeInfo | GradeInfo Object |
Name | Type | Description |
---|---|---|
userId |
string (uuid) | Unique identifier for the user |
virtualOrganization |
string | The virtual organization of the user's forum account if linked. Can be null if not set |
discourseUsername |
string | The user's forum username if the account is linked. If the account isn't linked, this will be null |
groups |
[string (uuid)] | Deprecated - will be removed soon. A list of groups the user can be a part of. |
roles |
[integer] | A list of roles a user has been assigned. See below for a list of main roles. |
errorCode |
integer | Status code of user query. Not in use for this endpoint. |
gradeDetails |
GradeConfiguration | Full Grade Table |
violationCountByLevel |
dict | A dictionary with a count of violations issued to the user, split up by levels (Level 1/2/3). |
totalXP |
double | Total XP obtained in multiplayer |
atcOperations |
integer | Total number of ATC Operations. |
atcRank |
integer | ATC Rank on the Expert Server. See below for the ranks. Can be null if user isn't an IFATC controller. |
total12MonthsViolations |
integer | Total amount of Level 1, 2, and 3 violations received in the last 12 months |
lastLevel1ViolationDate |
string (datetime) | Date of the user's last Level 1 violation |
lastReportViolationDate |
string (datetime) | Date of the user's last Level 2 or 3 violation (report). Defaults to 0001-01-01T00:00:00 if the user does not have any reports. |
The main roles are as follows.
ID | Name |
---|---|
1 | Infinite Flight Staff |
2 | Moderators |
64 | IFATC Members |
The main groups are as follows.
ID | Name |
---|---|
d07afad8-79df-4363-b1c7-a5a1dde6e3c8 | Staff |
8c93a113-0c6c-491f-926d-1361e43a5833 | Moderators |
df0f6341-5f6a-40ef-8b73-087a0ec255b5 | IFATC Members |
Name | Type | Description |
---|---|---|
grades |
[Grade] | Array containing all grades |
gradeIndex |
integer | The Index of the grades property that the user holds |
ruleDefinitions |
[GradeRuleDefinition] | Definiton for the rules required for each grade |
Name | Type | Description |
---|---|---|
rules |
[GradeRule] | Rules to be met to obtain the grade |
index |
integer | Index of the Grade in the grades property of the GradeConfiguration object |
name |
string | Name of the Grade |
state |
integer | Enum: "Fail = 0" , "OK = 1" , "Warning = 2" |
Name | Type | Description |
---|---|---|
ruleIndex |
integer | Index of the rule in the rules property of the Grade object |
referenceValue |
double | The requirement value |
userValue |
double | The value of the user for this property |
state |
integer | Enum: "Fail = 0" , "OK = 1" , "Warning = 2" |
userValueString |
string | The value of the user, nicely formatted |
referenceValueString |
string | The requirement value, nicely formatted |
definition |
GradeRuleDefinition | Definition of the rule |
Name | Type | Description |
---|---|---|
name |
string | Name of the rule |
description |
string | Description of the rule |
property |
string | The property of the GradeInfo object the rule relates to |
operator |
integer | Enum: "GreaterThan = 0" , "LesserThan = 1" , "GreaterThanOrEqual = 2" , "LesserThanOrEqual = 3" , "Equal = 4" , "DifferentThan = 5" |
period |
double | Time period in which the rule must be met |
order |
integer | Order of the Rule within the rules property of the Grade object |
group |
integer | Not in use for this endpoint. |
Name | Type | Description |
---|---|---|
type |
double | Type of Violation |
date |
string | Date the Violation was Received |
Name | Type | Description |
---|---|---|
type |
integer | Type of Report |
creationTime |
string | Time the Report was Created |
creatorId |
string (uuid) | User ID of the Report Issuer |
description |
string | Reason for the Report |
flightId |
string (uuid) | ID of the Flight the Report was received in |
Retrieve the ATIS for an airport on a specific server if it is active.
GET https://api.infiniteflight.com/public/v2/sessions/{sessionId}/airport/{airportIcao}/atis
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
Name | Located in | Description | Required | Schema |
---|---|---|---|---|
airportIcao |
query | ICAO of the airport to get the ATIS for | Yes | string |
sessionId |
query | Session (Server) ID of the Live Server | Yes | string (uuid) |
{
"errorCode":0,
"result":"Manchester Airport, ATIS information DELTA, time 2355 ZULU, Wind 350 at 6 Visibility 21, Temperature 2, Dew Point 0, QNH 1024. Remarks, no pattern work allowed, no light aircraft accepted at this time. Landing Runways 05L and 05R, Departing Runways 05L and 05R. Advise on initial contact, you have information DELTA."
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
string | The ATIS, or null if it is not available |
Retrieve active ATC status information for an airport, and the number of inbound and outbound aircraft.
GET https://api.infiniteflight.com/public/v2/sessions/{sessionId}/airport/{airportIcao}/status
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
Name | Located in | Description | Required | Schema |
---|---|---|---|---|
airportIcao |
query | ICAO of the airport to get the status for | Yes | string |
sessionId |
query | Session (Server) ID of the Live Server | Yes | string (uuid) |
{
"errorCode": 0,
"result": {
"airportIcao": "VTBS",
"inboundFlightsCount": 40,
"inboundFlights": [
"4f559855-fecc-4a8a-a95e-1d097eed9b72",
...
],
"outboundFlightsCount": 19,
"outboundFlights": [
"59e9509b-214a-4f8c-9d45-29c4f7ea01d7",
...
],
"atcFacilities": [
{
"frequencyId": "23bea566-20a0-2858-a40e-179d0699afc1",
"userId": "05328fc4-b651-45e9-8e1f-328095329484",
"username": "Rhys_V",
"virtualOrganization": null,
"airportName": "VTBS",
"type": 4,
"latitude": 13.680815,
"longitude": 100.74768,
"startTime": "2021-02-08 09:59:58Z"
}
]
}
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
string | An AirportStatus object |
Name | Type | Description |
---|---|---|
airportIcao |
string | ICAO of the airport |
inboundFlightsCount |
integer | Number of aircraft inbound to this airport (must have final waypoint in flight plan set as the airport ICAO) |
inboundFlights |
[string (uuid)] | A list of flight identifiers inbound to this airport. Use this to get flight plans or flight route information |
outboundFlightsCount |
integer | Number of aircraft departing this airport (must have first waypoint in flight plan set as the airport ICAO) |
outboundFlights |
[string (uuid)] | A list of flight identifiers outbound from this airport. Use this to get flight plans or flight route information |
atcFacilities |
[ActiveATCFacility] | Array of ActiveATCFacility objects |
Name | Type | Description |
---|---|---|
frequencyId |
string (uuid) | Unique identifier for the open frequency |
userId |
string (uuid) | Unique identifier for the user controlling the frequency |
username |
string | The user's forum username if the account is linked. If the account isn't linked, this will be null |
virtualOrganization |
string | (not currently in use) |
airportName |
string | The 4-character ICAO identifier for the airport. null for center |
type |
integer | The type of frequency opened - not all of these are in use. Enum: "Ground = 0" , "Tower = 1" , "Unicom = 2" , "Clearance = 3" , "Approach = 4" , "Departure = 5" , "Center = 6" , "ATIS = 7" , "Aircraft = 8" , "Recorded = 9" , "Unknown = 10" , "Unused = 11" |
latitude |
float | Decimal latitude of the airport |
longitude |
float | Decimal longitude of the airport |
startTime |
string | Time at which the frequency was opened, in the following format: YYYY-MM-DD HH:mm:ssZ |
Retrieve active ATC status information and inbound/outbound aircraft information for all airports with activity on a specific server.
GET https://api.infiniteflight.com/public/v2/sessions/{sessionId}/world
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
Name | Located in | Description | Required | Schema |
---|---|---|---|---|
sessionId |
query | Session (Server) ID of the Live Server | Yes | string (uuid) |
{
"errorCode": 0,
"result": [
{
"airportIcao": "KLAX",
"inboundFlightsCount": 103,
"inboundFlights": [
"e1cf6c27-6f18-43a0-8bf8-cec5406e93a0",
...
],
"outboundFlightsCount": 39,
"outboundFlights": [
"e2ded8f8-ff70-454a-911b-f193eb47636f",
...
],
"atcFacilities": [
{
"frequencyId": "ee835f12-6cf5-eaa1-04bf-2018c7c01ae0",
"userId": "51f94d83-54e8-4674-ae2d-046a42c04f7a",
"username": "Manav_Suri",
"virtualOrganization": null,
"airportName": "KLAX",
"type": 0,
"latitude": 33.943123,
"longitude": -118.40881,
"startTime": "2021-02-09 09:53:02Z"
},
...
]
},
]
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
[AirportStatus] | An array of AirportStatus objects |
Name | Type | Description |
---|---|---|
airportIcao |
string | ICAO of the airport |
inboundFlightsCount |
integer | Number of aircraft inbound to this airport (must have final waypoint in flight plan set as the airport ICAO) |
inboundFlights |
[string (uuid)] | A list of flight identifiers inbound to this airport. Use this to get flight plans or flight route information |
outboundFlightsCount |
integer | Number of aircraft departing this airport (must have first waypoint in flight plan set as the airport ICAO) |
outboundFlights |
[string (uuid)] | A list of flight identifiers outbound from this airport. Use this to get flight plans or flight route information |
atcFacilities |
[ActiveATCFacility] | Array of ActiveATCFacility objects |
Name | Type | Description |
---|---|---|
frequencyId |
string (uuid) | Unique identifier for the open frequency |
userId |
string (uuid) | Unique identifier for the user controlling the frequency |
username |
string | The user's forum username if the account is linked. If the account isn't linked, this will be null |
virtualOrganization |
string | (not currently in use) |
airportName |
string | The 4-character ICAO identifier for the airport. null for center |
type |
integer | The type of frequency opened - not all of these are in use. Enum: "Ground = 0" , "Tower = 1" , "Unicom = 2" , "Clearance = 3" , "Approach = 4" , "Departure = 5" , "Center = 6" , "ATIS = 7" , "Aircraft = 8" , "Recorded = 9" , "Unknown = 10" , "Unused = 11" |
latitude |
float | Decimal latitude of the airport |
longitude |
float | Decimal longitude of the airport |
startTime |
string | Time at which the frequency was opened, in the following format: YYYY-MM-DD HH:mm:ssZ |
Retrieves a list of Oceanic Tracks active in Infinite Flight multiplayer sessions.
GET https://api.infiniteflight.com/public/v2/tracks
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
No parameters required.
{
"errorCode": 0,
"result": [
{
"name": "A",
"path": [
"DINIM",
"51/20",
"51/30",
"50/40",
"49/50",
"JOOPY"
],
"eastLevels": null,
"westLevels": [
350,
370,
390
],
"type": "North Atlantic Tracks",
"lastSeen": "2021-01-06T18:49:33.6300772Z"
}
]
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
[OceanicTrack] | An array of tracks that are active in Infinite Flight. |
Name | Type | Description |
---|---|---|
name |
string | Name of the track. This is normally represented by letters. |
path |
[string] | You can correlate these with data from the Airport Editing Project |
eastLevels |
[integer] | An array of Flight Level altitudes that aircraft can fly eastbound on using this track. |
westLevels |
[integer] | An array of Flight Level altitudes that aircraft can fly westbound on using this track. |
type |
string | Type of Oceanic Track. Infinite Flight supports North Atlantic Tracks in addition to custom tracks defined for events. |
lastSeen |
string | Last date and time at which the Oceanic Tracks were updated, in the following format: YYYY-MM-DDTHH:mm:ssZ |
Retrieves the online flight logbook for a given user.
GET https://api.infiniteflight.com/public/v2/users/{userId}/flights
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
Name | Located in | Description | Required | Schema |
---|---|---|---|---|
userId |
path | ID of the User | Yes | string (uuid) |
page |
query | Index of the page to retrieve | No, default 1 |
integer |
{
"errorCode": 0,
"result": {
"pageIndex": 1,
"totalPages": 80,
"totalCount": 799,
"hasPreviousPage": false,
"hasNextPage": true,
"data": [
{
"id": "9aeb16a3-ac69-41d3-9dd4-d62be72b1525",
"created": "2022-01-10T10:37:41.965626",
"userId": "b0018209-e010-40a0-afe1-00ecd5856c5e",
"aircraftId": "849366e1-cb11-4d72-9034-78b11cd026b0",
"liveryId": "a071518d-995a-4b3c-b65b-656da0d6ed86",
"callsign": "VH-KAI",
"server": "Casual Server",
"dayTime": 2.5355167,
"nightTime": 0,
"totalTime": 2.5355167,
"landingCount": 0,
"originAirport": "YTYA",
"destinationAirport": "YTYA",
"xp": 25
},
...
]
}
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
PaginatedList | A page from the logbook. |
Name | Type | Description |
---|---|---|
pageIndex |
integer | The index of the current page |
totalPages |
integer | The total number of pages available |
totalCount |
integer | The total amount of entries for this dataset |
hasPreviousPage |
boolean | Whether there is a page before this one |
hasNextPage |
boolean | Whether there is a page after this one |
data |
[UserFlight] | The entries in the current page |
Name | Type | Description |
---|---|---|
id |
string (uuid) | The ID of the flight |
created |
string (datetime) | The time the flight was created |
userId |
string (uuid) | The ID of the user who flew the flight |
aircraftId |
string (uuid) | The ID of the aircraft flown |
liveryId |
string (uuid) | The ID of the livery flown. This is currently only supported on the Casual server |
callsign |
string | The callsign of the user during this flight |
server |
string | The name of the server the flight was flown on |
dayTime |
float | The flight time during the day, in minutes |
nightTime |
float | The flight time during the night, in minutes |
totalTime |
float | The total flight time of the flight, in minutes |
landingCount |
integer | The number of landings conducted during the flight |
originAirport |
string | The ICAO code of the departure airport. Can be null |
destinationAirport |
string | The ICAO code of the arrival airport. Can be null |
xp |
integer | The number of XP earned during the flight |
Retrieves a flight from the logbook of a given user.
GET https://api.infiniteflight.com/public/v2/users/{userId}/flights/{flightId}
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
Name | Located in | Description | Required | Schema |
---|---|---|---|---|
userId |
path | ID of the User | Yes | string (uuid) |
flightId |
path | ID of the Flight | Yes | string (uuid) |
{
"errorCode": 0,
"result": {
"id": "9aeb16a3-ac69-41d3-9dd4-d62be72b1525",
"created": "2022-01-10T10:37:41.965626",
"userId": "b0018209-e010-40a0-afe1-00ecd5856c5e",
"aircraftId": "849366e1-cb11-4d72-9034-78b11cd026b0",
"liveryId": "a071518d-995a-4b3c-b65b-656da0d6ed86",
"callsign": "VH-KAI",
"server": "Casual Server",
"dayTime": 2.5355167,
"nightTime": 0,
"totalTime": 2.5355167,
"landingCount": 0,
"originAirport": "YTYA",
"destinationAirport": "YTYA",
"xp": 25
}
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
UserFlight | A flight from the logbook. |
Name | Type | Description |
---|---|---|
id |
string (uuid) | The ID of the flight |
created |
string (datetime) | The time the flight was created |
userId |
string (uuid) | The ID of the user who flew the flight |
aircraftId |
string (uuid) | The ID of the aircraft flown |
liveryId |
string (uuid) | The ID of the livery flown. This is currently only supported on the Casual server |
callsign |
string | The callsign of the user during this flight |
server |
string | The name of the server the flight was flown on |
dayTime |
float | The flight time during the day, in minutes |
nightTime |
float | The flight time during the night, in minutes |
totalTime |
float | The total flight time of the flight, in minutes |
landingCount |
integer | The number of landings conducted during the flight |
originAirport |
string | The ICAO code of the departure airport. Can be null |
destinationAirport |
string | The ICAO code of the arrival airport. Can be null |
xp |
integer | The number of XP earned during the flight |
Retrieves an ATC session from the log of a given user.
GET https://api.infiniteflight.com/public/v2/users/{userId}/atc/{atcSessionId}
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
Name | Located in | Description | Required | Schema |
---|---|---|---|---|
userId |
path | ID of the User | Yes | string (uuid) |
atcSessionId |
path | ID of the ATC Session | Yes | string (uuid) |
{
"errorCode": 0,
"result": {
"id": "857b1686-455d-481a-8bdf-c46cd7711691",
"atcSessionGroupId": "1fcff4cb-48e6-46dc-8c87-4202bcdd7cc0",
"facility": {
"id": "4fda33c2-91b9-1a57-98f2-a765abd4c019",
"airportIcao": "VRMM",
"latitude": 4.191753387451172,
"longitude": 73.52915954589844,
"frequencyType": 4
},
"created": "2020-07-03T10:27:08.021137",
"updated": "2020-07-03T10:37:49.026714",
"operations": 9,
"totalTime": 86.15142588333333
}
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
UserAtcSession | An ATC session from the logbook. |
Name | Type | Description |
---|---|---|
id |
string (uuid) | The ID of the session |
atcSessionGroupId |
string (uuid) | Identifies a group of sessions (for when a controller opens multiple frequencies at the same airport) |
facility |
ATCFacility | Details of the facility that was opened |
created |
string (datetime) | The time at which the frequency was first opened |
updated |
string (datetime) | The time at which last report was received |
operations |
integer | The number of operations earned during the session |
totalTime |
double | The duration of the session in minutes |
Name | Type | Description |
---|---|---|
id |
string (uuid) | ID of the ATC Facility |
airportIcao |
string | The ICAO of the airport at which the facility is located |
latitude |
double | Latitude of the ATC Facility |
longitude |
double | Longitude of the ATC Facility |
frequencyType |
ATCEntityType | Type of ATC Facility. Enum: "Ground = 0" , "Tower = 1" , "Unicom = 2" , "Clearance = 3" , "Approach = 4" , "Departure = 5" , "Center = 6" , "ATIS = 7" , "Aircraft = 8" , "Recorded = 9" , "Unknown = 10" , "Unused = 11" |
Retrieves the ATC session log for a given user.
GET https://api.infiniteflight.com/public/v2/users/{userId}/atc
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
Name | Located in | Description | Required | Schema |
---|---|---|---|---|
userId |
path | ID of the User | Yes | string (uuid) |
page |
query | Index of the page to retrieve | No, default 1 |
integer |
{
"errorCode": 0,
"result": {
"pageIndex": 1,
"totalPages": 80,
"totalCount": 791,
"hasPreviousPage": false,
"hasNextPage": true,
"data": [
{
"id": "857b1686-455d-481a-8bdf-c46cd7711691",
"atcSessionGroupId": "1fcff4cb-48e6-46dc-8c87-4202bcdd7cc0",
"facility": {
"id": "4fda33c2-91b9-1a57-98f2-a765abd4c019",
"airportIcao": "VRMM",
"latitude": 4.191753387451172,
"longitude": 73.52915954589844,
"frequencyType": 4
},
"created": "2020-07-03T10:27:08.021137",
"updated": "2020-07-03T10:37:49.026714",
"operations": 9,
"totalTime": 86.15142588333333
},
...
]
}
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
PaginatedList | A page from the logbook. |
Name | Type | Description |
---|---|---|
pageIndex |
integer | The index of the current page |
totalPages |
integer | The total number of pages available |
totalCount |
integer | The total amount of entries for this dataset |
hasPreviousPage |
boolean | Whether there is a page before this one |
hasNextPage |
boolean | Whether there is a page after this one |
data |
[UserAtcSession] | The entries in the current page |
Name | Type | Description |
---|---|---|
id |
string (uuid) | The ID of the session |
atcSessionGroupId |
string (uuid) | Identifies a group of sessions (for when a controller opens multiple frequencies at the same airport) |
facility |
ATCFacility | Details of the facility that was opened |
created |
string (datetime) | The time at which the frequency was first opened |
updated |
string (datetime) | The time at which last report was received |
operations |
integer | The number of operations earned during the session |
totalTime |
double | The duration of the session in minutes |
Name | Type | Description |
---|---|---|
id |
string (uuid) | ID of the ATC Facility |
airportIcao |
string | The ICAO of the airport at which the facility is located |
latitude |
double | Latitude of the ATC Facility |
longitude |
double | Longitude of the ATC Facility |
frequencyType |
ATCEntityType | Type of ATC Facility. Enum: "Ground = 0" , "Tower = 1" , "Unicom = 2" , "Clearance = 3" , "Approach = 4" , "Departure = 5" , "Center = 6" , "ATIS = 7" , "Aircraft = 8" , "Recorded = 9" , "Unknown = 10" , "Unused = 11" |
Retrieve a list of all NOTAMs for a session.
GET https://api.infiniteflight.com/public/v2/sessions/{sessionId}/notams
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
Name | Located in | Description | Required | Schema |
---|---|---|---|---|
sessionId |
path | ID of the session returned from the Sessions endpoint | Yes | string (uuid) |
{
"errorCode": 0,
"result": [
{
"id": "53671e16-f937-47ca-a5db-c13b6a882851",
"title": "Special Airport Procedures",
"author": "Infinite Flight",
"type": 0,
"sessionId": "7e5dcd44-1fb5-49cc-bc2c-a9aab1f6a856",
"radius": 3,
"message": "Special Airport Procedures in Effect:\n\nNo straight in approached allowed RWY 13\n\nCC NDB 4500ft - 040° HDG Descending to SC NDB - Visual Right Turn Abeam Checkerboard to RWY 13\n\nPublished Approach Procedures (Found Online) Recommended",
"longitude": 114.20680199460077,
"latitude": 22.31646633312086,
"icao": "VHHX",
"floor": 0,
"ceiling": 10000,
"startTime": "2022-02-14T16:34:14.916",
"endTime": "2100-01-01T16:34:00"
},
...
]
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
[NotamResult] | Array of FlightEntry objects |
Name | Type | Description |
---|---|---|
id |
string (uuid) | Unique identifier for the NOTAM |
title |
string | Short title for NOTAM |
author |
string | Name of NOTAM author |
type |
NotamType | Type of NOTAM. Enum: "NOTAM" = 0, "TFR" = 1 |
sessionId |
string (uuid) | The ID of the session on which the NOTAM is published. null for all sessions. |
radius |
float | Radius of the NOTAM in NM |
message |
string | Main message for NOTAM |
latitude |
double | Decimal latitude of the center of the NOTAM |
longitude |
double | Decimal longitude of the center of the NOTAM |
icao |
string | ICAO of the nearest airport to the NOTAM |
floor |
integer | Lowest altitude of NOTAM in feet |
ceiling |
integer | Highest altitude of NOTAM in feet |
startTime |
string (datetime) | Time at which the NOTAM comes into effect |
endTime |
string (datetime) | Time at which the NOTAM expires |
Retrieve a list of all aircraft models.
GET https://api.infiniteflight.com/public/v2/aircraft
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
{
"errorCode": 0,
"result": [
{
"id": "81d9ccd4-9c03-493a-811e-8fad3e57bd05",
"name": "A-10"
},
...
]
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
[AircraftPackage] | Array of AircraftPackage objects |
Name | Type | Description |
---|---|---|
id |
string (uuid) | Unique identifier for the model |
name |
string | Name of the aircraft |
Retrieve a list of all liveries for an aircraft model.
GET https://api.infiniteflight.com/public/v2/aircraft/{aircraftId}/liveries
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
Name | Located in | Description | Required | Schema |
---|---|---|---|---|
aircraftId |
path | ID of the aircraft model returned from the aircraft endpoint | Yes | string (uuid) |
{
"errorCode": 0,
"result": [
{
"id": "701c826b-a160-4b1a-a89f-08d0afb4af1b",
"aircraftID": "710c84ae-6fdc-4c4a-ac3b-4031c3036e98",
"aircraftName": "Airbus A220-300",
"liveryName": "airBaltic"
},
...
]
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
[LiveryData] | Array of LiveryData objects |
Name | Type | Description |
---|---|---|
id |
string (uuid) | Unique identifier for the livery |
aircraftID |
string (uuid) | ID of the aircraft model |
aircraftName |
string | Name of the aircraft model |
liveryName |
string | Name of the livery |
Retrieve a list of all aircraft liveries.
GET https://api.infiniteflight.com/public/v2/aircraft/liveries
Include your API key (<apikey>
) by either:
- Adding the
apikey
query parameter. For example,?apikey=<apikey>
. - Sending a bearer authorization header with your API key. For example,
Authorization: Bearer <apikey>
.
{
"errorCode": 0,
"result": [
{
"id": "1d7dff42-46a5-4c47-a46c-bd39ab9cea8d",
"aircraftID": "982dd974-5be7-4369-90c6-bd92863632ba",
"aircraftName": "Airbus A318",
"liveryName": "Generic"
},
...
]
}
Response Type: application/json
Name | Type | Description |
---|---|---|
errorCode |
integer | Enum: "Ok = 0" , "UserNotFound = 1" , "MissingRequestParameters = 2" , "EndpointError = 3" , "NotAuthorized = 4" , "ServerNotFound = 5" , "FlightNotFound = 6" , "NoAtisAvailable = 7" |
result |
[LiveryData] | Array of LiveryData objects |
Name | Type | Description |
---|---|---|
id |
string (uuid) | Unique identifier for the livery |
aircraftID |
string (uuid) | ID of the aircraft model |
aircraftName |
string | Name of the aircraft model |
liveryName |
string | Name of the livery |
Below you can find a range of samples in a variety of languages to help you get started with the Live API. Current languages are PHP, NodeJS, Kotlin and C# - but we welcome contributions. Simply Fork and make a Pull Request to velocity23/infiniteflightlive-samples on GitHub or get in touch with us on the forum or Discord to get your project added.