Object Track
This schema builds on the following shared schemas:
| Property | Type | Required | Note |
|---|---|---|---|
| channel_id | Integer | Yes | Uniquely identifies a source within a single device, for example, a video or radar sensor |
| classes | Array of ObjectClass | No | Classification candidates for the track (e.g., person, vehicle). The array is ordered, with the most likely classification candidate first |
| duration | Float | No | Total duration of the track in seconds. Usually calculated as end_time - start_time using a monotonic clock |
| end_time | String | No | Timestamp of the last observation in the track |
| id | ID | Yes | Globally unique identifier |
| image | Snapshot | No | Representative snapshot of the tracked object |
| maximum_speed | Float | No | Maximum measured speed of an object in m/s |
| minimum_speed | Float | No | Minimum measured speed of an object in m/s |
| parts | Array of ObjectTrackReference | No | References the original object tracks combined to create this track. Each entry refers to another ObjectTrack. This track contains the combined contents of its parts, with the same or less detail. This field records transformations or combinations, such as renames. For transformations that don't combine tracks, such as changing coordinate systems or simplifying the content, this field contains one entry that refers to the original track. |
| path | Array of TimeAndPosition | No | Time-ordered samples of the track’s trajectory (timestamps and positions) |
| start_time | String | No | Timestamp of the first observation in the track |
Object Track Reference
| Property | Type | Required | Note |
|---|---|---|---|
| object_track_id | ID | No | Globally unique identifier |
| parts | Array of ObjectTrackReference | No | References the original object tracks combined to create this track. Each entry refers to another ObjectTrack. This track contains the combined contents of its parts, with the same or less detail. This field records transformations or combinations, such as renames. For transformations that don't combine tracks, such as changing coordinate systems or simplifying the content, this field contains one entry that refers to the original track. |
Snapshot
A cropped image.
| Property | Type | Required | Note |
|---|---|---|---|
| crop_box | BoundingBox | Yes | Normalized bounding box of the region captured in data, relative to the source image. |
| data | String | Yes | Image payload. Base64-encoded when serialized to JSON |
| id | String | Yes | UUID identifier string for the snapshot |
| timestamp | String | Yes | According to format: YYYY-MM-DDTHH:MM:SS.MMMMMMZ |
Example
{
"id": "65060329-828c-443c-b7c8-fed80874298e",
"channel_id": 3,
"duration": 0.4,
"start_time": "2025-09-30T15:06:37.337448Z",
"end_time": "2025-09-30T15:06:37.737448Z",
"minimum_speed": 0.3,
"maximum_speed": 1.5,
"classes": [
{
"type": "Human",
"score": 0.326,
"lower_clothing_colors": [
{ "name": "black", "score": 0.386 },
{ "name": "beige", "score": 0.316 },
{ "name": "blue", "score": 0.218 }
],
"upper_clothing_colors": [
{ "name": "black", "score": 0.47 },
{ "name": "gray", "score": 0.222 },
{ "name": "white", "score": 0.208 }
]
}
],
"image": {
"id": "bf5074bb-fbc1-4fe4-ab7e-37d2d4254b68",
"timestamp": "2025-09-30T15:06:37.737449Z",
"crop_box": {
"bottom": 0.542,
"left": 0.1947,
"right": 0.3109,
"top": 0.4607
},
"data": "<base-64 encoded image>"
},
"parts": [
{
"object_track_id": "d99f6dcd-bd72-4493-872d-1cdbe1ddf5ee"
}
],
"path": [
{
"bounding_box": {
"bottom": 0.5525,
"left": 0.208,
"right": 0.3036,
"top": 0.4778
},
"timestamp": "2025-09-30T15:06:37.337443Z"
},
{
"bounding_box": {
"bottom": 0.5459,
"left": 0.2082,
"right": 0.3018,
"top": 0.4745
},
"timestamp": "2025-09-30T15:06:37.417444Z"
},
{
"bounding_box": {
"bottom": 0.5395,
"left": 0.205,
"right": 0.3012,
"top": 0.4712
},
"timestamp": "2025-09-30T15:06:37.537445Z"
},
{
"bounding_box": {
"bottom": 0.5372,
"left": 0.2036,
"right": 0.3012,
"top": 0.4704
},
"timestamp": "2025-09-30T15:06:37.617445Z"
},
{
"bounding_box": {
"bottom": 0.5337,
"left": 0.2029,
"right": 0.3027,
"top": 0.4689
},
"timestamp": "2025-09-30T15:06:37.737444Z"
}
]
}