Skip to main content
Agents are the configurable units that handle conversations — system prompt, voice, LLM, attached tools/playbooks/FAQs. Same operations are wrapped by the Python SDK and the Node SDK.

Endpoints at a glance

Reference

GET /api/v1/agents

List agents Returns every agent in the caller’s account, with attached playbooks and FAQs joined in. Ordered by created_at descending. There is no pagination today — every account has at most a few dozen agents in practice; if that changes we’ll add limit/offset like /api/tools and /api/playbooks. Responses Example

POST /api/v1/agents

Create an agent Persists a new agent in the caller’s account. Required body fields: name. Most other fields default sensibly: category=custom, status=draft, llm_model=gpt-4o, voice_provider=cartesia, auth_mode=authenticated, greeting_mode=interruptible. Returns the inserted row, including server-set id, created_at, and updated_at. Attach playbooks and FAQs separately via POST /api/agents/{id}/playbooks and POST /api/agents/{id}/faqs. Request body (application/json) Schema: data.Agent. Server-set fields (id, created_at, updated_at, …) are ignored if supplied; only the user-settable fields are shown below. Responses Example

GET /api/v1/agents/{id}

Get an agent Returns the agent row plus its attached playbooks and FAQs. Parameters Responses Example

PATCH /api/v1/agents/{id}

Update an agent Parameters Request body (application/json) Schema: data.Agent. Server-set fields (id, created_at, updated_at, …) are ignored if supplied; only the user-settable fields are shown below. Responses Example

DELETE /api/v1/agents/{id}

Delete an agent Parameters Responses Example

POST /api/v1/agents/{id}/faqs

Attach an FAQ to an agent Parameters Request body (application/json) Schema: handlers.AttachFAQRequest. Server-set fields (id, created_at, updated_at, …) are ignored if supplied; only the user-settable fields are shown below. Responses Example

DELETE /api/v1/agents/{id}/faqs/{faqId}

Detach an FAQ from an agent Parameters Responses Example

POST /api/v1/agents/{id}/playbooks

Attach a playbook to an agent Parameters Request body (application/json) Schema: handlers.AttachPlaybookRequest. Server-set fields (id, created_at, updated_at, …) are ignored if supplied; only the user-settable fields are shown below. Responses Example

DELETE /api/v1/agents/{id}/playbooks/{playbookId}

Detach a playbook from an agent Parameters Responses Example

GET /api/v1/agents/{id}/tools

List tools attached to an agent Parameters Responses Example

POST /api/v1/agents/{id}/tools

Attach or update a tool on an agent Idempotent insert-or-update of one (agent_id, tool_name) row. Both POST and PUT are accepted. Parameters Request body (application/json) Schema: data.AgentTool. Server-set fields (id, created_at, updated_at, …) are ignored if supplied; only the user-settable fields are shown below. Responses Example