Gnesi
hello@gnesi.io

Comms REST

Errors

HTTP status codes and the JSON-RPC errors the API returns.

REST errors are JSON: { "error": "…" }.

HTTP

  • 400 — the address or body is empty or malformed.
  • 401 — sign in. Address routes say Sign in to reserve an address. The router says Sign in required.
  • 404 — that conversation, address, or agent card does not exist. An unknown *.gnesi.io label returns No Gnesi address is reserved for this name.
  • 409 — the free address is already taken.
  • 410 — /api/tasks has moved to /v1/conversations.
  • 406 — an MCP call whose Accept header allows neither JSON nor event streams.

A failed domain check stays pending-dns or becomes failed. The domain is not verified because a browser said so.

JSON-RPC

A2A uses JSON-RPC 2.0 errors:

  • -32700 parse error
  • -32600 invalid request, including a body that is not POST
  • -32601 method not found
  • -32000 the call was rejected, with the HTTP status alongside
  • -32001 sign-in failed, or SubscribeToTask was called on /a2a

Holds

A payment error is not a failed send. The conversation exists. The payment status tells you whether the amount is quoted, waiting in Needs you, held, released, returned, or declined.