Developers

Atlas One Public API

Read-only REST API for Atlas One data: endpoints, parameters, responses and examples.

Overview

Base URL
https://api.atlantisfrontline.com/v1
Authentication
Bearer API key in the Authorization header.

Read-only REST API for Atlas One data. Phase 1 supports GET only.

Authentication. Send Authorization: Bearer af_live_.... Keys are created by an organization Admin under Administration, API Keys, and are shown once. A key has read scopes and may be limited to one location and its descendants.

Scopes. locations:read, people:read, roles:read, missions:read, launches:read (launches, tasks, answers and comments).

Filtering. filter is JSON: {"where":{"status":"active","updated_at":{"gte":"2026-01-01T00:00:00Z"}},"order":"updated_at desc","limit":100,"fields":["id","name"]}. A bare value means equality. Operators: eq, neq, gt, gte, lt, lte, between, in, nin, like (case-insensitive, supply %), null. Combine conditions with and and or arrays (up to 4 levels, 50 conditions). Top-level limit, order, fields and cursor override the filter; updated_since adds an updated_at lower bound.

Paging. Lists return has_more and next_cursor; pass it back as cursor. Default page size is 100, maximum 500.

Limits. 5 requests per second and 25,000 per UTC day for the whole organization. Over the limit returns 429 with Retry-After.

Errors. application/problem+json with type, title, status, detail, code and request_id.

Evidence files. Answers list evidence files; files stored for your organization carry a signed url valid for one hour (url_expires_at).

Error Fields

Every error response uses this body (application/problem+json).

NameTypeDescription
typestring (uri)Always present.
titlestringAlways present.
statusintegerAlways present.
detailstringAlways present.
codestringAlways present.
request_idstringAlways present.

General

GET/openapi.json

OpenAPI document

Responses

StatusDescriptionBody
200This document.object

Example

curl "https://api.atlantisfrontline.com/v1/openapi.json"
GET/me

Organization, key and limits

Responses

StatusDescriptionBody
200The calling key.Me
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Me Fields

NameTypeDescription
organizationobjectAlways present.
keyobjectAlways present.
limitsobjectAlways present.

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/me"

Locations

GET/locations

List locations

Requires scope locations:read. Sortable fields: name, created_at, updated_at.

Parameters

NameInTypeRequiredDescription
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
limitqueryintegerNoPage size, 1 to 500 (default 100).
cursorquerystringNonext_cursor of the previous page.
orderquerystringNoField and direction, such as updated_at desc.
fieldsquerystringNoComma separated fields to return; id is always kept.
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200A page of locations.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/locations"
GET/locations/count

Count locations

Requires scope locations:read. Counts rows matching the filter; order, limit and cursor are ignored.

Parameters

NameInTypeRequiredDescription
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200The count.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/locations/count"
GET/locations/{id}

Get one location

Requires scope locations:read.

Parameters

NameInTypeRequiredDescription
idpathstring (uuid)Yes
fieldsquerystringNoComma separated fields to return; id is always kept.

Responses

StatusDescriptionBody
200The location.Location
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
404Not found (not_found).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Location Fields

NameTypeDescription
idstring (uuid)Always present.
parent_idstring (uuid) or null
namestringAlways present.
external_idstring or null
location_numberstring or null
node_typestring or null
level_codestring or null
location_typestring or null
statusstring or null
addressstring or null
citystring or null
state_provincestring or null
postal_codestring or null
countrystring or null
timezonestring or null
latitudenumber or null
longitudenumber or null
opening_datestring (date) or null
closing_datestring (date) or null
brandstring or null
formatstring or null
created_atstring (date-time)Always present.
updated_atstring (date-time)Always present.

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/locations/{id}"

People

GET/people

List people

Requires scope people:read. Sortable fields: full_name, created_at, updated_at.

Parameters

