Intelligence
Developers

Errors

Every refusal is an RFC 9457 problem with a stable code and what to do next.

Every refusal is an RFC 9457 problem, application/problem+json, with a stable code an agent acts on and a resolution that says what to do next.

{
  "type": "about:blank",
  "status": 404,
  "title": "Not Found",
  "code": "not_found",
  "detail": "No story on the wire has the id k57abc.",
  "resolution": "Take an id from GET /api/v1/stories; a story leaves the wire after 30 days."
}

The public API

StatuscodeWhen
400invalid_parameterA parameter's value its schema refuses; detail names it
404not_foundNo story has the id, or it has left the wire
404api_route_not_foundA path under /api/v1 that is no operation
405method_not_allowedAny method but GET on a read; Allow says so
429rate_limit_exceededOver 60 requests a minute for each IP address, 30 of them at once; Retry-After says when to retry
503read_failedThe read behind the answer failed; retry shortly

The site and the MCP servers

StatuscodeWhen
401sign_in_requiredA script's request for an /api/ route that needs a session, not signed in
404not_foundA path the site does not serve, not signed in; in Markdown or JSON if the request asks
401The workspace's MCP server with no valid token: an OAuth challenge naming its metadata (https://terminal.cloud.wavo.me/.well-known/oauth-protected-resource)
429rate_limit_exceededThe public MCP server's tool calls over their bucket

A tool's refusal — a story that is gone, a call the person may not make — comes back in the tool's result, in words that say why and what to do instead.