Skip to main content
The System User API allows you to manage user accounts for FreeTAKServer, including creating, retrieving, updating, and deleting users.

Authentication

All System User endpoints require HTTP Basic Authentication with a valid API token. See Authentication for details.

Get all system users

Retrieve a list of all system users.

Endpoint

GET /ManageSystemUser/getAll

Response

SystemUsers
array
Array of system user objects

Example

curl -X GET http://localhost:19023/ManageSystemUser/getAll \
  -H "Authorization: Bearer your-api-token"
{
  "SystemUsers": [
    {
      "id": "1",
      "username": "admin",
      "token": "token-abc123",
      "certificatePackageName": "admin.p12"
    }
  ]
}

Get specific system user

Retrieve a specific system user by criteria.

Endpoint

GET /ManageSystemUser/getSystemUser

Request Body

username
string
Username to search for
id
string
User ID to search for

Response

Same structure as Get All endpoint, filtered by the provided criteria.

Example

curl -X GET http://localhost:19023/ManageSystemUser/getSystemUser \
  -H "Authorization: Bearer your-api-token" \
  -H "Content-Type: application/json" \
  -d '{"username": "admin"}'

Create system user

Create a new system user account.

Endpoint

POST /ManageSystemUser/postSystemUser

Request Body

username
string
required
Username for the new user
password
string
required
Password for the new user
token
string
API token (generated if not provided)
certificatePackageName
string
Certificate package name for client authentication

Response

Returns success message with created user details.

Example

curl -X POST http://localhost:19023/ManageSystemUser/postSystemUser \
  -H "Authorization: Bearer your-api-token" \
  -H "Content-Type: application/json" \
  -d '{
    "username": "newuser",
    "password": "securepass123"
  }'

Update system user

Update an existing system user’s information.

Endpoint

PUT /ManageSystemUser/putSystemUser

Request Body

id
string
required
ID of the user to update
username
string
New username
password
string
New password
token
string
New API token

Response

{
  "message": "user updated"
}

Example

curl -X PUT http://localhost:19023/ManageSystemUser/putSystemUser \
  -H "Authorization: Bearer your-api-token" \
  -H "Content-Type: application/json" \
  -d '{
    "id": "1",
    "password": "newpassword123"
  }'

Delete system user

Delete a system user account.

Endpoint

DELETE /ManageSystemUser/deleteSystemUser

Request Body

id
string
required
ID of the user to delete

Response

Returns success message confirming deletion.

Example

curl -X DELETE http://localhost:19023/ManageSystemUser/deleteSystemUser \
  -H "Authorization: Bearer your-api-token" \
  -H "Content-Type: application/json" \
  -d '{"id": "1"}'

Error Responses

All endpoints return appropriate HTTP status codes:
  • 200 - Success
  • 401 - Unauthorized (invalid or missing token)
  • 500 - Server error
Error responses include a message describing the issue:
{
  "message": "An error occurred attempting to retrieve user(s)."
}

Build docs developers (and LLMs) love