NameInTypeRequiredDescription
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
limitqueryintegerNoPage size, 1 to 500 (default 100).
cursorquerystringNonext_cursor of the previous page.
orderquerystringNoField and direction, such as updated_at desc.
fieldsquerystringNoComma separated fields to return; id is always kept.
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200A page of people.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/people"
GET/people/count

Count people

Requires scope people:read. Counts rows matching the filter; order, limit and cursor are ignored.

Parameters

NameInTypeRequiredDescription
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200The count.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/people/count"
GET/people/{id}

Get one person

Requires scope people:read.

Parameters

NameInTypeRequiredDescription
idpathstring (uuid)Yes
fieldsquerystringNoComma separated fields to return; id is always kept.

Responses

StatusDescriptionBody
200The person.Person
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
404Not found (not_found).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Person Fields

NameTypeDescription
idstring (uuid)Always present.
external_idstring or null
employee_idstring or null
full_namestring or null
preferred_namestring or null
emailstring or null
job_titlestring or null
departmentstring or null
role_idstring (uuid) or null
role_namestring or null
role_base_typestring or null
location_idstring (uuid) or null
manager_idstring (uuid) or null
statusstring or null
user_statusstring or null
vendor_companystring or null
access_expires_atstring (date-time) or null
languagestring or null
timezonestring or null
start_datestring (date) or null
end_datestring (date) or null
created_atstring (date-time)Always present.
updated_atstring (date-time)Always present.

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/people/{id}"

Roles

GET/roles

List roles

Requires scope roles:read. Sortable fields: name, created_at.

Parameters

NameInTypeRequiredDescription
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
limitqueryintegerNoPage size, 1 to 500 (default 100).
cursorquerystringNonext_cursor of the previous page.
orderquerystringNoField and direction, such as updated_at desc.
fieldsquerystringNoComma separated fields to return; id is always kept.
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200A page of roles.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/roles"
GET/roles/count

Count roles

Requires scope roles:read. Counts rows matching the filter; order, limit and cursor are ignored.

Parameters

NameInTypeRequiredDescription
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200The count.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/roles/count"
GET/roles/{id}

Get one role

Requires scope roles:read.

Parameters

NameInTypeRequiredDescription
idpathstring (uuid)Yes
fieldsquerystringNoComma separated fields to return; id is always kept.

Responses

StatusDescriptionBody
200The role.Role
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
404Not found (not_found).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Role Fields

NameTypeDescription
idstring (uuid)Always present.
namestringAlways present.
base_typestringAlways present.
is_systembooleanAlways present.
permissionsarray of stringAlways present.
created_atstring (date-time)Always present.

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/roles/{id}"

Missions

GET/missions

List missions

Requires scope missions:read. Sortable fields: name, created_at, updated_at.

Parameters

NameInTypeRequiredDescription
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
limitqueryintegerNoPage size, 1 to 500 (default 100).
cursorquerystringNonext_cursor of the previous page.
orderquerystringNoField and direction, such as updated_at desc.
fieldsquerystringNoComma separated fields to return; id is always kept.
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200A page of missions.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/missions"
GET/missions/count

Count missions

Requires scope missions:read. Counts rows matching the filter; order, limit and cursor are ignored.

Parameters

NameInTypeRequiredDescription
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200The count.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/missions/count"
GET/missions/{id}

Get one mission

Requires scope missions:read.

Parameters

NameInTypeRequiredDescription
idpathstring (uuid)Yes
fieldsquerystringNoComma separated fields to return; id is always kept.

Responses

StatusDescriptionBody
200The mission.Mission
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
404Not found (not_found).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Mission Fields

NameTypeDescription
idstring (uuid)Always present.
namestringAlways present.
descriptionstring or null
statusstringAlways present.
mission_typestring or null
category_idstring (uuid) or null
category_namestring or null
tagsarray of string or null
current_version_idstring (uuid) or null
versioninteger or null
assignment_modestring or null
scheduleany
owner_idstring (uuid) or null
created_atstring (date-time)Always present.
updated_atstring (date-time)Always present.
published_atstring (date-time) or null
closed_atstring (date-time) or null
archived_atstring (date-time) or null

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/missions/{id}"

