Responses


Response codes summary

Verb Code Reason
Any 400 Any part of the query string or body is in error
401 Invalid or missing Bearer token
403 Forbidden, only returned if there is a valid Bearer token but the actor or service does not have proper rights
404 Not found, e.g. requesting a non-existing resource-id
414 URI Too Long (larger than 2083 characters)
429 Hitting a rate limit
500 Internal server error
503 Service not available, e.g. down for maintenance
GET 200 Request for data is correct. Data is returned.
202 Accepted. See delayed operations
304 Requested data is not modified. Not including data in response.
409 Concurrency conflict
410 Gone
POST 201 Resource created
202 Accepted. See delayed operations
PUT 200 Existing resource updated
201 New resource created
202 Accepted. See delayed operations
409 Concurrency conflict
DELETE 204 Success, does not return content

Error responses

Whenever returning an error (4xx, 5xx) the API will also return an error object. The following fields are the minimum which will always be present.

{
	"error":{
		"code":"identifierStyle",
		"message":"human-readable"
	}
}

In case of validation errors of the input provided in the body, some validation error messages will be provided in the answer.

{
	"error":{
		"validationErrors":[
			"Id must be positive"
		],
		"code":"BadRequest",
		"message":"The request was invalid"
	}
}
Example: The requested resource does not exist
{
	"error":{
		"code":"NotFound",
		"message":"No data was found for the request"
	}
}

Example: Internal server error (which should not occur)
{
	"error":{
		"code":"InternalServerError",
		"message":"84b940b4-82ed-4c4c-a794-ecafa9c9fe26"
	}
}

More specific error handling info can be found in the Swagger section

Rate limiting

When rate limiting occurs

Rate limiting may be enforced when the system detects excessive usage, such as when requests exceed thresholds set by our server infrastructure.

If you encounter a 429 Too Many Requests error, it means you have surpassed the allowed request rate.

Fair use policy

Our platform operates on a fair use policy, ensuring all users have equal access to resources. To avoid hitting rate limits:

Distribute requests evenly over time. Implement retry logic with exponential backoff when receiving a 429 response.

What to do when you hit a 429?

If you receive a 429 error:

  • Pause your requests temporarily.
  • Adjust your request frequency to comply with fair use limits.