Mission Tracking is an advanced feature available in certain editions. Contact us for questions and pricing.
MissionTracking is a global config—only one per scope. The only accepted id value is "all".
When to Use
- Performance analytics: Track mission duration, success rates, and completion percentages
- Custom mission data: Map robot data sources to mission metadata fields
- Integration with proprietary systems: Capture missions reported via API or inferred from data changes
- Multi-floor/multi-location: Configure coordinate systems and waypoint tolerances
Processing Types
| Type | Description |
|---|---|
"api" | Missions are created/updated via REST API calls or JSON-encoded data source messages |
"derived" | Missions are inferred from data source value changes (e.g., state transitions) |
processingType: ["api", "derived"]
Top-Level Fields
| Field | Type | Required | Description |
|---|---|---|---|
processingType | string/array | Yes | "api", "derived", or both. |
autoClosePreviousMission | boolean | No | If true (default), automatically closes open missions when a new one starts. |
dataBackfill | object | No | Configuration for backfilling data to missions. |
attributes | object | No | Maps data source attributes to mission fields. |
missionFields | object | No | Default values and behaviors for mission fields. |
stateDefinitions | object | No | Maps state strings to status values. |
execution | object | No | Execution behaviors (locks, modes, waypoints). |
executor | object | No | Where missions execute: "cloud" or "edge". |
Attributes Mapping
Maps data source values to mission fields. Keys are attribute IDs; values are mapping configurations.Attribute Mapping Fields
| Field | Type | Description |
|---|---|---|
type | string | Mapping type (see below). |
path | string | JSON path to extract from complex data sources. |
values | array | For "mission" type: values that indicate an active mission. |
label | string | For "data" type: key name in mission’s data object. |
acceptBeforeStart | number | Seconds to look back for attribute updates when mission starts. |
acceptAfterEnd | number | Seconds to accept attribute updates after mission ends. |
highwatermark | number | Only accept values higher than this threshold. |
Attribute Types
| Type | Description |
|---|---|
"mission" | Defines mission boundaries (for derived) or JSON API payloads (for API). |
"label" | Sets the mission display name. |
"state" | Sets the current mission state (e.g., “in-progress”, “completed”). |
"status" | Sets mission status: "ok", "error", or "warn". |
"data" | Adds metadata to the mission’s data object. |
"percent" | Sets completion percentage (0-1). |
"startTs" | Sets mission start timestamp (epoch milliseconds). |
"endTs" | Sets mission end timestamp. |
Examples
Basic API-Based Tracking
Derived Mission Tracking
Infer missions from data source changes:With Execution Configuration
Edge Executor Configuration
Execution Settings
| Field | Description |
|---|---|
modes.start | Tag ID assigned when mission starts. |
modes.end | Tag ID assigned when mission ends. |
useLocks | If true, lock robot during mission execution. |
waypoints.distanceTolerance | Distance (meters) to consider waypoint reached. |
waypoints.angularTolerance | Angle (radians) to consider waypoint reached. |
Data Backfill
Control which attributes can update missions retroactively:Related Documentation
- Mission Definitions — Define missions to dispatch
- KPI Definitions — Aggregate mission metrics