OKAPI:Astrolabe API (2025-04-15)

Download OpenAPI specification:

API to access the coordination services of OKAPI:Astrolabe.

chats

This tag groups all endpoints that allow the access to chats.

Get a list of open chats

Returns a list of all chats that are currently open where the user is joined.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

Create a new chat

Creates a new chat between two organizations and return the chat.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

Request Body schema: application/json
case_id
required
string (ObjectId.component) ^[a-f\d]{24}$

Unique identifier of the resource.

text
required
string <= 1000 characters

The content of the message.

Responses

Request samples

Content type
application/json
{
  • "case_id": "507f1f77bcf86cd799439011",
  • "text": "string"
}

Response samples

Content type
application/json
{
  • "chat_id": "dd7f0f73-22b8-4e18-a1bb-8ca0cb61b51a",
  • "last_message": { },
  • "name": "string",
  • "case_id": "507f1f77bcf86cd799439011",
  • "organization_ids": [
    ]
}

Update a chat given by ID

This endpoint allows changes of some attributes of a chat.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

chat_id
required
string <uuid> (UuidComponent)
Example: dd7f0f73-22b8-4e18-a1bb-8ca0cb61b51a

The identifier of an existing chat in the system.

Request Body schema: application/json
required
object

Indicates which user opened the chat in the UI at which time.

Responses

Request samples

Content type
application/json
{
  • "opened": {
    }
}

Response samples

Content type
application/json
{
  • "status": 500,
  • "type": "API_ERROR",
  • "message": "An unknown error occurred. Please try again later or contact us if the problem persists.",
  • "code": "string",
  • "validation": [
    ]
}

Get a list of messages in the chat.

Returns a list of messages in the chat associated with the organization.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

chat_id
required
string <uuid> (UuidComponent)
Example: dd7f0f73-22b8-4e18-a1bb-8ca0cb61b51a

The identifier of an existing chat in the system.

query Parameters
page
integer [ 1 .. 100000 ]
Default: 1

Set the page to go through a list of paginated documents.

limit
integer [ 1 .. 10000 ]
Default: 25

Set this parameter to limit the count of items returned in a single response.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

Add a new message in the chat.

Creates a new message in the chat associated with the organization.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

chat_id
required
string <uuid> (UuidComponent)
Example: dd7f0f73-22b8-4e18-a1bb-8ca0cb61b51a

The identifier of an existing chat in the system.

Request Body schema: application/json
text
required
string <= 1000 characters

The content of the message.

Responses

Request samples

Content type
application/json
{
  • "text": "string"
}

Response samples

Content type
application/json
{
  • "message_id": "dd7f0f73-22b8-4e18-a1bb-8ca0cb61b51a",
  • "text": "string"
}

general

This tag groups all endpoints that are not linked to a specific resource.

Health check

Check whether the API is up and running.

Responses

cdms

This tag groups all endpoints that manage CDMs, independent of a specific conjunction event.

Returns all CDMS of a case

Returns a list of all CDMS related to a specific case, identified by the given ID.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

Download a specific CDM file in a given coordination case

This endpoint returns the requested CDM by its ID for a case, in the requested JSON, XML or KVN format, generated for a specific organization.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

cdm_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the CDM you request.

query Parameters
format
required
string
Default: "kvn"
Enum: "json" "kvn" "xml"

Responses

Response samples

Content type
Example
{
  • "header": {
    },
  • "relative_metadata": {
    },
  • "object1_metadata": {
    },
  • "object2_metadata": {
    },
  • "object1_data": {
    },
  • "object2_data": {
    }
}

Download CDMs

This endpoint allows for downloading CDMs, applying relevant filters and paginating the results.

query Parameters
limit
integer [ 1 .. 10000 ]
Default: 25

Set this parameter to limit the count of items returned in a single response.

page
integer [ 1 .. 100000 ]
Default: 1

Set the page to go through a list of paginated documents.

object or number

Filter by collision probability. Can be a number or an object for comparison.

object or number

Filter by total miss distance. Can be a number or an object for comparison.

object or number

Filter by radial distance. Can be a number or an object for comparison.

time_to_tca
string or object

The time to TCA, given as duration (e.g. 1d4h10m).

object1_name
string
object2_name
string
object1_norad_id
integer <int32> (NoradIdComponent) [ 1 .. 999999999 ]

A NORAD ID, also known as satellite catalog number.

object2_norad_id
integer <int32> (NoradIdComponent) [ 1 .. 999999999 ]

A NORAD ID, also known as satellite catalog number.

object1_cospar_id
string (CosparIdComponent) \d{4}-?\d{3}[A-Z]{1,3}

A COSPAR ID, also known as international designator.

object2_cospar_id
string (CosparIdComponent) \d{4}-?\d{3}[A-Z]{1,3}

A COSPAR ID, also known as international designator.

