PRE-ALPHA: INTERFACE SUBJECT TO CHANGE WITHOUT NOTICE
The murmur REST API lets you spawn agents, track their progress, manage their task lists, and read and write catalog resources from any HTTP client. Every operation is a plain HTTP+JSON endpoint.
Base URL
Requests and responses are application/json. Field names are lowerCamelCase, enums are strings, 64-bit integers are strings, and binary values are base64 strings.
Authentication
Authenticate every request with a murmur API key:
Agent identity
Every payload identifies an agent with a structured agentId object. It contains a workspace and an agent path array with one element for a root agent and more for child agents.
You only need workspace and the agent path. Murmur fills in your tenant and account from the authenticated caller. Anything you set explicitly is passed through exactly as you sent it.
Agent-scoped operations, including reads and mutations, use POST with the agentId in the JSON body.
Errors
Errors return a consistent JSON body: a numeric code, a human-readable message, and optional machine-readable details:
The code value and the HTTP status always correspond:
Catalog payloads are base64-encoded JSON
Catalog endpoints carry the resource document in a payload field as base64-encoded JSON. Decode it on read and encode it on write.
Blocking on completion
POST /v1/agent/wait blocks until the agent needs attention. It returns when the agent finishes, fails, or comes to rest waiting for input. Bound the wait with your client’s timeout.
Disconnecting cancels the server-side call.