Ask Kevin is smarter.
OmniDimension
Agents

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.

POST/agents/create
Body
15 fields
·

Name for the agent.

Initial message the agent will say when answering a call.

List of context breakdowns, each containing `title`, `body`, and optional `is_enabled`.

Title*
Title of the breakdown.
Body*
Body of the breakdown — the detailed prompt content.
Is enabled
Whether this section is included in the prompt.

Call type of the assistant.

Configuration for the speech-to-text transcriber.

Provider
Model
Silence timeout ms
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?",
  "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",
    "silence_timeout_ms": 400
  },
  "model": {
    "model": "gpt-4o-mini",
    "temperature": 0.7
  },
  "voice": {
    "provider": "eleven_labs",
    "voice_id": "JBFqnCBsd6RMkjVDRZzb"
  },
  "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."
        }
      ]
    },
    "webhook": {
      "url": "https://your-webhook-endpoint.com/omnidim-callback",
      "extracted_variables": [
        {
          "key": "customer_issue",
          "prompt": "Identify the main issue the customer is experiencing."
        }
      ]
    }
  },
  "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!"
  },
  "background_track": {
    "volume": 0.2
  },
  "languages": [
    "English",
    "Hindi"
  ]
}'
Example response
{
  "id": 6365,
  "name": "Customer Support Agent",
  "status": "Completed"
}

Authorization

BearerAuth
AuthorizationBearer <token>

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