API
It's your data, use it, share it.
 

If you would like to integrate the data stored on our servers with other applications, display it on your website or offer it to others, you can do so using our simple REST API to access your data. The API is an authenticated read-only view into your groups's aircraft, flight logs and position reports. The command set is described below. All returned data is held in an easily parsable JSON object. If you run into problems or have questions, we are here to help. Just send an email to support@airbly.com.

All requests require a valid group API key to be sent. This key can be generated in the Airbly web application on the group page. Everytime a new key is generated, the old one is invalidated. There can only be one valid API key per group at a time.

Arguments can be sent either with GET or POST. All responses will include the server's timestamp, the name of the object requested and a descriptive error string if necessary.

aircraftList

Calls for an aircraftList object will return a list of all aircraft associated with a group. There are no filtering options.

Arguments

Name Required Description
groupKey yes The group's API key

Fields

Name Datatype Description
cmd string Object requested
error string Human readable description of any errors during processing
authGroupKeySuccess boolean True if the API key was valid
timeStamp integer 32-bit unix timestamp at the time of the request
aircraft array List of aircrafts associated with the group
uuid uuid UUID of the particular aircraft described
tail string Tail number of this aircraft
make string Make of this aircraft
model string Model of this aircraft
year string Year of this aircraft
serialNumber string Serial number of this aircraft
description string Description of this aircraft
lastUpdate integer 32-bit unix timestamp of the last time the aircraft was updated
totalEngineHours decimal Total number of hours on the engine
totalAirHours decimal Total number of hours on the airframe
totalTachHours decimal Total number of hours on the tachometer
totalLandings integer Total number of landings on the airframe
status select stopped, flying, unavailable, sos
needsAttention boolean Indicates one of the 10 most recent flights requires attention
maintenance select current, due, overdue
deviceId uuid UUID of the device currently assigned to this aircraft
deviceESN string ESN (model-serial) of the device currently assigned to this aircraft
deviceModelNumber integer Model number of the device currently assigned to this aircraft
deviceSerialNumber integer Serial number of the device currently assigned to this aircraft
deviceKey string Bluetooth authentication key, valid for 10 days
deviceBattery string Battery level the last time it was reported, good or low
deviceFirmware integer The version of firmware installed on the device
deviceLastSync integer 32-bit unix timestamp at the time of the last sync


"cmd": "aircraftList",
"error": "",
"authGroupApiKey": "9C4NSsnLig3zlgzPHqLkXwHPtKv7OC",
"authGroupKeySuccess": true,
"authGroupUUID": "00000001-4444-1100-0000-000000000001",
"timeStamp": 1502371000,
"aircraft": [
    {
        "uuid": "00000001-4444-2000-8846-001471040618",
        "tail": "N44API",
        "make": "Cessna",
        "model": "172",
        "year": "1980",
        "serialNumber": "1234567",
        "description": "",
        "lastUpdate": 1522329332,
        "totalEngineHours": 438.5,
        "totalAirHours": 8568.3,
        "totalTachHours": 1.2,
        "totalLandings": 9987,
        "status": "stopped",
        "needsAttention": true,
        "maintenance": "current",
        "deviceId": "00000001-4444-3000-0000-000000000001",
        "deviceESN": "P200-1234567",
        "deviceSerialNumber": 1234567,
        "deviceModelNumber": 20,
        "deviceKey": "7b8de9928be363b4351d7347e85696d7",
        "deviceBattery": "good",
        "deviceFirmware": 34,
        "deviceLastSync": 0
    }
]

                     

Examples

GET

https://airbly.com/api/v2.0.0/aircraftList?
  groupKey=9C4NSsnLig3zlgzPHqLkXwHPtKv7OC

PUT
Not supported

UPDATE
Not supported

DELETE
Not supported

flightLogList

Requests for flightLogList will return log entries for a particular aircraft and can be filtered using start and end 32-bit unix timestamp values. Logs are always returned in descending (most recent first) order.

Arguments

Name Required Description
groupKey yes The group's API key
aircraftUUID yes UUID of the aircraft who's flight logs to retrieve
startTimestamp no 32-bit unix timestamp of the earliest flight log which should be returned
endTimestamp no 32-bit unix timestamp of the latest flight log which should be returned
limit no Integer value of the number of logs to return