Launches

GET/launches

List launches

Requires scope launches:read. Sortable fields: created_at, updated_at.

Parameters

NameInTypeRequiredDescription
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
limitqueryintegerNoPage size, 1 to 500 (default 100).
cursorquerystringNonext_cursor of the previous page.
orderquerystringNoField and direction, such as updated_at desc.
fieldsquerystringNoComma separated fields to return; id is always kept.
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200A page of launches.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/launches"
GET/launches/count

Count launches

Requires scope launches:read. Counts rows matching the filter; order, limit and cursor are ignored.

Parameters

NameInTypeRequiredDescription
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200The count.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/launches/count"
GET/launches/{id}

Get one launch

Requires scope launches:read.

Parameters

NameInTypeRequiredDescription
idpathstring (uuid)Yes
fieldsquerystringNoComma separated fields to return; id is always kept.

Responses

StatusDescriptionBody
200The launch.Launch
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
404Not found (not_found).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Launch Fields

NameTypeDescription
idstring (uuid)Always present.
mission_idstring (uuid)Always present.
mission_namestring or null
mission_version_idstring (uuid) or null
version_numberinteger or null
run_idstring (uuid) or null
occurrence_onstring (date) or null
assignment_modestring or null
location_idstring (uuid) or null
person_idstring (uuid) or null
statusstringAlways present.
starts_atstring (date-time) or null
due_atstring (date-time) or null
closes_atstring (date-time) or null
started_atstring (date-time) or null
completed_atstring (date-time) or null
missed_atstring (date-time) or null
cancelled_atstring (date-time) or null
is_lateboolean or null
requires_validationboolean or null
validation_statusstring or null
validated_atstring (date-time) or null
tasks_totalintegerAlways present.
tasks_completedintegerAlways present.
score_earnednumber or null
score_possiblenumber or null
score_percentnumber or null
failedboolean or null
created_atstring (date-time)Always present.
updated_atstring (date-time)Always present.

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/launches/{id}"
GET/launches/{id}/comments

List the comments of one launch

Requires scope launches:read. Same paging and filters as /comments.

Parameters

NameInTypeRequiredDescription
idpathstring (uuid)Yes
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
limitqueryintegerNoPage size, 1 to 500 (default 100).
cursorquerystringNonext_cursor of the previous page.
orderquerystringNoField and direction, such as updated_at desc.
fieldsquerystringNoComma separated fields to return; id is always kept.
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200A page of comments.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/launches/{id}/comments"

Tasks

GET/tasks

List tasks

Requires scope launches:read. Sortable fields: created_at, updated_at.

Parameters

NameInTypeRequiredDescription
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
limitqueryintegerNoPage size, 1 to 500 (default 100).
cursorquerystringNonext_cursor of the previous page.
orderquerystringNoField and direction, such as updated_at desc.
fieldsquerystringNoComma separated fields to return; id is always kept.
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200A page of tasks.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/tasks"
GET/tasks/count

Count tasks

Requires scope launches:read. Counts rows matching the filter; order, limit and cursor are ignored.

Parameters

NameInTypeRequiredDescription
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200The count.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/tasks/count"
GET/tasks/{id}

Get one task

Requires scope launches:read.

Parameters

NameInTypeRequiredDescription
idpathstring (uuid)Yes
fieldsquerystringNoComma separated fields to return; id is always kept.

Responses

StatusDescriptionBody
200The task.Task
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
404Not found (not_found).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Task Fields

