General API specifications

Data format

  • Data format: application/json  or text/json
  • All responses are UTF-8 encoded.

HTTP methods

  • GET  endpoints can return either a single object or a list (array).
  • PUT  endpoints can update either a single object or a list (array). Some endpoints automatically create a new object if the provided identifier is not found.
  • POST  endpoints can create either a single object or a list (array).
  • DELETE  endpoints can be used to delete data.

Dates and times

Date

YYYY-MM-DD

Date and time with time zone

YYYY-MM-DDTHH:mm:ss±HH:mm

Example:

2025-10-16T09:25:32+03:00  


Responses


All successful requests return HTTP status code 200 OK.

Typical response structure:

{  "data": { ... } } 

or

{  "data": [ ... ] } 

In error cases, an HTTP status code and an error code are returned.


Error structure

{
  "error": "ERROR_CODE",
  //optional, not returned for most errors
  "details": [ "OPTIONAL_DETAIL_1", "OPTIONAL_DETAIL_2", ... ]
}

Error codes

HTTP status code Error code Description
400 INVALID_ID Invalid identifier
400 PARSE_ERROR Invalid format
400 INVALID_DATA Invalid content
401 INVALID_CREDENTIALS Invalid credentials
403 UNAUTHORIZED Not authorized
404 NOT_FOUND Resource not found
429 RATE_LIMIT Too many requests
500 ERROR Unexpected error

Rate limiting

  • Maximum 1000 requests per hour.
  • If the limit is exceeded, the API returns HTTP status code 429 Too Many Requests.