# Decode single device BLE packet Decodes a BLE packet from a single device and returns sensor data including temperature, battery, shock events, and other telemetry information. Endpoint: POST /external/v1/devices/{mac_id}/decode Version: 1.3.0.0 Security: bearerAuth ## Path parameters: - `mac_id` (string, required) Device MAC address Example: "Trackonomy device macid" ## Header parameters: - `customer_id` (string, required) Customer identifier Example: "Unique customer UUID" - `authorized_groups` (string, required) Authorized groups for access control Example: "Unique customer sub-group UUID" - `product_id` (string, required) Product identifier Example: "Unique Trackonomy device identifier" - `ble_packet` (string, required) BLE packet data to decode Example: "Encoded Trackonomy device data" - `scan_time` (string, required) Scan timestamp Example: "Event time" ## Response 200 fields (application/json): - `qr_code` (string) Example: "TRK123456789" - `cts` (number) Example: 1730813898 - `ts` (number) Example: 1730813898 - `bat` (number) Example: 3.2 - `temp` (number) Example: 22.5 - `over_temp` (number) Example: 35 - `over_temp_ts` (number) Example: 1730813800 - `shock` (number) Example: 2.5 - `shock_ts` (number) Example: 1730813800 - `shock_count` (number) Example: 3 - `fw_ver` (string) Example: "1.2.3" ## Response 400 fields (application/json): - `message` (string) Example: "Missing required headers customer_id or authorized_groups" - `code` (integer) Example: 400 ## Response 401 fields (application/json): - `message` (string) Example: "Unauthorized access" - `code` (integer) Example: 401 ## Response 404 fields (application/json): - `message` (string) Example: "Resource not found" - `code` (integer) Example: 404 ## Response 500 fields (application/json): - `message` (string) Example: "Internal Server Error" - `code` (integer) Example: 500