OpenTAKServer API
- GET /files/api/config
Required by CloudTAK, returns the following
{"uploadSizeLimit": 400}
- GET /api/health
Health check for Docker, returns the following
- GET /api/status
Server status used on the Dashboard page of the web UI
- Rtype:
dict
- GET /api/certificate
- POST /api/certificate
- GET /api/me
Get the details of the currently logged in user
- Rtype:
User
- GET /api/cot
Get CoT messages. All parameters are optional.
- Parameters:
how – The how attribute of the CoT message, i.e.
m-g,h-g-i-g-otype – The type attribute of the CoT message, i.e.
a-f-G-U-Csender_callsign – The callsign of the EUD that sent the CoT message
sender_uid – The UID of the EUD that sent the CoT message
page – The page number
per_page – The number of results per page
- GET /api/alerts
Get alerts. All parameters are optional.
- Parameters:
uid – The alert’s UID
sender_uid – The UID of the EUD that sent the alert
alert_type – The type of alert
page – The page number
per_page – The number of results per page
- GET /api/point
Query points. All parameters are optional.
- Parameters:
uid – The point’s UID
callsign – The point’s callsign
page – The page number
per_page – The number of results per page
- POST /api/rabbitmq/(path)
- GET /api/eud
Query EUDS. All parameters are optional.
- Parameters:
callsign – The EUD’s callsign
uid – The EUD’s callsign
username – The username that the EUD belongs to
page – The page number
per_page – The number of results per page
- GET /api/truststore
Downloads the server’s truststore with no authentication required.
- GET /api/map_state
Gets the latest data to be displayed on the web UI’s map
- GET /api/icon
Query map icons. All parameters are optional.
- Parameters:
filename
groupName
type2525b
- GET /api/itak_qr_string
The iTAK QR string in the following format:
OpenTAKServer_SERVER-ADDRESS,SERVER-ADDRESS,8089,SSL
- GET /api/casevac
- POST /api/casevac
- DELETE /api/casevac
- PATCH /api/data_packages
- DELETE /api/data_packages
- GET /api/data_packages
- GET /api/data_packages/download
- POST /api/data_packages
- GET /api/profiles
- POST /api/profiles
- DELETE /api/profiles
- GET /api/markers
- POST /api/markers
- DELETE /api/markers
- GET /api/mediamtx/webhook
- PATCH /api/mediamtx/stream/update
- POST /api/mediamtx/stream/add
- DELETE /api/mediamtx/stream/delete
- POST /api/external_auth
- POST /api/meshtastic/channel
- GET /api/meshtastic/channel
- DELETE /api/meshtastic/channel
- GET /api/meshtastic/generate_psk
- GET /api/packages/(atak_version)/(package_name)
- GET /api/packages/(package_name)
- GET /api/packages
- HEAD /api/packages/product.infz
- HEAD /api/packages/(atak_version)/product.infz
- GET /api/packages/product.infz
- GET /api/packages/(atak_version)/product.infz
- GET /api/packages/repositories.inf
- POST /api/packages
- PATCH /api/packages
- DELETE /api/packages
- GET /api/scheduler/
- GET /api/scheduler/jobs
- POST /api/scheduler/job/pause
- POST /api/scheduler/job/resume
- POST /api/scheduler/job/run
- POST /api/scheduler/job/modify
- POST /api/user/add
- POST /api/user/delete
- POST /api/user/password/reset
- POST /api/user/deactivate
- POST /api/user/activate
- POST /api/user/role
- POST /api/user/assign_eud
- GET /api/users
- GET /api/users/all
- GET /api/users/groups
Gets a list of group memberships for a user :parameter: username
- Return:
List of group memberships
- PUT /api/users/groups
Adds a user to one or more groups :parameter: groups - List of groups to add a user to :parameter: username :parameter: direction - Group direction, must be either IN or OUT
- Return:
400 if LDAP is enabled, no group or username is specified, or if the specified group or user doesn’t exist or the user is already in the group. 200 on success.
- Rtype:
Response
- GET /api/videos/thumbnail
- GET /api/videos/recordings
- DELETE /api/videos/recording
- GET /api/videos/recording
- GET /api/video_streams
- GET /api/missions
- PUT /api/missions
- POST /api/missions
- DELETE /api/missions
- POST /api/missions/invite
- GET /api/groups
Search groups with filters and pagination
- Parameter:
name
- Parameter:
type
- Parameter:
bitpos
- Parameter:
active
- Parameter:
page
- Parameter:
per_page
- Return:
JSON array of groups
- GET /api/groups/all
Get a list of all groups
- Return:
JSON array of groups
- Rtype:
Response
- GET /api/groups/members
Get a list of members of a group
- Parameter:
name
- Return:
JSON array of group members
- Rtype:
Response
- DELETE /api/groups/members
- POST /api/groups
Creates a new group
- Return:
400 if LDAP is enabled, the request is missing the name key or the group exists. 500 on server errors.
- Rtype:
Response
- PUT /api/groups
Adds a users to a group. This will allow all the user’s EUDs to subscribe and unsubscribe from the channels/groups they’re allowed to see. :parameter: users - A list of users to add to a group :parameter: group_name - Name of the group to add users to :parameter: direction - Group direction, can only be IN or OUT
- Return:
400 if LDAP is enabled, no group or username is specified, or if the specified group or user doesn’t exist or the user is already in the group. 200 on success.
- Rtype:
Response
- DELETE /api/groups
- GET /api/eud_stats
- GET /api/plugins
- POST /api/plugins
- GET /api/plugins/repo
- GET /api/plugins/(plugin_name)
- POST /api/plugins/(plugin_name)/disable
- POST /api/plugins/(plugin_name)/enable
- GET /oauth/token
Provides an OAuth token for TAKX and CloudTAK
- Parameters:
username
password
- Return:
jwt
- POST /oauth/token
Provides an OAuth token for TAKX and CloudTAK
- Parameters:
username
password
- Return:
jwt
- POST /api/atak_qr_string
Generates a QR string for ATAK certificate enrollment. ATAK certificate enrollment via QR code only works if your server has a Let’s Encrypt certificate. Params are sent as JSON.
- Parameters:
username
exp – The expiration time in unix epoch seconds i.e.1764260510
nbf – Not Before, the token will not be valid until this date in unix epoch seconds.
max – The maximum number of uses for this token.
- Return:
String in the format of tak://com.atakmap.app/enroll?host=server_address.com&username=your_username&token=jwt_token
- GET /api/atak_qr_string
Returns an existing ATAK QR string
- Return:
String in the format of tak://com.atakmap.app/enroll?host=server_address.com&username=your_username&token=jwt_token
- DELETE /api/atak_qr_string
Deletes a token
- Parameters:
username
- Return:
200 on success
- POST /api/ldap_login