curl --request POST \
--url https://api.threetone.in/v1/voiceai/batch-calling/submit \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"call_name": "<string>",
"agent_id": "<string>",
"recipients": [
{
"id": "<string>",
"phone_number": "<string>",
"whatsapp_user_id": "<string>",
"conversation_initiation_client_data": {
"conversation_config_override": {
"turn": {
"soft_timeout_config": {
"message": "<string>"
}
},
"tts": {
"voice_id": "<string>",
"stability": 123,
"speed": 123,
"similarity_boost": 123
},
"conversation": {
"text_only": true
},
"agent": {
"first_message": "<string>",
"language": "<string>",
"max_conversation_duration_message": "<string>",
"prompt": {
"prompt": "<string>",
"tool_ids": [
"<string>"
],
"native_mcp_server_ids": [
"<string>"
],
"knowledge_base": [
{
"id": "123",
"name": "My Knowledge Base",
"type": "file",
"usage_mode": "auto"
}
]
}
}
},
"custom_llm_extra_body": {},
"user_id": "<string>",
"source_info": {
"version": "<string>"
},
"dynamic_variables": {}
}
}
]
}
'import requests
url = "https://api.threetone.in/v1/voiceai/batch-calling/submit"
payload = {
"call_name": "<string>",
"agent_id": "<string>",
"recipients": [
{
"id": "<string>",
"phone_number": "<string>",
"whatsapp_user_id": "<string>",
"conversation_initiation_client_data": {
"conversation_config_override": {
"turn": { "soft_timeout_config": { "message": "<string>" } },
"tts": {
"voice_id": "<string>",
"stability": 123,
"speed": 123,
"similarity_boost": 123
},
"conversation": { "text_only": True },
"agent": {
"first_message": "<string>",
"language": "<string>",
"max_conversation_duration_message": "<string>",
"prompt": {
"prompt": "<string>",
"tool_ids": ["<string>"],
"native_mcp_server_ids": ["<string>"],
"knowledge_base": [
{
"id": "123",
"name": "My Knowledge Base",
"type": "file",
"usage_mode": "auto"
}
]
}
}
},
"custom_llm_extra_body": {},
"user_id": "<string>",
"source_info": { "version": "<string>" },
"dynamic_variables": {}
}
}
]
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
call_name: '<string>',
agent_id: '<string>',
recipients: [
{
id: '<string>',
phone_number: '<string>',
whatsapp_user_id: '<string>',
conversation_initiation_client_data: {
conversation_config_override: {
turn: {soft_timeout_config: {message: '<string>'}},
tts: {voice_id: '<string>', stability: 123, speed: 123, similarity_boost: 123},
conversation: {text_only: true},
agent: {
first_message: '<string>',
language: '<string>',
max_conversation_duration_message: '<string>',
prompt: {
prompt: '<string>',
tool_ids: ['<string>'],
native_mcp_server_ids: ['<string>'],
knowledge_base: [{id: '123', name: 'My Knowledge Base', type: 'file', usage_mode: 'auto'}]
}
}
},
custom_llm_extra_body: {},
user_id: '<string>',
source_info: {version: '<string>'},
dynamic_variables: {}
}
}
]
})
};
fetch('https://api.threetone.in/v1/voiceai/batch-calling/submit', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "<string>",
"name": "<string>",
"agent_id": "<string>",
"created_at_unix": 123,
"scheduled_time_unix": 123,
"last_updated_at_unix": 123,
"agent_name": "<string>",
"phone_number_id": "<string>",
"whatsapp_params": {
"whatsapp_call_permission_request_template_name": "<string>",
"whatsapp_call_permission_request_template_language_code": "<string>",
"whatsapp_phone_number_id": "<string>"
},
"total_calls_dispatched": 0,
"total_calls_scheduled": 0,
"total_calls_finished": 0,
"retry_count": 0
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Submit A Batch Call Request
Submit a batch call request to schedule calls for multiple recipients.
curl --request POST \
--url https://api.threetone.in/v1/voiceai/batch-calling/submit \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"call_name": "<string>",
"agent_id": "<string>",
"recipients": [
{
"id": "<string>",
"phone_number": "<string>",
"whatsapp_user_id": "<string>",
"conversation_initiation_client_data": {
"conversation_config_override": {
"turn": {
"soft_timeout_config": {
"message": "<string>"
}
},
"tts": {
"voice_id": "<string>",
"stability": 123,
"speed": 123,
"similarity_boost": 123
},
"conversation": {
"text_only": true
},
"agent": {
"first_message": "<string>",
"language": "<string>",
"max_conversation_duration_message": "<string>",
"prompt": {
"prompt": "<string>",
"tool_ids": [
"<string>"
],
"native_mcp_server_ids": [
"<string>"
],
"knowledge_base": [
{
"id": "123",
"name": "My Knowledge Base",
"type": "file",
"usage_mode": "auto"
}
]
}
}
},
"custom_llm_extra_body": {},
"user_id": "<string>",
"source_info": {
"version": "<string>"
},
"dynamic_variables": {}
}
}
]
}
'import requests
url = "https://api.threetone.in/v1/voiceai/batch-calling/submit"
payload = {
"call_name": "<string>",
"agent_id": "<string>",
"recipients": [
{
"id": "<string>",
"phone_number": "<string>",
"whatsapp_user_id": "<string>",
"conversation_initiation_client_data": {
"conversation_config_override": {
"turn": { "soft_timeout_config": { "message": "<string>" } },
"tts": {
"voice_id": "<string>",
"stability": 123,
"speed": 123,
"similarity_boost": 123
},
"conversation": { "text_only": True },
"agent": {
"first_message": "<string>",
"language": "<string>",
"max_conversation_duration_message": "<string>",
"prompt": {
"prompt": "<string>",
"tool_ids": ["<string>"],
"native_mcp_server_ids": ["<string>"],
"knowledge_base": [
{
"id": "123",
"name": "My Knowledge Base",
"type": "file",
"usage_mode": "auto"
}
]
}
}
},
"custom_llm_extra_body": {},
"user_id": "<string>",
"source_info": { "version": "<string>" },
"dynamic_variables": {}
}
}
]
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
call_name: '<string>',
agent_id: '<string>',
recipients: [
{
id: '<string>',
phone_number: '<string>',
whatsapp_user_id: '<string>',
conversation_initiation_client_data: {
conversation_config_override: {
turn: {soft_timeout_config: {message: '<string>'}},
tts: {voice_id: '<string>', stability: 123, speed: 123, similarity_boost: 123},
conversation: {text_only: true},
agent: {
first_message: '<string>',
language: '<string>',
max_conversation_duration_message: '<string>',
prompt: {
prompt: '<string>',
tool_ids: ['<string>'],
native_mcp_server_ids: ['<string>'],
knowledge_base: [{id: '123', name: 'My Knowledge Base', type: 'file', usage_mode: 'auto'}]
}
}
},
custom_llm_extra_body: {},
user_id: '<string>',
source_info: {version: '<string>'},
dynamic_variables: {}
}
}
]
})
};
fetch('https://api.threetone.in/v1/voiceai/batch-calling/submit', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "<string>",
"name": "<string>",
"agent_id": "<string>",
"created_at_unix": 123,
"scheduled_time_unix": 123,
"last_updated_at_unix": 123,
"agent_name": "<string>",
"phone_number_id": "<string>",
"whatsapp_params": {
"whatsapp_call_permission_request_template_name": "<string>",
"whatsapp_call_permission_request_template_language_code": "<string>",
"whatsapp_phone_number_id": "<string>"
},
"total_calls_dispatched": 0,
"total_calls_scheduled": 0,
"total_calls_finished": 0,
"retry_count": 0
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
API key for programmatic access
Body
Request model for submitting a batch call job.
Name of the batch call job
Agent ID to use for calls
List of recipients to call
10000Show child attributes
Show child attributes
Unix timestamp to schedule the batch call (None = immediate)
Caller phone number ID (from your purchased numbers)
WhatsApp parameters (future support)
Show child attributes
Show child attributes
Response
Successful Response
Response model for a single batch call job.
Unique batch call ID
Name of the batch call job
Agent ID to use for calls
Unix timestamp when created
Unix timestamp when scheduled to start
Unix timestamp of last update
Current status of the batch job
pending, in_progress, completed, failed, cancelled Name of the agent
Caller phone number ID
Telephony provider for batch calls.
twilio, vobiz, sip_trunk WhatsApp parameters for batch calls (future support).
Show child attributes
Show child attributes
Number of calls dispatched
Number of calls scheduled
Number of calls finished (completed + failed)
Number of retries attempted