NameTypeDescription
idstring (uuid)Always present.
launch_idstring (uuid)Always present.
mission_idstring (uuid) or null
namestring or null
person_idstring (uuid) or null
statusstringAlways present.
available_atstring (date-time) or null
started_atstring (date-time) or null
completed_atstring (date-time) or null
approved_atstring (date-time) or null
rejected_atstring (date-time) or null
cancelled_atstring (date-time) or null
score_earnednumber or null
score_possiblenumber or null
failedboolean or null
failure_reasonsany
created_atstring (date-time)Always present.
updated_atstring (date-time)Always present.

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/tasks/{id}"

Answers

GET/answers

List answers

Requires scope launches:read. Sortable fields: created_at, updated_at.

Parameters

NameInTypeRequiredDescription
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
limitqueryintegerNoPage size, 1 to 500 (default 100).
cursorquerystringNonext_cursor of the previous page.
orderquerystringNoField and direction, such as updated_at desc.
fieldsquerystringNoComma separated fields to return; id is always kept.
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200A page of answers.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/answers"
GET/answers/count

Count answers

Requires scope launches:read. Counts rows matching the filter; order, limit and cursor are ignored.

Parameters

NameInTypeRequiredDescription
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200The count.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/answers/count"
GET/answers/{id}

Get one answer

Requires scope launches:read.

Parameters

NameInTypeRequiredDescription
idpathstring (uuid)Yes
fieldsquerystringNoComma separated fields to return; id is always kept.

Responses

StatusDescriptionBody
200The answer.Answer
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
404Not found (not_found).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Answer Fields

NameTypeDescription
idstring (uuid)Always present.
task_idstring (uuid)Always present.
launch_idstring (uuid)Always present.
mission_idstring (uuid) or null
question_idstring (uuid) or null
questionstring or null
question_kindstring or null
reporting_keystring or null
valueany
explanationstring or null
evidencearray of EvidenceFileAlways present.
roundsany
statestring or null
submitted_bystring (uuid) or null
submitted_atstring (date-time) or null
amended_atstring (date-time) or null
created_atstring (date-time)Always present.
updated_atstring (date-time)Always present.

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/answers/{id}"

Comments

GET/comments

List comments

Requires scope launches:read. Sortable fields: created_at, updated_at.

Parameters

NameInTypeRequiredDescription
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
limitqueryintegerNoPage size, 1 to 500 (default 100).
cursorquerystringNonext_cursor of the previous page.
orderquerystringNoField and direction, such as updated_at desc.
fieldsquerystringNoComma separated fields to return; id is always kept.
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200A page of comments.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/comments"
GET/comments/count

Count comments

Requires scope launches:read. Counts rows matching the filter; order, limit and cursor are ignored.

Parameters

NameInTypeRequiredDescription
filterquerystringNoJSON: {"where":{...},"order":"...","limit":n,"fields":[...]}
updated_sincequerystring (date-time)NoOnly rows updated at or after this ISO 8601 time.

Responses

StatusDescriptionBody
200The count.object
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/comments/count"
GET/comments/{id}

Get one comment

Requires scope launches:read.

Parameters

NameInTypeRequiredDescription
idpathstring (uuid)Yes
fieldsquerystringNoComma separated fields to return; id is always kept.

Responses

StatusDescriptionBody
200The comment.Comment
400The request is not valid (invalid_request).Problem
401The key is missing, invalid or expired (invalid_key, expired_key).Problem
403The key lacks the scope, or the API is off (insufficient_scope, api_disabled).Problem
404Not found (not_found).Problem
429Rate limit or daily limit reached (rate_limited, daily_limit).Problem
500Something went wrong (internal_error).Problem

Comment Fields

NameTypeDescription
idstring (uuid)Always present.
launch_idstring (uuid)Always present.
author_idstring (uuid) or null
author_namestring or null
bodystringAlways present.
mentioned_person_idsarray of string (uuid)Always present.
created_atstring (date-time)Always present.
edited_atstring (date-time) or null
updated_atstring (date-time)Always present.

Example

curl -H "Authorization: Bearer af_live_..." "https://api.atlantisfrontline.com/v1/comments/{id}"