Fields

Name Datatype Description
cmd string Object requested
error string Human readable description of any errors during processing
authGroupKeySuccess boolean True if the API key was valid
timeStamp integer 32-bit unix timestamp at the time of the request
flightLogs array List of flightLogs associated with the requested aircraft
uuid uuid UUID of the particular flightLog described
happenedAt integer 32-bit unix timestamp of when the flight was completed
engineHours decimal Number of hours the engine was operational during the flight
engineMinutes integer Number of minutes the engine was operational during the flight
engineStartTimestamp integer 32-bit unix timestamp of when the engine started
engineStopTimestamp integer 32-bit unix timestamp of when the engine stopped
blockHours decimal Number of hours the aircraft was off blocks
blockMinutes integer Number of minutes the aircraft was off blocks
blockStartTimestamp integer 32-bit unix timestamp of when the first movement occurred
blockStopTimestamp integer 32-bit unix timestamp of when the last movement occurred
airHours decimal Number of hours the aircraft was in the air during the flight
airMinutes integer Number of minutes the aircraft was in the air during the flight
airStartTimestamp integer 32-bit unix timestamp of when first takeoff occurred
airStopTimestamp integer 32-bit unix timestamp of when the last landing occurred
tachHours decimal Number of hours of tach time during the flight
landings integer The number of landings completed during the flight
departureIdent string ICAO identifier of the departure airport
arrivalIdent string ICAO identified of the arrival airport
lastUpdate integer 32-bit unix timestamp of the last time the aircraft was updated
pilotId uuid The UUID of the pilot who flew the flight
pilotName string The name of the pilot who flew the flight
secondPilotId uuid The UUID of the second pilot who flew the flight
secondPilotName string The name of the second pilot who flew the flight
remarks string Free form textual remarks
inFlight boolean Indicates the flight is still in progress
attentionRequired boolean Indicates the flight requires attention
eventSOS boolean Indicates there was an SOS event during the flight
eventG boolean Indicates there was a G force event during the flight
eventPitchRoll boolean Indicates there was a pitch/roll event during the flight
eventClimbDescent boolean Indicates there was a high climb or decent rate event during the flight

"cmd": "flightLogList",
"error": "",
"authGroupApiKey": "9C4NSsnLig3zlgzPHqLkXwHPtKv7OC",
"authGroupKeySuccess": true,
"authGroupUUID": "00000001-4444-1100-0000-000000000001",
"timeStamp": 1502371000,
"flightLogs": [
    {
        "uuid": "00001000-4444-4000-2881-001522328908",
        "happenedAt": 1520005343,
        "engineHours": "0.8",
        "engineMinutes": 45,
        "engineStartTimestamp": 1520002607,
        "engineStopTimestamp": 1520005343,
        "blockHours": "0.7",
        "blockMinutes": 43,
        "blockStartTimestamp": 1520002722,
        "blockStopTimestamp": 1520005306,
        "airHours": "0.5",
        "airMinutes": 29,
        "airStartTimestamp": 1520003260,
        "airStopTimestamp": 1520005045,
        "airHoursMetered": "0.5",
        "tachHours": "0.6",
        "landings": 1,
        "departureIdent": "CYYG",
        "arrivalIdent": "CYYG",
        "lastUpdate": 1535115280,
        "pilotId": "00000001-4444-1000-3295-001453387958",
        "pilotName": "Chris VanHorn",
        "remarks": "This flight was synchronized via BLE and contains detailed point data.",
        "inFlight": false,
        "attentionRequired": false,
        "eventSOS": false,
        "eventG": false,
        "eventPitchRoll": true,
        "eventClimbDescent": false        
    }
]
                

Examples

GET

https://airbly.com/api/v2.0.0/flightLogList?
  aircraftUUID=00000001-4444-2000-8846-001471040618
  &groupKey=9C4NSsnLig3zlgzPHqLkXwHPtKv7OC

