Create an agent
Authentication
Bearer authentication of the form Bearer <token>, where token is your auth token.
Request
Attach a knowledge base at creation (kb_… id, must belong to the workspace).
Optional template ID. When provided, the agent is pre-configured with the template’s settings (system_prompt, language, ai_provider, etc.). You can override individual fields.
AI backend for this agent. Use GET /admin/ai/providers to see
all available providers (typically gemini or openai for hosted
AI). Set to byom to relay every caller turn to your own webhook
URL — webhook_url is then required.
Model ID for the chosen provider. Must be an active model in the
platform catalogue (AI model IDs validated against
voicebip_v1.ai_models). Omit the field to use the provider’s
platform default. Ignored when ai_provider is byom.
The voice the agent speaks with. Pass a voice_id from GET /v1/voice/models (e.g. aura-asteria-en). Validated at save time — an unknown id is rejected with 400. Omit to use the platform-default voice.
JSON array of OpenAI-compatible tool definitions. Defaults to ’[]’.
Earliest outbound call time (HH:MM). Default: 08:00
Latest outbound call time (HH:MM). Default: 20:00
IANA timezone. Default: Africa/Lagos
Enable call recording for this agent. Workspace recording must also be enabled via POST /v1/workspace/recording (available on Builder and Scale tiers; not available on Starter).
When true (default), plays a DTMF consent prompt before recording. Set to false only if you have prior consent or an NDPR exemption.
BYOM only. Enable the synchronous pre-greeting call.screening webhook for inbound calls (allow/reject + optional dynamic greeting). Requires ai_provider=byom and a webhook_url.
Screening failure policy: false (default) = fail-open (allow on webhook error), true = fail-closed (reject).
Response
The voice the agent speaks with. This is a voice_id from GET /v1/voice/models (e.g. aura-asteria-en). Null/absent means the platform-default voice.
The source URL of a hosted WAV played as the greeting instead of greeting_text. Set via UpdateAgent; validated and stored at save time. The system-managed storage key is never returned.
JSON array of OpenAI-compatible function/tool definitions. The AI can invoke these tools during voice calls. Built-in tools: hang_up, transfer_call, hold_call, resume_call. Custom tools are dispatched to the agent’s webhook_url. Defaults to ”[]”.
Attached knowledge base (RAG). When set, hosted-AI turns answer from this KB’s documents. Empty/absent = none.
Earliest permitted outbound call time (HH:MM, 24hr). CBN compliance.
Latest permitted outbound call time (HH:MM, 24hr). CBN compliance.
CBN requirement: spoken announcement at start of call identifying the sponsoring institution.
Whether call recording is enabled for this agent. Workspace-level recording must also be enabled via POST /v1/workspace/recording for calls to be recorded.
When true (default), the caller hears a consent prompt before recording starts. When false, recording begins immediately. Only disable if you have an independent legal basis under NDPR.
BYOM only. When true, inbound calls trigger a synchronous call.screening webhook (to the agent’s webhook_url) BEFORE the greeting so you can allow/reject the caller and optionally override the greeting. See the BYOM guide.
Screening failure policy. false (default) = fail-open (allow the call if the screening webhook errors/times out); true = fail-closed (reject).