Sume Format run routes that do not exist, and the call to use instead
There is no GET /v1/format-runs, no per-Format GET for one run, and no /messages route. Use the per-Format runs list and GET /v1/format-runs/{run_id}.

Three routes people guess for Format runs do not exist: GET /v1/format-runs, GET /v1/formats/{handle}/{slug}/runs/{run_id} and GET /v1/format-runs/{id}/messages. A guess at any of them will not work, so build from the routes below.
The reason is that the run id alone identifies a run; the Format is reached through the receipt.
Guessed route and replacement
Taken from the Runs and results page (read 2026-10-03).
| Guess | Use instead |
|---|---|
| GET /v1/format-runs | GET /v1/formats/{handle}/{slug}/runs, once per Format |
| GET /v1/formats/{handle}/{slug}/runs/{run_id} | GET /v1/format-runs/{run_id} |
| GET /v1/format-runs/{id}/messages | GET /v1/format-runs/{run_id}/events for the phase timeline |
| Result inside the receipt of a running run | GET /v1/format-runs/{run_id}/result once status is completed |
Walking a workspace
If you need every run in a workspace, loop over the Formats you own and page each runs list. The list needs formats:read and returns receipts, so the walk does not need a second call per run.
The events route is a phase timeline with preparing, running and finalizing; it is not a chat transcript.
RUN=run_example
curl -s https://api.sume.com/v1/format-runs/$RUN \
-H "Authorization: Bearer $SUME_API_KEY" | jq '.data | {status, next_action}'
curl -s https://api.sume.com/v1/format-runs/$RUN/events \
-H "Authorization: Bearer $SUME_API_KEY"Why this matters for clients
A generated client that adds the guessed routes will produce 404s that look like missing data. Check the route against the API reference before wiring a dashboard. For the envelope URLs you should follow rather than build, see the job response URLs.
Sources
Related posts
More in Formats
- Sume Format run usage is null: not zero cost, and a safe cost helper
usage is null when spend could not be read, which is not 0. Read usage.debited_usd_micros as an integer, and keep unknown runs separate from free ones.
- Webhook or polling for Sume Format runs, and the 1 MiB payload rule
Pick between the signed terminal webhook and polling status_url for Sume Format runs: delivery limits, dedupe keys, and what a payload over 1 MiB looks like.
- Format structured output: anyOf passes, oneOf and allOf are rejected
Which JSON Schema keywords a Sume Format output_schema accepts, the 400 output_schema_invalid shape, and how it lines up with OpenAI strict structured outputs.
- Format output filled_by: agent versus projection, exact URLs
Sume Format runs fill structured output either through the agent or by projection. Learn which one ran, what projection can see, and the exact-URL gate.
Written by Sume