Flight Logs
All endpoints described in this section require a valid authentication token. Please refer to the Authentication section for details on how to obtain and use tokens.
Base URL: https://api.unleashlive.com
Retrieve flight logs at the company or team level. Each record describes a flight log file. All endpoints return a JSON object with an items array, where each item is a Flight Log File object.
Endpoints
Section titled “Endpoints”List Company Flight Logs
Section titled “List Company Flight Logs”GET /v1/flights/companyLists all flight logs for the entire company. Response is not paginated.
Query Parameters
Section titled “Query Parameters”| Parameter | Type | Description |
|---|---|---|
dateFrom | Integer | Return logs created at or after this UNIX timestamp (ms) |
dateTo | Integer | Return logs created at or before this UNIX timestamp (ms) |
version | String | Filter by version — afl, djiv4, or djiv5 |
pilotName | String | Filter by pilot name |
deviceId | String | Filter by device ID |
hasComments | Boolean | Filter by whether the log has comments |
dateType | String | Date field to filter on — uploadDate or flightStartDate |
Example Request
Section titled “Example Request”GET /v1/flights/company?dateFrom=1709654015526Example Response
Section titled “Example Response”{ "items": [ { "id": "abc123", "s3Path": "output/36be4d24.../DJIFlightRecord_2025-04-15.txt", "name": "DJIFlightRecord_2025-04-15.txt", "teamId": "teamId1", "teamName": "Team Alpha", "companyId": "companyId1", "ownerId": "userId1", "deviceId": "deviceId1", "pilotName": "John Doe", "version": "djiv5", "flightStartDate": "2025-04-15T14:52:48.000Z", "flightEndDate": "2025-04-15T15:10:22.000Z", "flightDuration": "1054", "flightDistance": "3200", "takeOffLocation": { "lat": -33.8688, "long": 151.2093 }, "droneName": "Mavic 3 Enterprise", "deviceSerial": "1ZNBH1D00B00YX", "hasComments": false, "missionIds": [], "taskIds": [], "jobIds": [] } ]}For a full working example, see list-flight-logs.js.
List Team Flight Logs (Paginated)
Section titled “List Team Flight Logs (Paginated)”GET /v1/flights/teamLists flight logs for the user’s team (inferred from the authentication token). Response is paginated by default.
Query Parameters
Section titled “Query Parameters”| Parameter | Type | Description |
|---|---|---|
dateFrom | Integer | Return logs created at or after this UNIX timestamp (ms) |
dateTo | Integer | Return logs created at or before this UNIX timestamp (ms) |
version | String | Filter by version — afl, djiv4, or djiv5 |
pilotName | String | Filter by pilot name |
deviceId | String | Filter by device ID |
hasComments | Boolean | Filter by whether the log has comments |
limit | Integer | Maximum number of items per page |
nextToken | String | Pagination token from a previous response |
Example Request
Section titled “Example Request”GET /v1/flights/team?limit=10Example Response
Section titled “Example Response”{ "items": [ { "id": "abc123", "s3Path": "output/36be4d24.../DJIFlightRecord_2025-04-15.txt", "name": "DJIFlightRecord_2025-04-15.txt", "pilotName": "John Doe", "version": "djiv5", "flightStartDate": "2025-04-15T14:52:48.000Z", "flightEndDate": "2025-04-15T15:10:22.000Z", "flightDuration": "1054" } ], "nextToken": "eyJwayI6InRlYW1JZDEiLCJzayI6IjE3..."}Pagination
Section titled “Pagination”If there are more items than the specified limit, the response includes a nextToken string. Pass this token to the next request to fetch the following page. When nextToken is null, you have reached the last page.
For a full working example, see list-flight-logs.js.
List Team Flight Logs
Section titled “List Team Flight Logs”GET /v1/flightsLists all flight logs for the user’s team (inferred from the authentication token). Response is not paginated.
Query Parameters
Section titled “Query Parameters”| Parameter | Type | Description |
|---|---|---|
dateFrom | Integer | Return logs created at or after this UNIX timestamp (ms) |
dateTo | Integer | Return logs created at or before this UNIX timestamp (ms) |
version | String | Filter by version — afl, djiv4, or djiv5 |
pilotName | String | Filter by pilot name |
deviceId | String | Filter by device ID |
hasComments | Boolean | Filter by whether the log has comments |
Example Request
Section titled “Example Request”GET /v1/flights?dateFrom=1709654015526Example Response
Section titled “Example Response”{ "items": [ { "id": "abc123", "s3Path": "output/36be4d24.../DJIFlightRecord_2025-04-15.txt", "name": "DJIFlightRecord_2025-04-15.txt", "pilotName": "John Doe", "version": "djiv5", "flightStartDate": "2025-04-15T14:52:48.000Z", "flightEndDate": "2025-04-15T15:10:22.000Z" } ]}For a full working example, see list-flight-logs.js.
Delete Flight Logs
Section titled “Delete Flight Logs”DELETE /v1/flightsDelete one or more flight logs.
Request Body
Section titled “Request Body”| Field | Type | Description |
|---|---|---|
items | String[] | Array of flight log IDs to delete |
allSelected | Boolean | required Whether all matching logs should be deleted |
filters | Object | Query filters to scope the deletion (same as query params) |
Either
itemsorallSelected: truewithfiltersshould be provided.
Example Request
Section titled “Example Request”{ "items": ["flightLogId1", "flightLogId2"], "allSelected": false}Batch Download Flight Logs
Section titled “Batch Download Flight Logs”POST /v1/flights/downloadRequest a ZIP archive of one or more flight log files.
Request Body
Section titled “Request Body”| Field | Type | Description |
|---|---|---|
items | String[] | Array of flight log IDs to download |
allSelected | Boolean | required Whether all matching logs should be included |
filters | Object | Query filters to scope the download (same as query params) |
Download Flight Log
Section titled “Download Flight Log”To download a specific flight log file, you need its s3Path (obtained from a list response) and the Flight Log CDN base URL.
CDN Base URL: https://flights.unleashlive.com
Construct the full download URL by appending the s3Path to the CDN base URL:
https://flights.unleashlive.com/<s3Path>- List flight logs to obtain the
s3Pathof the desired file. - Construct the full URL:
https://flights.unleashlive.com/{s3Path}. - Perform an HTTPS GET request to download the file.
For a full working example, see download-flight-logs.js.
Reference
Section titled “Reference”Flight Log File
Section titled “Flight Log File”Each flight log entry in the items array has the following structure:
| Field | Type | Description |
|---|---|---|
id | String! | Unique flight log identifier |
s3Path | String! | Storage path for the flight log file |
name | String! | Flight log file name |
teamId | String! | Team the flight log belongs to |
teamName | String! | Team name |
companyId | String! | Company the flight log belongs to |
ownerId | String! | Owner/uploader identifier |
deviceId | String! | Device identifier |
pilotName | String! | Pilot name |
version | String | Flight log version (see Flight Log Version) |
flightStartDate | String | Flight start — ISO 8601 or Unix ms timestamp |
flightEndDate | String | Flight end — ISO 8601 or Unix ms timestamp |
flightDuration | String | Duration in seconds |
flightDistance | String | Distance in meters |
takeOffLocation | Object | Take-off coordinates (see below) |
droneName | String | Drone name |
deviceSerial | String | Device serial number |
hasComments | Boolean | Whether the flight log has comments |
missionIds | String[] | Associated mission IDs |
taskIds | String[] | Associated task IDs |
jobIds | String[] | Associated job IDs |
taskNames | String[] | Associated task names |
jobNames | String[] | Associated job names |
Fields marked with
!are required.
Take-off Location
Section titled “Take-off Location”| Field | Type | Description |
|---|---|---|
lat | Number | Latitude |
long | Number | Longitude |
Flight Log Version
Section titled “Flight Log Version”| Value | Description |
|---|---|
djiv4 | DJI SDK v4 flight log |
djiv5 | DJI SDK v5 flight log |
afl | Autofly flight log |