Skip to main content

Overview

An agent defines the AI persona that handles calls and widget interactions. It holds the system prompt, voice configuration, and language settings. Create one agent per use case and reuse it across calls, widgets, and workflows. All provider and model identifiers are aliased — you will never see internal provider names. Use the alias values returned by the API when updating agent settings. Required scopes: agents:read (read operations), agents:write (create/update)

GET /v1/agents/voices

Returns available voice providers and their supported models and voices. Use these values when updating an agent’s voice configuration.
200 OK
Common errors: 403 missing agents:read scope

GET /v1/agents

Returns all agents available to your organization.
200 OK
Common errors: 403 missing agents:read scope · 404 key or org context not found

POST /v1/agents

Creates a new agent.
201 Created
Common errors: 400 validation error (missing required fields) · 403 missing agents:write scope

GET /v1/agents/{id}

Returns a single agent by ID.
200 OK
Common errors: 403 missing agents:read scope · 404 agent not found

PATCH /v1/agents/{id}

Updates an agent’s settings (prompt, model, voice, etc.).
This endpoint requires the agent id in both the URL path and the request body. Omitting it from the body will return a 400 validation error.
200 OK
Common errors: 400 validation error (check id is in body) · 403 missing agents:write scope · 404 agent not found

PATCH field reference


  1. Create an agent with your base persona (POST /v1/agents).
  2. Copy the returned id.
  3. List available voices with GET /v1/agents/voices to get valid provider and model aliases.
  4. Use the id when creating widgets, calls, or workflows.
  5. Update prompts and model settings over time with PATCH /v1/agents/{id}.