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.
Allow the caller to interrupt the welcome message. When false, the agent finishes speaking the welcome before listening.
Global toggle for whether the caller can interrupt the agent mid-sentence at any point in the call.
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
