---
title: "Every error code and whether retrying can help"
method: GET
path: "/api/problems"
---

# Every error code and whether retrying can help

`GET /api/problems`

## Request

- Base URL: `https://trooth.co`
- URL: `https://trooth.co/api/problems`
- Auth: none required

The registry every RFC 9457 problem document from trooth.co draws on: each code with its status, fixed title, retryable flag, next action, and terminal (true when repeating the same request cannot change the answer, exactly not retryable). A code keeps its meaning once published. Cached for one hour. Readable cross-origin: the response carries Access-Control-Allow-Origin: * and never Access-Control-Allow-Credentials, so a browser on any site may read it without cookies.

## Response `200`

The registry.

- ProblemCatalog: The registry. Canonical JSON Schema: https://trooth.co/schemas/problem-catalog.v1.schema.json; embedded here with its $defs as ProblemCatalog_* components.
  - `format` 'trooth.problem-catalog.v1', required: Names this shape.
  - `media_type` 'application/problem+json', required: The media type of every problem document.
  - `next_actions` string[], required: Every next_action value.
  - `problems` object[], required: One entry per code.
    - `code` string, required: The code; switch on this.
    - `type` string, required: The RFC 9457 type URI.
    - `status` integer, required: HTTP status.
    - `title` string, required: The fixed title.
    - `retryable` boolean, required: True when the same request may succeed after retry_after.
    - `next_action` 'retry_later' | 'fix_request' | 'start_over' | 'resync' | 'use_current_record' | 'none', required: What to do next.
    - `terminal` boolean, required: True when repeating the same request cannot change the answer; exactly not retryable.
  - `how_to_read` string, required: How to read this catalog.

---

[API](https://skmtc.dev/trooth/apis/trooth-public-api.md) · [All operations](https://skmtc.dev/trooth/apis/trooth-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/trooth/apis/trooth-public-api/revisions/e4d4e92641d9?raw)
