Skip to main content
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

Agent identity in every payload is the structured agentId object: a workspace plus the agent path array — one element for a root agent, more for children:
You only need workspace and the agent path — murmur fills in your tenant and account automatically from the authenticated caller. Anything you set explicitly is passed through exactly as you sent it. Agent-scoped operations use POST with the agentId in the JSON body — reads and mutations alike:

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

The catalog endpoints carry the resource document in a payload field as a base64-encoded JSON document — decode it on read, encode it on write:

Blocking on completion

POST /v1/agent/wait blocks until the agent needs attention — it finishes, fails, or comes to rest waiting for input. Bound the wait with your client’s timeout:
Disconnecting cancels the server-side call.