Endpoint
Authentication
Requires a valid JWT withdispatch:assign permission.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
lat | number | Yes | Event latitude |
lng | number | Yes | Event longitude |
vertical | string | No | Event vertical — filters by capability |
event_type | string | No | Specific event type within the vertical |
priority | string | No | Severity — P1_CRITICAL, HIGH, MEDIUM, LOW |
required_equipment | string[] | No | Equipment codes required for this event |
Response
Score Algorithm
The score engine runs identically on the API (online) and SDK (offline). Lower score is better.| Component | Description |
|---|---|
travel_score | Haversine distance normalised to 30 min max |
capability_score | Equipment and vertical match — lower is better match |
member_score | Member availability ratio — lower is more available |
load_penalty | 0.5 if team is on_mission, 0 otherwise |
geofence_penalty | 0.2 if event is outside team zone boundary, 0 otherwise |
Position Sources
| Source | Description |
|---|---|
gps | Real GPS from a team member, updated within 10 minutes |
zone | Zone center coordinates — used when no fresh GPS is available |
unknown | No position data — team is still scored but distance is 0 |

