Errors

Every API in this portal answers errors the same way. An operation's reference lists only the responses specific to that operation; the status codes on this page can come from any operation, and the reference covers them with its default response.

The error format

Errors are problem details (RFC 9457), sent as application/problem+json:

{
  "type": "https://tools.ietf.org/html/rfc9110#section-15.5.5",
  "title": "Not found",
  "status": 404,
  "detail": "Enrollment not found.",
  "traceId": "00-0af7651916cd43dd8448eb211c80319c-b7ad6b7169203331-01"
}
  • status repeats the HTTP status code, and title names it.
  • detail, when present, says what went wrong with this request.
  • errors, on a 400 for invalid input, maps each invalid field to its messages.
  • traceId identifies the request in our logs. Quote it when you contact support about an error.

Problem details are JSON whenever your Accept header allows JSON, or when you send no Accept header at all. A request whose Accept header allows no JSON media type may get a plain-text body for errors answered before an operation runs, such as a 401.

Status codes any operation can answer

Status When
400 Bad Request The API version is not supported, or more than one is requested. Set the version with ?api-version= or the x-api-version header; without either, version 1.0 is used.
401 Unauthorized The access token is missing, expired or invalid.
403 Forbidden The access token is valid, but does not give access to this operation.
415 Unsupported Media Type The operation takes a JSON body, and the request's Content-Type is not JSON.
429 Too Many Requests The API applies rate limiting and the limit is reached. Wait the number of seconds in Retry-After before retrying.
500 Internal Server Error An unexpected error on our side.
502 Bad Gateway, 503 Service Unavailable, 504 Gateway Timeout A service the API depends on is unavailable or did not answer in time.

Retry a 429, 502, 503 or 504 after a delay, backing off between attempts. Retry a 500 only if the operation is safe to repeat.

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.