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
string
required
Unique identifier for the mission
string
UID of the mission creator
object
Mission subscription details for the created/updated mission
MissionCreatedNotification asynchronously.
Get Mission Details
string
required
Unique identifier for the mission
object
Complete mission details including metadata, contents, and subscriptions
Mission Content
Get Mission CoT Events
string
required
Unique identifier for the mission
array
Array of CoT event objects
Add Mission Contents
string
required
Unique identifier for the mission
array
Array of content hashes to add to the mission
array
Array of UIDs to add to the mission
MissionContentCreatedNotification for each hash.
Upload Mission Package
string
required
Unique identifier for the mission
string
required
Name of the file being uploaded
string
UID of the creator
string
default:"public"
Tool/privacy setting (“public” or “private”)
string
Optional hash for the content (auto-generated if not provided)
Mission Logs
Create Log Entry
object
required
Log entry data in TAK format
object
Created log entry with generated ID
Update Log Entry
object
required
Updated log entry data
Get Mission Logs
string
required
Mission identifier
integer
Get logs from the last N seconds
string
Start timestamp for log range
string
End timestamp for log range
Delete Log Entry
string
required
Log entry identifier
Get All Logs
Mission Subscriptions
Subscribe to Mission
string
required
Mission identifier
string
required
Client UID subscribing to the mission
string
Subscription topic
string
Mission password if required
integer
Sync data from last N seconds
string
Start time for sync
string
End time for sync
Unsubscribe from Mission
string
required
Mission identifier
string
required
Client UID to unsubscribe
string
Subscription topic
boolean
Only disconnect without removing subscription data
Get Mission Subscriptions
string
required
Mission identifier
Get All Subscriptions
Mission Hierarchy
Add Child Mission
string
required
Child mission identifier
string
required
Parent mission identifier
Remove Parent Mission
string
required
Child mission identifier
Get Child Missions
string
required
Parent mission identifier
Get Parent Mission
string
required
Child mission identifier
Mission Invitations
Send Mission Invitation (PUT)
string
required
Mission identifier
string
required
Invitation type
string
required
UID of the invitee
string
default:"unknown"
UID of the invitation sender
string
Mission role for the invitee
Send Mission Invitation (POST)
string
required
Mission identifier
string
UID of the invitation sender
string
Invitee contact information
string
UID of the invitee (in request body)
object
Role object with type field
Get Mission Invitations
string
required
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
string
required
Mission identifier
Create External Mission Data
string
required
Mission identifier
object
required
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