Skip to content

Agent Configuration

Agents define how VoxBridge speaks on the phone: system prompts, voice character, call direction, and which agent handles API requests by default.

What is an agent?

Each agent belongs to one organization and is scoped by direction — outbound for proactive calls your app queues, or inbound for calls arriving on your SIP numbers. The agent's system_prompt instructs the LLM; voice_id selects TTS character (see Voice characters).

Default agents on signup

New organizations receive two pre-configured agents:

NameSlugDirectionVoiceDefault?
Welcome Call Agentwelcomeoutboundwarm_femaleYes
Inbound Support Agentinbound-supportinboundcalm_supportNo

The outbound welcome agent uses a template prompt with placeholders such as and filled from the call context object when the worker runs the conversation.

Default agent selection

When you POST to /v1/calls/outbound without agent_id, VoxBridge selects the active agent where is_default is true. If none exists, the API returns 400 No default agent configured.

Only one agent per organization should be marked default at a time. Set is_default: true on the agent you want via the dashboard or PATCH /dashboard/agents/{id}.

System prompts

Prompts must be at least 20 characters. Effective prompts include:

  • Identity — who the agent represents and the call purpose
  • Goals — ordered steps (verify identity, explain next steps, offer human handoff)
  • Rules — tone, duration limits, compliance boundaries, voicemail behavior
  • Variables — reference context fields your API sends (e.g. reference numbers, product names)
You are a friendly AI voice agent calling on behalf of Acme Lending. Goals: 1. Confirm you are speaking with . 2. Reference application if provided. 3. Explain next steps and offer human support if needed. Rules: - Keep calls under 3 minutes unless the caller continues. - If wrong person or opt-out, apologize and end politely.

Creating agents

Dashboard: Agents panel → create agent, set direction, prompt, and voice.

API (JWT required):

curl -X POST https://www.voxbridge.cc/dashboard/agents \ -H "Authorization: Bearer YOUR_JWT" \ -H "Content-Type: application/json" \ -d '{ "name": "Collections Reminder", "direction": "outbound", "voice_id": "authoritative", "system_prompt": "You are calling regarding an overdue balance..." }'

Updating and deactivating

curl -X PATCH https://www.voxbridge.cc/dashboard/agents/AGENT_UUID \ -H "Authorization: Bearer YOUR_JWT" \ -H "Content-Type: application/json" \ -d '{"voice_id":"friendly_young","is_default":true}'

Set is_active: false or DELETE to retire an agent. Inactive agents cannot be selected for new calls.

Listing agents via API

Server integrations can list active agents with the live API key:

curl https://www.voxbridge.cc/v1/agents \ -H "Authorization: Bearer sk_live_YOUR_KEY"

Returns id, name, slug, direction, and is_default for each active agent.

Related

Inbound & outbound → · Voice characters → · Calls API →