Understanding DUMP Messages

The DUMP (Dronetag Unified Message Protocol) is Dronetag's internal messaging format, used consistently across all our services. Whether you are interacting with our REST API, Socket.io, or integrating through our portal, you can rely on DUMP to be the standard data exchange format.
The current version is DUMP v1.
DUMP supports the following message types:
- Operation ⏺︎
- OperationUpdate ⏺︎
- Telemetry-UA ⏺︎ (often shortened as TELE-UA)
- Telemetry-Operator ⏺︎ (TELE-Operator)
- Telemetry-System ⏺︎ (TELE-System)
The details of these message types, including when and how they are used, are explained further below.
Although we aim for full consistency, some services may still use older message formats. We are actively working on migrating all services to the DUMP format, but backward compatibility with older APIs is required for now. Until we fully deprecate v1 APIs, you might encounter formats that are not DUMP-compliant.
DUMP Message Types
Operation (or OperationUpdate)
See JSON Schema Preview
Property | Type | Description | Required |
---|---|---|---|
id | string | Unique operation ID (typically in the form of a UUID) | Yes |
status | Object 'DUMPOperationStatus' | Current operation status | Yes |
sensor_id | string | The unique identifier for the sensor or device of this operation. | Yes |
uas_operator_id | any | ID of the UAS operator (typically in the form of a UUID) | No |
ua_classification | any | TODO | No |
ua_classification_type | any | TODO | No |
ua_identifiers | array of 'DUMPUAIdentifier' objects | Collection of UA identifiers | No |
authentication | array of 'DUMPSignature' objects | Collection of signatures to prove authenticity | No |
descriptions | array of 'DUMPOperationDescription' objects | Collection of various operation descriptions, for example for the purpose of verbosely describing state of the operation | No |
warnings | array of 'DUMPWarning' objects | A list of warnings related to the operation. These warnings are usually produces while receiving the telemetry data which are non-compliant or has problematic values. For example, if the telemetry data contains invalid fields or timestamps, a warning will be generated. | No |
📋 See the full schema JSON schema in our API documentation
An Operation message contains static information about a specific flight. The purpose of separating this data into an operation object is to avoid repeating unchanged information, such as the drone’s serial number or the Remote ID (RID) module’s ID, in every telemetry message.
It ’s important to understand that a single operation may not always correspond directly to a single flight. In cases where a flight is recorded using multiple systems—like a combination of Network Remote ID and ground-based Direct Remote ID receivers—the flight might be divided into multiple operations.
The difference between Operation and OperationUpdate is significant. The Operation message represents the full state of the flight at the time of the request and is returned when you query through the REST API. On the other hand, OperationUpdate messages represent partial updates, sent primarily in real-time scenarios (e.g., via Socket.io or our integration portal). OperationUpdate only includes recent changes, not the entire state.
Example
{
"id": "a45cb00e-b600-4111-bd52-42537c28feb3",
"status": "current",
"uas_operator_id": "FIN87astrdge12k8",
"ua_classification": "class1",
"ua_classification_type": "open",
"ua_identifiers": [
{
"type": "serial_number",
"value": "15968AB92D361"
},
{
"type": "caa_assigned",
"value": "JA.JU12345ABCDE"
}
],
"authentication": [],
"descriptions": []
}
Telemetry-UA
See JSON Schema Preview
Property | Type | Description | Required |
---|---|---|---|
timestamp | string (date-time) | The original telemetry timestamp. Time from GNSS receiver (UTC) | Yes |
timestamp_accuracy | number | Timestamp accuracy (max. error) [s] | No |
sensor_id | string | The unique identifier for the sensor or device that originally received the telemetry data. In Telemetry-System messages, this field specifies the originating system. | Yes |
operation_id | string | Operation ID (typically in the form of a UUID) | Yes |
operational_state | Object 'DUMPOperationalState' | UA’s current state | Yes |
location | any | UA’s location from GNSS | No |
altitudes | array of 'DUMPAltitude' objects | Collection of altitudes | No |
velocity | any | UA’s velocity and speed related information | No |
air_pressure | any | Measured air pressure [hPa] | No |
📋 See the full schema JSON schema in our API documentation
The Telemetry-UA message is the primary data object for Remote ID. It provides a snapshot of the unmanned aircraft’s (UA) geographical position, status, and other relevant information required by Remote ID regulations.
Each Telemetry-UA message is associated with an Operation through the operation_id
field. Every Remote ID-enabled device generates Telemetry-UA messages during operation.
Example
{
"operation_id": "a45cb00e-b600-4111-bd52-42537c28feb3",
"timestamp": "2024-10-05T10:15:06.100Z",
"timestamp_accuracy": 0.1,
"operational_state": "airborne",
"location": {
"latitude": 50.073873, "longitude": 14.466586, "accuracy": 50
},
"altitudes": [
{ "type": "WGS84", "value": 192.5, "accuracy": 10 },
{ "type": "QNE", "value": 323.1, "accuracy": 0.5 },
{ "type": "AGL", "value": -10.0, "accuracy": 0.5 }
],
"velocity": {
"heading": 92, "horizontal_speed": 9.72, "vertical_speed": 1.22, "speed_accuracy": 0.5
},
"air_pressure": 1017.712
}
Telemetry-Operator
See JSON Schema Preview
Property | Type | Description | Required |
---|---|---|---|
timestamp | string (date-time) | The original telemetry timestamp. Time from GNSS receiver (UTC) | Yes |
timestamp_accuracy | number | Timestamp accuracy (max. error) [s] | No |
sensor_id | string | The unique identifier for the sensor or device that originally received the telemetry data. In Telemetry-System messages, this field specifies the originating system. | Yes |
operation_id | string | Operation ID (typically in the form of a UUID) | Yes |
location | Object 'DUMPLocation' | Location from GNSS | Yes |
altitude | Object 'DUMPAltitude' | Operator’s altitude | Yes |
source_type | Object 'DUMPOperatorSourceType' | The nature of the operator’s position | Yes |
📋 See the full schema JSON schema in our API documentation
The Telemetry-Operator message tracks the operator’s location. Some UAV systems report the pilot’s real-time position through their control equipment. Standard Remote ID drones can provide operator tracking, while Remote ID modules typically only supply the takeoff location.
Example
{
"operation_id": "a45cb00e-b600-4111-bd52-42537c28feb3",
"timestamp": "2024-10-05T10:15:06.100Z",
"timestamp_accuracy": 0.1,
"location": {
"latitude": 50.073873, "longitude": 14.466586, "accuracy": 50
},
"altitude": {
"type": "WGS84", "value": 202.5, "accuracy": 10
},
"source_type": "take_off"
}
Telemetry-System
See JSON Schema Preview
Property | Type | Description | Required |
---|---|---|---|
timestamp | string (date-time) | The original telemetry timestamp. Time from GNSS receiver (UTC) | Yes |
timestamp_accuracy | number | Timestamp accuracy (max. error) [s] | No |
sensor_id | string | The unique identifier for the sensor or device that originally received the telemetry data. In Telemetry-System messages, this field specifies the originating system. | Yes |
operation_id | any | Operation ID (typically in the form of a UUID) Optional, as Telemetry-SYSTEM are linked to Operations only in specific cases, such as the System being the NRI (Network Remote ID) system. | No |
system_type | Object 'DUMPSystemType' | Type of the device | Yes |
system_status | Object 'DUMPSystemStatus' | Current system state | Yes |
location | any | The current system location | No |
altitude | any | The current system altitude | No |
power_source | any | Current system’s power source and its state | No |
lte_connectivity | any | Current system’s LTE connection and its state | No |
gnss_connectivity | any | Current system’s GNSS connection and its state | No |
📋 See the full schema JSON schema in our API documentation
The Telemetry-System message provides information about the status of the Remote ID module itself, rather than the aircraft. It includes details on battery charge, GNSS connectivity, LTE signal, and other system parameters. Currently, only Dronetag devices generate Telemetry-System messages.
Example
{
"operation_id": "a45cb00e-b600-4111-bd52-42537c28feb3",
"timestamp": "2024-10-05T10:15:06.100Z",
"timestamp_accuracy": 0.1,
"system_type": "rid_module",
"system_status": "operational",
"power_source": {
"type": "battery",
"input_voltage": 4.11,
"charge_percentage": 90,
"is_being_charged": false
},
"lte_connectivity": {
"status": "connected",
"rsrq": -10,
"rsrp": -97,
"snr": 9,
"tac": "291E",
"cell_id": "555CA02"
},
"gnss_connectivity": {
"status": "connected",
"satellites": 12
}
}