Every write or read operation on tasks, messages, and contexts
uses this endpoint. The method field in the body selects the
operation. See the Error catalog in the top-level description
for every possible error.code.
Accepted methods: message/send, message/stream
(experimental), tasks/get, tasks/list, tasks/cancel,
tasks/feedback, contexts/list, contexts/clear.
Casing tolerance: the server accepts both camelCase
(taskId) and snake_case (task_id) in params — pick one
and stick with it per-call. Responses are always snake_case.
Size limit: request bodies over 10 MB return 413 Payload Too Large at the ASGI layer (does not use the
JSON-RPC error envelope).
Idempotency: message/send is NOT idempotent — a repeat
call creates a new task. If you need idempotency, have your
client generate a stable messageId and use contexts/list
tasks/list to check whether you’ve already sent it.OAuth2 access token issued by Ory Hydra. Required for most operations.
Scopes:
agent:read — Read-only operations (tasks/get, tasks/list, contexts/list)agent:write — Write operations (message/send, tasks/cancel, contexts/clear)agent:execute — (legacy) Both read and write accessHow to obtain:
Authorization: Bearer <token> headerJSON-RPC 2.0 request envelope. One of the per-method
params shapes must be supplied via the method field.
"2.0"message/send, message/stream, tasks/get, tasks/list, tasks/cancel, tasks/feedback, tasks/pushNotificationConfig/set, tasks/pushNotificationConfig/get, tasks/pushNotificationConfig/list, tasks/pushNotificationConfig/delete, contexts/list, contexts/clear Caller-chosen request id. The response echoes it back.
Method-specific params (see per-method schemas below)
Successful JSON-RPC response. result contains the typed
output per method — see components/schemas/*Result.