Make Voice AI Call API

POST /call

Try it

cURL

curl --request POST \
  --url https://api.bolna.ai/call \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "agent_id": "123e4567-e89b-12d3-a456-426655440000",
  "recipient_phone_number": "+10123456789",
  "from_phone_number": "+19876543007",
  "scheduled_at\": "2025-08-21T10:35:00",
  "user_data": {
    "variable1": "value1",
    "variable2": "value2",
    "variable3": "some phrase as value"
  },
  "agent_data": {
    "voice_id": "Sam"
  }
}
'

Response

200

{
  "message": "done",
  "status": "queued",
  "execution_id": "123e4567-e89b-12d3-a456-426614174000"
}

Authorizations

Authorization
Type: string
Location: header
Required: Yes
Format: Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
Make a phone call from agent

  • agent_id
    Type: string<uuid>
    Required: Yes
    Description: Agent id which will initiate the outbound call

  • recipient_phone_number
    Type: string
    Required: Yes
    Description: Phone number of the recipient alongwith country code (in E.164 format)

  • from_phone_number
    Type: string
    Description: Phone number of the sender alongwith country code (in E.164 format)

  • scheduled_at
    Type: string
    Description: The scheduled date and time in ISO 8601 format with time zone
    Example:

    "2024-06-05T16:35:00.000+05:30"
    
  • user_data
    Type: object
    Description: Additional user dynamic variables as defined in the agent prompt

  • agent_data
    Type: object
    Description: Agent configuration to override the default configuration. Currently, only voice_id is supported.

  • retry_config
    Type: object
    Description: Configuration for auto-retry of failed calls.

Showchild attributes

  • bypass_call_guardrails
    Type: boolean
    Default: false
    Description: Skip time validation checks and make call immediately regardless of agent's calling_guardrails configuration.

Response

200
application/json
agent status response

  • message
    Type: string
    Description: Response message for the call initiated
    Example:
  "done"
  • status
    Type: enum<string>
    Description: Status of the call.
    Available options:
    • queued
      Example:
  "queued"
  • execution_id
    Type: string
    Description: Unique execution_id or call_id identifier of the call.
    Pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}
    Example:
  "123e4567-e89b-12d3-a456-426614174000"