Create agent
Create a new agent with the provided configuration. The full config supports transcriber, model, voice, web search, transfer, end-call conditions, post-call actions (email + webhook), ambient background track, initial ringing sound, and multilingual support.
Name for the agent.
Initial message the agent will say when answering a call.
When true, the welcome message is treated as a directive the agent uses to generate a tailored greeting for each call, rather than being spoken word for word. When false, the welcome message is spoken exactly as written.
Allow the caller to interrupt the welcome message. When false, the agent finishes speaking the welcome before listening.
List of context breakdowns, each containing `title`, `body`, and optional `is_enabled`.
curl -X POST 'https://backend.omnidim.io/api/v1/agents/create' \ -H 'Authorization: Bearer YOUR_API_KEY' \ -H 'Content-Type: application/json' \ -d '{ "name": "Customer Support Agent", "welcome_message": "Hello! How can I help you today?", "dynamic_variables": { "customer_name": "Jane Doe", "order_id": "ORD-12345" }, "context_breakdown": [ { "title": "Purpose", "body": "This agent helps customers with product inquiries and support issues.", "is_enabled": true } ], "transcriber": { "provider": "deepgram_stream", "model": "nova-3", "language": "en-US", "silence_timeout_ms": 400, "interruption_min_words": 2, "max_call_duration_in_sec": 600 }, "model": { "model": "gpt-4.1-mini", "temperature": 0.7 }, "voice": { "provider": "eleven_labs", "voice_id": "JBFqnCBsd6RMkjVDRZzb", "model": "sonic-3.5", "speech_speed": 1 }, "web_search": { "provider": "DuckDuckGo" }, "post_call_actions": { "email": { "recipients": [ "support@example.com" ], "extracted_variables": [ { "key": "customer_issue", "prompt": "Identify the main issue the customer is experiencing." } ], "trigger_call_statuses": [ "completed", "voicemail_detected" ] }, "webhook": { "url": "https://your-webhook-endpoint.com/omnidim-callback", "extracted_variables": [ { "key": "customer_issue", "prompt": "Identify the main issue the customer is experiencing." } ], "trigger_call_statuses": [ "completed", "failed" ] } }, "transfer": { "transfer_options": [ { "number": "+15551234567", "type": "static", "transfer_condition": "Transfer if the customer asks to speak with a human.", "transfer_message": "Please hold while I connect you to one of our agents." } ] }, "end_call": { "condition": "End the call once the customer'\''s issue is resolved.", "message": "Thank you for contacting us. Have a great day!", "message_prompt": "End the call politely in the same language the user is speaking." }, "background_track": { "volume": 0.2 }, "languages": [ "English (India)", "Hindi" ] }'
{ "id": 6365, "name": "Customer Support Agent", "status": "Completed" }
Authorization
BearerAuth Bearer token authentication. Obtain your API key from the OmniDimension dashboard.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
