Overview
The Mission API provides TAK-compatible endpoints for creating and managing missions, mission subscriptions, mission content, and mission logs. These endpoints are available on both HTTP and HTTPS TAK API services.Base Endpoints
List All Missions
Create or Update Mission
Unique identifier for the mission
UID of the mission creator
Mission subscription details for the created/updated mission
MissionCreatedNotification asynchronously.
Get Mission Details
Unique identifier for the mission
Complete mission details including metadata, contents, and subscriptions
Mission Content
Get Mission CoT Events
Unique identifier for the mission
Array of CoT event objects
Add Mission Contents
Unique identifier for the mission
Array of content hashes to add to the mission
Array of UIDs to add to the mission
MissionContentCreatedNotification for each hash.
Upload Mission Package
Unique identifier for the mission
Name of the file being uploaded
UID of the creator
Tool/privacy setting (“public” or “private”)
Optional hash for the content (auto-generated if not provided)
Mission Logs
Create Log Entry
Log entry data in TAK format
Created log entry with generated ID
Update Log Entry
Updated log entry data
Get Mission Logs
Mission identifier
Get logs from the last N seconds
Start timestamp for log range
End timestamp for log range
Delete Log Entry
Log entry identifier
Get All Logs
Mission Subscriptions
Subscribe to Mission
Mission identifier
Client UID subscribing to the mission
Subscription topic
Mission password if required
Sync data from last N seconds
Start time for sync
End time for sync
Unsubscribe from Mission
Mission identifier
Client UID to unsubscribe
Subscription topic
Only disconnect without removing subscription data
Get Mission Subscriptions
Mission identifier
Get All Subscriptions
Mission Hierarchy
Add Child Mission
Child mission identifier
Parent mission identifier
Remove Parent Mission
Child mission identifier
Get Child Missions
Parent mission identifier
Get Parent Mission
Child mission identifier
Mission Invitations
Send Mission Invitation (PUT)
Mission identifier
Invitation type
UID of the invitee
UID of the invitation sender
Mission role for the invitee
Send Mission Invitation (POST)
Mission identifier
UID of the invitation sender
Invitee contact information
UID of the invitee (in request body)
Role object with type field
Get Mission Invitations
Client UID to get invitations for (HTTPS only)
The HTTP variant returns an empty invitations list, while HTTPS requires a
clientUid query parameter and returns actual invitations.Mission Changes and External Data
Get Mission Changes
Mission identifier
Create External Mission Data
Mission identifier
External data object (e.g., ExCheck checklists)
Groups
Get All Groups
__ANON__ group.
HTTP vs HTTPS Differences
Both HTTP and HTTPS TAK API services implement the same mission endpoints with these key differences:- Controller: HTTP uses
HTTPTakApiCommunicationController, HTTPS usesHTTPSTakApiCommunicationController - Invitations: HTTP returns empty list, HTTPS requires
clientUidand returns actual invitations - URL Scheme: Mission upload returns
http://URLs for HTTP service,https://for HTTPS service
Source Code References
- HTTP Blueprint:
FreeTAKServer/services/http_tak_api_service/blueprints/mission_blueprint.py - HTTPS Blueprint:
FreeTAKServer/services/https_tak_api_service/blueprints/mission_blueprint.py