href="https://airbly.com/api/v2.0.0/flightLogList?
  aircraftUUID=00000001-4444-2000-8846-001471040618
  &groupKey=9C4NSsnLig3zlgzPHqLkXwHPtKv7OC
  &startTimestamp=1470940560
  &endTimestamp=1470940564
  &limit=1

PUT Not supported

UPDATE Not supported

DELETE Not supported

flightLogPoints

Requests for flightLogPoints will return all of the points created during the creation of the flightLog. They are returned in descending (most recent first) order. Points can be created via a satellite transmission or through a synchronization process using a smartphone or tablet. Points which are transmitted by satellite have a longer period (every 5 or 10 minutes) and some fields maybe empty. Alarm indicators will indicate an alarm occured at some point between the current and previous reporting points.

Arguments

Name Required Description
groupKey yes The group's API key
flightLogUUID yes UUID of the flight log to be retrieved

Fields

Name Datatype Description
cmd string Object requested
error string Human readable description of any errors during processing
authGroupKeySuccess boolean True if the API key was valid
timeStamp integer 32-bit unix timestamp at the time of the request
points array List of points associated with the requested flightLog
UUID uuid UUID of the particular point
happenedAt integer 32-bit unix timestamp of when the point was recorded
bleSyncedAt integer 32-bit unix timestamp of when this point was synced with a smartphone or tablet. If the value is 0, the point was received via satellite.
type select departure, inroute, limited, landing, alarm, arrival - indicating the phase of flight when this point was created
latitude decimal Latitude of the aircraft when the point was created
longitude decimal Longitude of the aircraft when the point was created
altitude integer Altitude in feet of the aircraft when the point was created
gForce decimal The vertical gForce on the aircraft when the point was created (not available over satellite)
pitch integer Degrees of pitch of the aircraft when the point was created (not available over satellite)
roll integer Degrees of roll of the aircraft when the point was created (not available over satellite)
verticalSpeed integer Vertical speed in feet of the aircraft when the point was created (not available over satellite)
groundSpeed integer Ground speed in knots of the aircraft when the point was created (not available over satellite)
heading integer Heading in degrees of the aircraft when the point was created (not available over satellite)
bearing integer Bearing in degrees of the aircraft when the point was created (not available over satellite)
eventSOS boolean Indicates there was an SOS event when this point was created
eventG boolean Indicates there was a G event when this point was created
eventPitchRoll boolean Indicates there was a pitch/roll event when this point was created
eventClimbDescent boolean Indicates there was a high climb or descent rate event when this point was created
eventTakeoff boolean Indicates there was a take off event when this point was created
eventLanding boolean Indicates there was a landing event when this point was created
temperature integer Temperature in degrees celcius when this point was created (not available over satellite)
gpsSatCount integer Number of GPS satellites in view when this point was created (not available over satellite)
vibration integer Vibration level value when this point was created (not available over satellite)

"cmd": "flightLogPoints",
"error": "",
"authGroupApiKey": "9C4NSsnLig3zlgzPHqLkXwHPtKv7OC",
"authGroupKeySuccess": true,
"authGroupUUID": "00000001-4444-1100-0000-000000000001",
"timeStamp": 1502371000,
"points": [
    {
        "uuid": "00001000-4444-4200-2882-001522328908",
        "happenedAt": 1520002620,
        "blesyncedAt": 0,
        "type": "departure",
        "latitude": "46.2792",
        "longitude": "-63.132",
        "altitude": 160,
        "gForce": "0",
        "pitch": 0,
        "roll": 0,
        "verticalSpeed": 0,
        "groundSpeed": 0,
        "heading": 0,
        "bearing": 0,
        "eventSOS": false,
        "eventG": false,
        "eventPitchRoll": false,
        "eventClimbDescent": false,
        "eventTakeoff": false,
        "eventLanding": false,
        "temperature": 0,
        "gpsSatCount": 0,
        "vibration": 0
    }
]
                    

Examples

GET

https://airbly.com/api/v2.0.0/flightLogPoints?
  flightLogUUID=00000001-4444-4000-8790-001470940562
  &groupKey=9C4NSsnLig3zlgzPHqLkXwHPtKv7OC

PUT Not supported

UPDATE Not supported

DELETE Not supported