operator2_name
string
latest
boolean
created_after
string <date-time> (DateTimeComponent) ^([1-9][0-9]{3})-((01|03|05|07|08|10|12)-(0[1...
Example: created_after=2014-12-31T23:59:59.124Z

ISO8601 date/time definition.

originator
string
format
required
string
Enum: "kvn" "xml" "json"

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

ephemerides

This tag groups all endpoints that manage ephemerides, independent of a specific conjunction event.

Download an OEM file for a given case and organization

This endpoint returns the requested OEM by its ID for a case, in the requested JSON, XML or KVN format, generated for a specific organization.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

oem_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the OEM you request.

query Parameters
format
required
string
Default: "kvn"
Enum: "json" "kvn" "xml"

Responses

Response samples

Content type
{
  • "header": {
    },
  • "oem_segments": [
    ]
}

Download an OPM file for a given case and organization

This endpoint returns the requested OPM by its ID for a case, in the requested JSON, XML or KVN format, generated for a specific organization.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

opm_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the OPM you request.

query Parameters
format
required
string
Default: "kvn"
Enum: "json" "kvn" "xml"

Responses

Response samples

Content type
{
  • "header": {
    },
  • "opm_segments": [
    ]
}

Download an NDM file for a given case and organization

This endpoint returns the requested NDM by its ID for a case, in the requested JSON or XML format, generated for a specific organization.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

ndm_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the NDM you request.

query Parameters
format
required
string
Default: "xml"
Enum: "json" "xml"

Responses

Response samples

Content type
{
  • "oems": [
    ],
  • "opms": [
    ],
  • "comments": [
    ],
  • "user_defined": { }
}

Upload operational ephemerides

This endpoint allows for uploading operational ephemerides for a specific case with a stringified file content or binary file.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

Request Body schema:
ccsds_type
string
Enum: "oem" "opm" "ndm"

The CCSDS file type being uploaded.

format
string
Enum: "json" "kvn" "xml"

The format of the ephemerides data being uploaded.

file
required
string <binary>

The binary ephemerides file content.

Responses

Request samples

Content type
No sample

Response samples

Content type
application/json
{
  • "document_id": null,
  • "message": "string"
}

Download ephemerides

This endpoint allows for downloading operational and tentative ephemerides.

query Parameters
object_name
string
object_id
string

NORAD ID or Cospar ID of the object; will be matched with the object ID in the orbit data files.

operational
boolean
originator
string
latest
boolean
uploaded_after
string <date-time> (DateTimeComponent) ^([1-9][0-9]{3})-((01|03|05|07|08|10|12)-(0[1...
Example: uploaded_after=2014-12-31T23:59:59.124Z

ISO8601 date/time definition.

format
required
string
Enum: "kvn" "xml" "json"

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

Upload operational ephemerides

This endpoint allows for uploading operational ephemerides for a satellite independent of a specific case.

Request Body schema:
ccsds_type
string
Enum: "oem" "opm" "ndm"

The CCSDS file type being uploaded.

format
string
Enum: "json" "kvn" "xml"

The format of the ephemerides data being uploaded.

file
required
string <binary>

The binary ephemerides file content.

Responses

Request samples

Content type
No sample

Response samples

Content type
application/json
{
  • "document_id": null,
  • "message": "string"
}

organization_invitations

This tag groups all endpoints that handle invitations for new organizations.

Delete a pending invitation

Deletes the pending invitation. This is not possible for accepted invitations.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

invitation_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing invitation in the system.

Responses

Response samples

Content type
application/json
Example

This error is returned when the given organization does not exist.

{
  • "status": 404,
  • "type": "ORGANIZATION_NOT_FOUND",
  • "message": "There is no organization with this id (507f1f77bcf86cd799439011)."
}

Get an organization invitation

This endpoint allows to retrieve a specific organization invitation.

query Parameters
include_handled
boolean

If true, includes accepted and rejected invitations

is_guest
boolean

Determine if a given organization was invited as a guest

invitation_id
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: invitation_id=507f1f77bcf86cd799439011

Get the invitation by id

invited_organization
string

Get the invitation by the organization name

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Accept or Reject an organization invitation

This endpoint allows to accept/reject a specific organization invitation.

query Parameters
invitation_token
required
string^[A-Za-z0-9-_=]+\.[A-Za-z0-9-_=]+\.[A-Za-z0-9...

The JSON Web Token (JWT) carrying the invitation information.

decision
required
string
Enum: "accept" "reject" "opt-out"
Request Body schema: application/json
required
object
required
object

Responses

Request samples

Content type
application/json
{
  • "user": {
    },
  • "organization": {
    }
}

Response samples

Content type
application/json
{
  • "status": 500,
  • "type": "API_ERROR",
  • "message": "An unknown error occurred. Please try again later or contact us if the problem persists.",
  • "code": "string",
  • "validation": [
    ]
}

user_invitations

This tag groups all endpoints that handle invitations for new users.

Create a new invitation

This endpoint allows to create a new invitation to add a new user to the organization.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

Request Body schema: application/json
email
required
string <email> (email)

Responses

Request samples

Content type
application/json
{
  • "email": "user@example.com"
}

Response samples

Content type
application/json
Example
{
  • "invitation_type": "user",
  • "invitation_id": "507f1f77bcf86cd799439011",
  • "inserted": "2014-12-31T23:59:59.124Z",
  • "organization_id": "507f1f77bcf86cd799439011",
  • "user_id": "507f1f77bcf86cd799439011",
  • "email": "user@example.com"
}

Delete a pending invitation

Deletes the pending invitation. This is not possible for accepted invitations.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

invitation_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing invitation in the system.

Responses

Response samples

Content type
application/json
Example

This error is returned when the given organization does not exist.

{
  • "status": 404,
  • "type": "ORGANIZATION_NOT_FOUND",
  • "message": "There is no organization with this id (507f1f77bcf86cd799439011)."
}

Get an invitation

This endpoint allows to retrieve a specific invitation.

path Parameters
invitation_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing invitation in the system.

Responses

Response samples

Content type
application/json
Example
{
  • "invitation_type": "user",
  • "invitation_id": "507f1f77bcf86cd799439011",
  • "inserted": "2014-12-31T23:59:59.124Z",
  • "organization_id": "507f1f77bcf86cd799439011",
  • "user_id": "507f1f77bcf86cd799439011",
  • "email": "user@example.com",
  • "organization": {
    },
  • "user": {
    }
}

Accept an invitation

This endpoint allows to accept a specific invitation and join an organization.

path Parameters
invitation_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing invitation in the system.

Responses

Response samples

Content type
application/json
{
  • "status": 500,
  • "type": "API_ERROR",
  • "message": "An unknown error occurred. Please try again later or contact us if the problem persists.",
  • "code": "string",
  • "validation": [
    ]
}

Reject an invitation

This endpoint allows to reject a specific invitation.

path Parameters
invitation_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing invitation in the system.

Responses

Response samples

Content type
application/json
{
  • "status": 500,
  • "type": "API_ERROR",
  • "message": "An unknown error occurred. Please try again later or contact us if the problem persists.",
  • "code": "string",
  • "validation": [
    ]
}

members

This tag groups all endpoints that handle members of organizations.

Get all members of an organization

This endpoint returns a list of all members in an organization.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

query Parameters
limit
integer [ 1 .. 10000 ]
Default: 25

Set this parameter to limit the count of items returned in a single response.

page
integer [ 1 .. 100000 ]
Default: 1

Set the page to go through a list of paginated documents.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

Remove a member from the organization

Removes a user from an organization. The user will still exist, but doesn't have access to the organization.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

required
Auth0IdComponent (string) or ObjectIdComponent (string) (UserIdComponent)

The identifier of an existing user in the system.

Responses

Response samples

Content type
application/json
{
  • "status": 404,
  • "type": "ORGANIZATION_NOT_FOUND",
  • "message": "There is no organization with this id (507f1f77bcf86cd799439011). Please validate your request or contact OKAPI:Orbits GmbH if the problem persists."
}

organizations

This tag groups all endpoints to manage organizations.

Create a new organization

This endpoint creates a new organization with some basic fields.

Request Body schema: application/json
name
required
string (name) [ 1 .. 255 ] characters
required
object (address)

The address of the company is currently reduced to the country. More fields could follow later.

object (settings)

Settings that apply for the whole company.

Responses

Request samples

Content type
application/json
{
  • "name": "OKAPI:Orbits GmbH",
  • "address": {
    },
  • "settings": {
    }
}

Response samples

Content type
application/json
{
  • "organization_id": "507f1f77bcf86cd799439011",
  • "roles": [
    ],
  • "name": "OKAPI:Orbits GmbH",
  • "owner_id": "507f1f77bcf86cd799439011",
  • "address": {
    },
  • "members": [
    ],
  • "settings": {
    },
  • "process_only_cdms_for_defined_satellites": true
}

Get all organizations

This endpoint returns a list of all accessible organizations.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

Get an organization by ID

This endpoint returns a specific and existing organization.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

Responses

Response samples

Content type
application/json
{
  • "organization_id": "507f1f77bcf86cd799439011",
  • "roles": [
    ],
  • "name": "OKAPI:Orbits GmbH",
  • "owner_id": "507f1f77bcf86cd799439011",
  • "address": {
    },
  • "members": [
    ],
  • "settings": {
    },
  • "process_only_cdms_for_defined_satellites": true
}

Update an organization by ID

This endpoint allows changes on some attributes of the organization.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

Request Body schema: application/json
name
string (name) [ 1 .. 255 ] characters
object (address)

The address of the company is currently reduced to the country. More fields could follow later.

Array of objects (members)

A list of all members assigned to this organization.

object (settings)

Settings that apply for the whole company.

Responses

Request samples

Content type
application/json
{
  • "name": "OKAPI:Orbits GmbH",
  • "address": {
    },
  • "members": [
    ],
  • "settings": {
    }
}

Response samples

Content type
application/json
{
  • "organization_id": "507f1f77bcf86cd799439011",
  • "roles": [
    ],
  • "name": "OKAPI:Orbits GmbH",
  • "owner_id": "507f1f77bcf86cd799439011",
  • "address": {
    },
  • "members": [
    ],
  • "settings": {
    },
  • "process_only_cdms_for_defined_satellites": true
}

Get the settings of an organization by ID

This endpoint returns the settings of the organization.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

Responses

Response samples

Content type
application/json
{
  • "timezone": "string",
  • "space_track_name": "string",
  • "risk_assessment_thresholds": {
    },
  • "data_sharing": {
    }
}

Create a new organization invitation

This endpoint allows to create a new invitation from an organization to an organization.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

Request Body schema: application/json
invited_organization_name
required
string (invited_organization_name) <= 100 characters

The name of the organization receiving the invitation.

invited_organization_email
required
string <email> (invited_organization_email)

Email address of the organization being invited.

invitation_message
string (invitation_message) <= 500 characters

Optional message to include with the invitation.

is_verified
required
boolean

Flag indicating wether the email user was provided by the inviting user or coming from the object metadata.

sat1_object_name
required
string

Name of the satellite of the inviting operator

sat2_object_name
required
string

Name of the satellite of the invited operator

Responses

Request samples

Content type
application/json
{
  • "invited_organization_name": "string",
  • "invited_organization_email": "user@example.com",
  • "invitation_message": "string",
  • "is_verified": true,
  • "sat1_object_name": "string",
  • "sat2_object_name": "string"
}

Response samples

Content type
application/json
Example
{
  • "invitation_type": "user",
  • "invitation_id": "507f1f77bcf86cd799439011",
  • "inserted": "2014-12-31T23:59:59.124Z",
  • "organization_id": "507f1f77bcf86cd799439011",
  • "user_id": "507f1f77bcf86cd799439011",
  • "email": "user@example.com"
}

List notifications for a specific organization

Retrieve a paginated list of notifications related to a specific organization, sorted by descending insertion date.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

query Parameters
page
integer [ 1 .. 100000 ]
Default: 1

Set the page to go through a list of paginated documents.

limit
integer [ 1 .. 10000 ]
Default: 25

Set this parameter to limit the count of items returned in a single response.

opened
boolean

Filter notifications by their opened status.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

users

This tag groups all endpoints to manage users in general.

Create a new user

This endpoint creates a new user profile in the system.

Request Body schema: application/json

First name, last name, email address and phone number are mandatory to create a new user. Other fields are optional and not necessary.

first_name
required
string <= 50 characters

The first name of the user.

last_name
required
string <= 50 characters

The last name of the user.

email
required
string <email> <= 256 characters

The email of the user used for authentication and contact.

phone_number
required
string (PhoneNumber.component) ^\+?\d{1,4}?[-.\s]?\(?\d{1,3}?\)?[-.\s]?\d{1,...

The office phone number to contact the user in office times.

on_call_number
string (PhoneNumber.component) ^\+?\d{1,4}?[-.\s]?\(?\d{1,3}?\)?[-.\s]?\d{1,...

The emergency phone number to contact when the user is on call.

object
object

Responses

Request samples

Content type
application/json
{
  • "first_name": "James",
  • "last_name": "Kirk",
  • "email": "james.kirk@starfleet.com",
  • "phone_number": "+4912345678",
  • "on_call_number": "+4912345678",
  • "external": {
    },
  • "settings": {
    }
}

Response samples

Content type
application/json
{
  • "user_id": "507f1f77bcf86cd799439011",
  • "first_name": "James",
  • "last_name": "Kirk",
  • "email": "james.kirk@starfleet.com",
  • "phone_number": "+4912345678",
  • "on_call_number": "+4912345678",
  • "external": {
    },
  • "settings": {
    }
}

Get a user by ID

This endpoint returns a specific and existing user.

path Parameters
required
Auth0IdComponent (string) or ObjectIdComponent (string) (UserIdComponent)

The identifier of an existing user in the system.

query Parameters
identifier
string
Value: "auth0"

You can request a user based on external identifiers like auth0. Without this attribute the user_id is being used.

Responses

Response samples

Content type
application/json
{
  • "user_id": "507f1f77bcf86cd799439011",
  • "first_name": "James",
  • "last_name": "Kirk",
  • "email": "james.kirk@starfleet.com",
  • "phone_number": "+4912345678",
  • "on_call_number": "+4912345678",
  • "external": {
    },
  • "settings": {
    }
}

Update a user by ID

This endpoint can update some details of an existing user.

path Parameters
required
Auth0IdComponent (string) or ObjectIdComponent (string) (UserIdComponent)

The identifier of an existing user in the system.

Request Body schema: application/json

Updating the email is currently not supported. All other fields except the ID can be updated.

first_name
string (first_name) <= 50 characters

The first name of the user.

last_name
string (last_name) <= 50 characters

The last name of the user.

phone_number
string (PhoneNumber.component) ^\+?\d{1,4}?[-.\s]?\(?\d{1,3}?\)?[-.\s]?\d{1,...

A generic phone number.

on_call_number
string (PhoneNumber.component) ^\+?\d{1,4}?[-.\s]?\(?\d{1,3}?\)?[-.\s]?\d{1,...

A generic phone number.

object

Responses

Request samples

Content type
application/json
{
  • "first_name": "James",
  • "last_name": "Kirk",
  • "phone_number": "+4912345678",
  • "on_call_number": "+4912345678",
  • "settings": {
    }
}

Response samples

Content type
application/json
{
  • "user_id": "507f1f77bcf86cd799439011",
  • "first_name": "James",
  • "last_name": "Kirk",
  • "email": "james.kirk@starfleet.com",
  • "phone_number": "+4912345678",
  • "on_call_number": "+4912345678",
  • "external": {
    },
  • "settings": {
    }
}

Get what is new for a user

This endpoint returns what is new for the given user.

path Parameters
required
Auth0IdComponent (string) or ObjectIdComponent (string) (UserIdComponent)

The identifier of an existing user in the system.

Responses

Response samples

Content type
application/json
{
  • "unread_notifications": 0,
  • "chats_with_unread_messages": 0
}

Mark all chats or notifications for the user as opened

This endpoint updates the chats or notifications document to set them all as read.

path Parameters
required
Auth0IdComponent (string) or ObjectIdComponent (string) (UserIdComponent)

The identifier of an existing user in the system.

mark_all_as_read
required
string
Enum: "mark_all_chats_as_read" "mark_all_notifications_as_read"

Responses

Response samples

Content type
application/json
null

roles

This tag groups all endpoints to manage the roles of an organization.

Create a new role

This endpoint allows you to add a new role to an existing organization.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

Request Body schema: application/json
name
required
string (properties-name) [ 1 .. 255 ] characters
Array of objects (permissions)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "permissions": [ ]
}

Response samples

Content type
application/json
{
  • "role_id": "dd7f0f73-22b8-4e18-a1bb-8ca0cb61b51a",
  • "name": "string",
  • "permissions": [ ]
}

notifications

This tag groups all endpoints to manage notifications for an organization.

List notifications for a specific organization

Retrieve a paginated list of notifications related to a specific organization, sorted by descending insertion date.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

query Parameters
page
integer [ 1 .. 100000 ]
Default: 1

Set the page to go through a list of paginated documents.

limit
integer [ 1 .. 10000 ]
Default: 25

Set this parameter to limit the count of items returned in a single response.

opened
boolean

Filter notifications by their opened status.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

update a notification by ID

This endpoint allows changes on some attributes of the notification.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing organization in the system.

notification_id
required
string <uuid> (UuidComponent)
Example: dd7f0f73-22b8-4e18-a1bb-8ca0cb61b51a

The identifier of an existing notification in the system.

Request Body schema: application/json
opened
required
boolean

Indicates if the notification was opened by a user or not.

Responses

Request samples

Content type
application/json
{
  • "opened": true
}

Response samples

Content type
application/json
{
  • "notification_id": "dd7f0f73-22b8-4e18-a1bb-8ca0cb61b51a",
  • "opened": true,
  • "inserted": "2014-12-31T23:59:59.124Z",
  • "organization_id": "507f1f77bcf86cd799439011",
  • "title": "string",
  • "text": "string",
  • "href": "string",
  • "notification_type": "new_case",
  • "context": { }
}

tickets

This tag groups all endpoints to manage tickets related to cases.

List all open tickets

Gives access to all open actions across all open cases.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

Update a ticket

Update the deadline of a ticket.

path Parameters
ticket_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the ticket you want to add an action to.

Request Body schema: application/json
due_until
string <date-time> (DateTime.component) ^([1-9][0-9]{3})-((01|03|05|07|08|10|12)-(0[1...

ISO8601 date/time definition.

Responses

Request samples

Content type
application/json
{
  • "due_until": "2014-12-31T23:59:59.124Z"
}

Response samples

Content type
application/json
{ }

autocomplete

This tag groups all endpoints that provide an autocomplete.

List all objects found in cases

Lists all satellites found for active cases.

query Parameters
q
string <= 200 characters

You can filter by a text value.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

protocols

This tag groups all endpoints to manage protocols.

Protocol info

Retrieve all protocols available for the given organization.

query Parameters
status
string

Filter the protocols by status draft, active or inactive.

type
string

Filter the protocols by type bilateral, global, or baseline.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

Create a protocol

Create a new protocol for the given organization.

Request Body schema: application/json
name
required
string (Protocol.base_properties-name)

A descriptive name for the protocol

description
required
string (description)

A human-friendly description of when the protocol applies and whom it assigns

type
required
string (ProtocolTypeComponent)
Enum: "bilateral" "global" "baseline"

Indicating whether a protocol is of type baseline, bilateral or global.

status
string (ProtocolStatus.component)
Enum: "draft" "active" "inactive"

Protocol status, indicating whether a protocol is still a draft, or active or inactive.

definition
required
string (definition)

The definition of the protocol, following the protocol language definition

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "type": "bilateral",
  • "status": "draft",
  • "definition": "string"
}

Response samples

Content type
application/json
{
  • "protocol_id": "507f1f77bcf86cd799439011",
  • "name": "string",
  • "description": "string",
  • "type": "bilateral",
  • "status": "draft",
  • "owner_organization_id": "507f1f77bcf86cd799439011",
  • "created": "2014-12-31T23:59:59.124Z",
  • "modified": "2014-12-31T23:59:59.124Z",
  • "definition": "string"
}

Update a protocol by ID

This endpoint allows changes on some attributes of the protocol.

path Parameters
protocol_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the protocol you want to act on.

Request Body schema: application/json
name
string (Protocol.base_properties-name)

A descriptive name for the protocol

description
string (description)

A human-friendly description of when the protocol applies and whom it assigns

type
string (ProtocolTypeComponent)
Enum: "bilateral" "global" "baseline"

Indicating whether a protocol is of type baseline, bilateral or global.

status
string (ProtocolStatus.component)
Enum: "draft" "active" "inactive"

Protocol status, indicating whether a protocol is still a draft, or active or inactive.

definition
string (definition)

The definition of the protocol, following the protocol language definition

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "description": "string",
  • "type": "bilateral",
  • "status": "draft",
  • "definition": "string"
}

Response samples

Content type
application/json
{
  • "protocol_id": "507f1f77bcf86cd799439011",
  • "name": "string",
  • "description": "string",
  • "type": "bilateral",
  • "status": "draft",
  • "owner_organization_id": "507f1f77bcf86cd799439011",
  • "created": "2014-12-31T23:59:59.124Z",
  • "modified": "2014-12-31T23:59:59.124Z",
  • "definition": "string"
}

subscriptions

This tag groups all endpoints to manage subscriptions.

Returns a list of the querying organization's subscriptions

Returns a list of subscriptions. Can be filtered by protocol ID.

query Parameters
protocol_id
string

Filter the subscriptions by protocol.

status
string

Filter the subscriptions by status active, inactive, pending or rejected.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

Creates a new subscription

Creates a new subscription for the provided protocol.

Request Body schema: application/json
protocol_id
required
string
invited_organization_id
string
operator_conditions
string (operator_conditions)

The definition of additional conditions about when the protocol should apply, following the condition part of the protocol language definition

Responses

Request samples

Content type
application/json
{
  • "protocol_id": "string",
  • "invited_organization_id": "string",
  • "operator_conditions": "string"
}

Response samples

Content type
application/json
{
  • "subscription_id": "507f1f77bcf86cd799439011",
  • "protocol_id": "507f1f77bcf86cd799439011",
  • "inviting_organization_id": "507f1f77bcf86cd799439011",
  • "subscribing_organization_id": "507f1f77bcf86cd799439011",
  • "status": "pending",
  • "modified": "2014-12-31T23:59:59.124Z",
  • "operator_conditions": "string",
  • "subscription_start": "2014-12-31T23:59:59.124Z",
  • "subscription_end": "2014-12-31T23:59:59.124Z"
}

Update the operator conditions

Change the operator conditions for a protocol that the user is subscribed to.

path Parameters
subscription_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the subscription you want to act on.

Request Body schema: application/json
operator_conditions
string (operator_conditions)

The definition of additional conditions about when the protocol should apply, following the condition part of the protocol language definition

Responses

Request samples

Content type
application/json
{
  • "operator_conditions": "string"
}

Response samples

Content type
application/json
{ }

Unsubscribe or handle subscription invitation response

Accept or reject an invitation to subscribe or unsubscribe from a protocol

path Parameters
subscription_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the subscription you want to act on.

Request Body schema: application/json
action
required
string
Enum: "unsubscribe" "accept" "reject"
operator_conditions
string (operator_conditions)

The definition of additional conditions about when the protocol should apply, following the condition part of the protocol language definition

Responses

Request samples

Content type
application/json
{
  • "action": "unsubscribe",
  • "operator_conditions": "string"
}

Response samples

Content type
application/json
{ }

satellites

This tag groups all endpoints to manage satellites.

List all objects found in cases

Lists all satellites found for active cases.

query Parameters
q
string <= 200 characters

You can filter by a text value.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

Create a new satellite

This endpoint allows you to add a new satellite to an existing organization.

Request Body schema: application/json
name
string

The name of the spacecraft

norad_id
integer <int32> (NoradId.component) [ 1 .. 999999999 ]

The spacecraft's NORAD ID

cospar_id
string (CosparId.component) \d{4}-?\d{3}[A-Z]{1,3}

The spacecraft's COSPAR ID

operator_name
string

The name of the operator organization

operator_country_code
string

Country code of the operator organization's residence (according to ISO-3166, for example JP, DE, US, GB)

active
boolean

Whether the spacecraft is treated as operational or not

object

Configuration of external services, such as conjunction screening

size
string
Default: "unknown"
Enum: "small" "medium" "large" "unknown"

Size category of the spacecraft, as used by Space Track

cross_section
number

The spacecraft's collision cross section; unit: m**2

hard_body_radius
number
mass
number

Current total mass of the spacecraft, including payload and fuel; unit: kg

dry_mass
number

Dry mass of the spacecraft, without fuel; unit: kg

volume
number

Volume of the spacecraft; unit: m**3

launch_date
string <date-time> (DateTime.component) ^([1-9][0-9]{3})-((01|03|05|07|08|10|12)-(0[1...

The date when the spacecraft was launched

maneuverability
string
Default: "unknown"
Enum: "crewed" "automated_cola" "manual" "minimal" "none" "unknown"

Category that describes the spacecraft's maneuvering capabilities, following the definition by the Space Safety Coalition

mission_type
string
Default: "unknown"
Enum: "astronomy" "communication" "earth_observation" "navigation" "research" "technology" "military" "other" "unknown"

The type of mission the spacecraft is fulfilling

mission_phase
string
Default: "unknown"
Enum: "leop" "eor" "gto" "nominal" "relocation" "eol" "non_nominal" "contingency" "unknown"

Current mission phase of the spacecraft

is_part_of_constellation
boolean

Whether the spacecraft is part of a constellation

constellation_size
number

If the spacecraft is part of a constellation, this indicates the total number of objects in the constellation

orbital_regime
string
Enum: "leo" "meo" "geo" "heo"

The spacecraft's orbital regime

orbit_category
string
Enum: "atm" "so" "ta" "lleo/e" "lleo/i" "lleo/p" "lleo/s" "lleo/r" "leo/e" "leo/i" "leo/p" "leo/s" "leo/r" "meo" "heo" "heo/m" "gto" "geo/s" "geo/i" "geo/t" "geo/d" "geo/si" "geo/id" "geo/ns" "vheo" "dso" "clo" "eeo" "hco" "pco" "sse"

Orbit category as defined by Planet4589 (https://www.planet4589.org/space/gcat/web/intro/orbits.html)

perigee
number

The perigee of the spacecraft's current orbit; unit: km

apogee
number

The apogee of the spacecraft's current orbit; unit: km

inclination
number

The inclincation of the spacecraft's current orbit; unit: deg

semi_major_axis
number

The semi-major axis of the spacecraft's current orbit; unit: km

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "norad_id": 1,
  • "cospar_id": "string",
  • "operator_name": "string",
  • "operator_country_code": "string",
  • "active": true,
  • "external": {
    },
  • "size": "small",
  • "cross_section": 0,
  • "hard_body_radius": 0,
  • "mass": 0,
  • "dry_mass": 0,
  • "volume": 0,
  • "launch_date": "2014-12-31T23:59:59.124Z",
  • "maneuverability": "crewed",
  • "mission_type": "astronomy",
  • "mission_phase": "leop",
  • "is_part_of_constellation": true,
  • "constellation_size": 0,
  • "orbital_regime": "leo",
  • "orbit_category": "atm",
  • "perigee": 0,
  • "apogee": 0,
  • "inclination": 0,
  • "semi_major_axis": 0
}

Response samples

Content type
application/json
{
  • "spacecraft_id": "507f1f77bcf86cd799439011",
  • "name": "string",
  • "norad_id": 1,
  • "cospar_id": "string",
  • "operator_name": "string",
  • "operator_country_code": "string",
  • "active": true,
  • "external": {
    },
  • "size": "small",
  • "cross_section": 0,
  • "hard_body_radius": 0,
  • "mass": 0,
  • "dry_mass": 0,
  • "volume": 0,
  • "launch_date": "2014-12-31T23:59:59.124Z",
  • "maneuverability": "crewed",
  • "mission_type": "astronomy",
  • "mission_phase": "leop",
  • "is_part_of_constellation": true,
  • "constellation_size": 0,
  • "orbital_regime": "leo",
  • "orbit_category": "atm",
  • "perigee": 0,
  • "apogee": 0,
  • "inclination": 0,
  • "semi_major_axis": 0
}

Get all satellites

This endpoint returns a list of all accessible satellites for the requesting organization.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

Get a satellite by ID

This endpoint returns a specific and existing satellite.

path Parameters
spacecraft_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing spacecraft in the system.

Responses

Response samples

Content type
application/json
{
  • "spacecraft_id": "507f1f77bcf86cd799439011",
  • "name": "string",
  • "norad_id": 1,
  • "cospar_id": "string",
  • "operator_name": "string",
  • "operator_country_code": "string",
  • "active": true,
  • "external": {
    },
  • "size": "small",
  • "cross_section": 0,
  • "hard_body_radius": 0,
  • "mass": 0,
  • "dry_mass": 0,
  • "volume": 0,
  • "launch_date": "2014-12-31T23:59:59.124Z",
  • "maneuverability": "crewed",
  • "mission_type": "astronomy",
  • "mission_phase": "leop",
  • "is_part_of_constellation": true,
  • "constellation_size": 0,
  • "orbital_regime": "leo",
  • "orbit_category": "atm",
  • "perigee": 0,
  • "apogee": 0,
  • "inclination": 0,
  • "semi_major_axis": 0
}

Update a satellite by ID

This endpoint allows changes on some attributes of the organization.

path Parameters
spacecraft_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing spacecraft in the system.

Request Body schema: application/json
name
string

The name of the spacecraft

norad_id
integer <int32> (NoradId.component) [ 1 .. 999999999 ]

The spacecraft's NORAD ID

cospar_id
string (CosparId.component) \d{4}-?\d{3}[A-Z]{1,3}

The spacecraft's COSPAR ID

operator_name
string

The name of the operator organization

operator_country_code
string

Country code of the operator organization's residence (according to ISO-3166, for example JP, DE, US, GB)

active
boolean

Whether the spacecraft is treated as operational or not

object

Configuration of external services, such as conjunction screening

size
string
Default: "unknown"
Enum: "small" "medium" "large" "unknown"

Size category of the spacecraft, as used by Space Track

cross_section
number

The spacecraft's collision cross section; unit: m**2

hard_body_radius
number
mass
number

Current total mass of the spacecraft, including payload and fuel; unit: kg

dry_mass
number

Dry mass of the spacecraft, without fuel; unit: kg

volume
number

Volume of the spacecraft; unit: m**3

launch_date
string <date-time> (DateTime.component) ^([1-9][0-9]{3})-((01|03|05|07|08|10|12)-(0[1...

The date when the spacecraft was launched

maneuverability
string
Default: "unknown"
Enum: "crewed" "automated_cola" "manual" "minimal" "none" "unknown"

Category that describes the spacecraft's maneuvering capabilities, following the definition by the Space Safety Coalition

mission_type
string
Default: "unknown"
Enum: "astronomy" "communication" "earth_observation" "navigation" "research" "technology" "military" "other" "unknown"

The type of mission the spacecraft is fulfilling

mission_phase
string
Default: "unknown"
Enum: "leop" "eor" "gto" "nominal" "relocation" "eol" "non_nominal" "contingency" "unknown"

Current mission phase of the spacecraft

is_part_of_constellation
boolean

Whether the spacecraft is part of a constellation

constellation_size
number

If the spacecraft is part of a constellation, this indicates the total number of objects in the constellation

orbital_regime
string
Enum: "leo" "meo" "geo" "heo"

The spacecraft's orbital regime

orbit_category
string
Enum: "atm" "so" "ta" "lleo/e" "lleo/i" "lleo/p" "lleo/s" "lleo/r" "leo/e" "leo/i" "leo/p" "leo/s" "leo/r" "meo" "heo" "heo/m" "gto" "geo/s" "geo/i" "geo/t" "geo/d" "geo/si" "geo/id" "geo/ns" "vheo" "dso" "clo" "eeo" "hco" "pco" "sse"

Orbit category as defined by Planet4589 (https://www.planet4589.org/space/gcat/web/intro/orbits.html)

perigee
number

The perigee of the spacecraft's current orbit; unit: km

apogee
number

The apogee of the spacecraft's current orbit; unit: km

inclination
number

The inclincation of the spacecraft's current orbit; unit: deg

semi_major_axis
number

The semi-major axis of the spacecraft's current orbit; unit: km

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "norad_id": 1,
  • "cospar_id": "string",
  • "operator_name": "string",
  • "operator_country_code": "string",
  • "active": true,
  • "external": {
    },
  • "size": "small",
  • "cross_section": 0,
  • "hard_body_radius": 0,
  • "mass": 0,
  • "dry_mass": 0,
  • "volume": 0,
  • "launch_date": "2014-12-31T23:59:59.124Z",
  • "maneuverability": "crewed",
  • "mission_type": "astronomy",
  • "mission_phase": "leop",
  • "is_part_of_constellation": true,
  • "constellation_size": 0,
  • "orbital_regime": "leo",
  • "orbit_category": "atm",
  • "perigee": 0,
  • "apogee": 0,
  • "inclination": 0,
  • "semi_major_axis": 0
}

Response samples

Content type
application/json
{
  • "spacecraft_id": "507f1f77bcf86cd799439011",
  • "name": "string",
  • "norad_id": 1,
  • "cospar_id": "string",
  • "operator_name": "string",
  • "operator_country_code": "string",
  • "active": true,
  • "external": {
    },
  • "size": "small",
  • "cross_section": 0,
  • "hard_body_radius": 0,
  • "mass": 0,
  • "dry_mass": 0,
  • "volume": 0,
  • "launch_date": "2014-12-31T23:59:59.124Z",
  • "maneuverability": "crewed",
  • "mission_type": "astronomy",
  • "mission_phase": "leop",
  • "is_part_of_constellation": true,
  • "constellation_size": 0,
  • "orbital_regime": "leo",
  • "orbit_category": "atm",
  • "perigee": 0,
  • "apogee": 0,
  • "inclination": 0,
  • "semi_major_axis": 0
}

Delete a satellite definition

Deletes an existing satellite definition.

path Parameters
spacecraft_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of an existing spacecraft in the system.

Responses

Response samples

Content type
application/json
{
  • "status": 500,
  • "type": "API_ERROR",
  • "message": "An unknown error occurred. Please try again later or contact us if the problem persists.",
  • "code": "string",
  • "validation": [
    ]
}

reports

This tag groups all endpoints to manage reports.

Get a report for a given case and organization

This endpoint returns the report for a case, generated for a specific organization.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

query Parameters
format
required
string
Default: "pdf"
Enum: "html" "pdf"

Responses

Response samples

Content type
application/json
{
  • "status": 500,
  • "type": "API_ERROR",
  • "message": "An unknown error occurred. Please try again later or contact us if the problem persists.",
  • "code": "string",
  • "validation": [
    ]
}

phonebook

This tag groups all endpoints to manage the phonebook.

Get phonebook entry by organization ID

Retrieves the phonebook entry of an organization using its ID.

path Parameters
organization_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The ID of the organization

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "organization_id": "507f1f77bcf86cd799439011",
  • "emails": [
    ],
  • "has_opted_out_of_emails": false
}

Get phonebook entries by organization name

Retrieves the phonebook entry for a specific organization using its name.

query Parameters
name
required
string

The name of the organization.

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "organization_id": "507f1f77bcf86cd799439011",
  • "emails": [
    ],
  • "has_opted_out_of_emails": false
}

cases

List all accessible cases

Returns an array with coordination cases and pagination metadata.

query Parameters
limit
integer [ 1 .. 10000 ]
Default: 25

Set this parameter to limit the count of items returned in a single response.

page
integer [ 1 .. 100000 ]
Default: 1

Set the page to go through a list of paginated documents.

include
Array of strings

Set this parameter to limit the count of items returned in a single response. Default values will be used if this parameter is not set.

object
object
object
object
sort
string^-?(newest_cdm.relative_metadata.tca|newest_r...
Default: "-newest_cdm.relative_metadata.tca"

Prefix newest_cdm.relative_metadata.tca with - for descending order, no prefix for ascending order.

newest_risk_estimation.criticality
Array of strings (CriticalityComponent)
Items Enum: "critical" "observe" "non_critical" "unknown"

Filter the cases by criticality.

q
string <= 200 characters

You can filter by a text value. Affected fields are object_name, object_designator, international_designator and operator_status.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

Returns a specific case

Returns a single case identified by the given ID.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

Responses

Response samples

Content type
application/json
{
  • "case_id": "507f1f77bcf86cd799439011",
  • "organization_ids": [
    ],
  • "object_norad_ids": [
    ],
  • "cdm_ids": {
    },
  • "assignment_status": {
    },
  • "deadlines": {
    },
  • "maneuver_plan_ids": [
    ],
  • "open": true,
  • "newest_cdm": {
    }
}

Perform an action on a case

Perform an action on a case, like accepting assignment, rejecting ephemeris upload, etc.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

Request Body schema: application/json
action
string
Enum: "accept_case_assignment" "reject_case_assignment" "reject_ephemeris_upload" "reject_maneuver_assignment"

Responses

Request samples

Content type
application/json
{
  • "action": "accept_case_assignment"
}

Response samples

Content type
application/json
{ }

Returns all CDMS of a case

Returns a list of all CDMS related to a specific case, identified by the given ID.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

Download a specific CDM file in a given coordination case

This endpoint returns the requested CDM by its ID for a case, in the requested JSON, XML or KVN format, generated for a specific organization.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

cdm_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the CDM you request.

query Parameters
format
required
string
Default: "kvn"
Enum: "json" "kvn" "xml"

Responses

Response samples

Content type
Example
{
  • "header": {
    },
  • "relative_metadata": {
    },
  • "object1_metadata": {
    },
  • "object2_metadata": {
    },
  • "object1_data": {
    },
  • "object2_data": {
    }
}

Download an OEM file for a given case and organization

This endpoint returns the requested OEM by its ID for a case, in the requested JSON, XML or KVN format, generated for a specific organization.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

oem_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the OEM you request.

query Parameters
format
required
string
Default: "kvn"
Enum: "json" "kvn" "xml"

Responses

Response samples

Content type
{
  • "header": {
    },
  • "oem_segments": [
    ]
}

Download an OPM file for a given case and organization

This endpoint returns the requested OPM by its ID for a case, in the requested JSON, XML or KVN format, generated for a specific organization.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

opm_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the OPM you request.

query Parameters
format
required
string
Default: "kvn"
Enum: "json" "kvn" "xml"

Responses

Response samples

Content type
{
  • "header": {
    },
  • "opm_segments": [
    ]
}

Download an NDM file for a given case and organization

This endpoint returns the requested NDM by its ID for a case, in the requested JSON or XML format, generated for a specific organization.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

ndm_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the NDM you request.

query Parameters
format
required
string
Default: "xml"
Enum: "json" "xml"

Responses

Response samples

Content type
{
  • "oems": [
    ],
  • "opms": [
    ],
  • "comments": [
    ],
  • "user_defined": { }
}

Returns events of a case

Returns a list of events related to a specific case, identified by the given ID. Can be filtered by event type.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

query Parameters
event_type
string
Enum: "assignment_action" "ephemeris_upload_action" "reject_ephemeris_upload_action" "maneuver_action" "reject_maneuver_assignment_action" "ticket" "new_cdm"

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

List all open tickets of a case

Gives access to all open tickets related to a specific case identified by id.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

Creates a new ticket

Creates a new ticket in a case by following predefined templates. The new ticket can be assigned to one of the conjunction partners.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

Request Body schema: application/json
deadline
string <date-time> (DateTime.component) ^([1-9][0-9]{3})-((01|03|05|07|08|10|12)-(0[1...

The deadline of this ticket.

organization_id
string (ObjectId.component) ^[a-f\d]{24}$

The ID of the organization this ticket will be assigned to.

template
string
Value: "upload_ephemeris"

The type of the newly created ticket.

Responses

Request samples

Content type
application/json
{
  • "deadline": "2014-12-31T23:59:59.124Z",
  • "organization_id": "507f1f77bcf86cd799439011",
  • "template": "upload_ephemeris"
}

Response samples

Content type
application/json
{
  • "ticket_id": "507f1f77bcf86cd799439011",
  • "event_type": "ticket",
  • "timestamp": "2014-12-31T23:59:59.124Z",
  • "organization_id": "507f1f77bcf86cd799439011",
  • "required_action": {
    },
  • "display_id": 0,
  • "due_until": "2014-12-31T23:59:59.124Z",
  • "obsolete_after": "2014-12-31T23:59:59.124Z",
  • "completed_by": "507f1f77bcf86cd799439011",
  • "importance": "none"
}

Upload operational ephemerides

This endpoint allows for uploading operational ephemerides for a specific case with a stringified file content or binary file.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

Request Body schema:
ccsds_type
string
Enum: "oem" "opm" "ndm"

The CCSDS file type being uploaded.

format
string
Enum: "json" "kvn" "xml"

The format of the ephemerides data being uploaded.

file
required
string <binary>

The binary ephemerides file content.

Responses

Request samples

Content type
No sample

Response samples

Content type
application/json
{
  • "document_id": null,
  • "message": "string"
}

Returns all maneuvers of a case

Returns a list of all maneuvers related to a specific case, identified by the given ID.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

Upload tentative maneuver plan

This endpoint allows for uploading of a tentative maneuver plan for a specific case with a stringified file content or binary file.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

Request Body schema:
ccsds_type
string
Enum: "oem" "opm" "ndm"

The CCSDS file type being uploaded.

format
string
Enum: "json" "kvn" "xml"

The format of the maneuver plan being uploaded.

file
required
string <binary>

The binary maneuver plan file content.

name
required
string

Responses

Request samples

Content type
No sample

Response samples

Content type
application/json
{
  • "document_id": null,
  • "message": "string"
}

List all objects found in cases

Lists all satellites found for active cases.

query Parameters
q
string <= 200 characters

You can filter by a text value.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

events

Returns events of a case

Returns a list of events related to a specific case, identified by the given ID. Can be filtered by event type.

path Parameters
case_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the case you request.

query Parameters
event_type
string
Enum: "assignment_action" "ephemeris_upload_action" "reject_ephemeris_upload_action" "maneuver_action" "reject_maneuver_assignment_action" "ticket" "new_cdm"

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ],
  • "object": "list",
  • "total_count": 0,
  • "has_more": true
}

maneuvers

Performing a maneuver plan action

Selecting, executing, or validating a maneuver.

path Parameters
maneuver_id
required
string (ObjectIdComponent) ^[a-f\d]{24}$
Example: 507f1f77bcf86cd799439011

The identifier of the maneuver you want to act on.

Request Body schema: application/json
action
string
Enum: "confirm" "execute" "validate" "invalidate" "dismiss" "cancel"

Responses

Request samples

Content type
application/json
{
  • "action": "confirm"
}

Response samples

Content type
application/json
{ }