API docs RFC 9457 Platform

Platform

Error responses (RFC 9457)

All API errors follow the RFC 9457 Problem Details format. Responses are application/json with a consistent top-level shape.

Details

Error schema

Top-level fields

Every error response includes these fields: type (URI identifying the error type), title (human-readable), status (HTTP status code), detail (specific explanation), and request_id (server-side correlation ID).

Reference

Common error types

Status Type URI Title
400 problems/bad-request Bad request
401 problems/unauthorized Unauthorized
403 problems/forbidden Forbidden
404 problems/not-found Not found
406 problems/not-acceptable Not acceptable
409 problems/conflict Conflict
415 problems/unsupported-media-type Unsupported media type
422 problems/unprocessable-entity Unprocessable entity
429 problems/rate-limited Rate limited
500 problems/internal-server-error Internal server error

Code example

Example error response

{
  "type": "https://robotscenter.net/problems/not-found",
  "title": "Not found",
  "status": 404,
  "detail": "Resource not found",
  "request_id": "req-01HQ5PX7P7F4"
}

Extra context

403 Forbidden

extra.required_scopes lists the scopes needed to access the resource.

Extra context

422 Validation

extra.errors lists per-field validation messages with field name and message for each error.

Extra context

429 Rate limited

extra.retry_after_seconds indicates when to retry the request.

Code example

Validation error example (422)

{
  "type": "https://robotscenter.net/problems/unprocessable-entity",
  "title": "Unprocessable entity",
  "status": 422,
  "detail": "Validation failed",
  "request_id": "req-01HQ5PX7P7F4",
  "extra": {
    "errors": [
      {"field": "url", "message": "must be an absolute http(s) URL"},
      {"field": "event_types", "message": "should have at least 1 item(s)"}
    ]
  }
}

Related docs