Skip to main content
Every failure is application/problem+json:
  • code is the contract. Mirror: @cortex/api-types ErrorCode.
  • title / detail are English, for logs and humans reading raw JSON. The web app renders catalog copy. Three codes may show detail as a secondary line: validation_failed, bad_request, invalid_state.
  • type is dereferenceable: Problem catalog.
  • request_id is always present and safe to show.
User-facing detail names a product surface, never a vendor (“The audio service is temporarily unavailable.”, not a subprocessor’s name). Full catalog: Problems.