Reference
Configurations API
Create, list, and update call execution configurations via the API.
Overview
Call execution configurations define scheduling windows, retry logic, rate limiting, provider selection, inbound call rules, and pre-checks. Each configuration is scoped to a single template — a template may have at most one config. Reseller and merchant scope are derived from the template, so they are not accepted in the request body. Use the API to manage these programmatically.
Create configuration
POST
/configurations Request Body
Only template_id, initial_offset, retry_offset, call_start_time, call_end_time, max_retry, and calling_provider are required; the rest have defaults.
json
{
"template_id": "3f0e6f6e-8b2a-4c1d-9e7f-0a1b2c3d4e5f",
"initial_offset": 0,
"retry_offset": 3600,
"call_start_time": "09:00",
"call_end_time": "21:00",
"max_retry": 3,
"calling_provider": "TWILIO",
"enable_calling": true,
"enable_international_call": false,
"enable_inbound": false,
"enforce_blacklist": true,
"rate_limit_enabled": true,
"rate_limit_max_calls": 100,
"rate_limit_window_seconds": 60,
"rate_limit_whitelist": [],
"pre_checks": []
}Response
json
{
"id": "cfg_abc123",
"reseller_id": "res_001",
"template": "tpl_xyz789",
"merchant_id": "mer_abc",
"calling_provider": "TWILIO",
"enable_calling": true,
"created_at": "2025-01-15T10:30:00Z"
}List configurations
GET
/configurations | Query Param | Type | Description |
|---|---|---|
reseller_id | string | Filter configurations by reseller. |
template_id | string | Filter by owning template UUID. |
merchant_id | string | Filter configurations by merchant. |
Update configuration
PUT
/configurations/{config_id} Example: Update Retry and Scheduling
json
{
"initial_offset": 0,
"retry_offset": 1800,
"call_start_time": "10:00",
"call_end_time": "20:00",
"max_retry": 5,
"calling_provider": "TWILIO",
"enable_calling": true,
"enable_international_call": false,
"enable_inbound": true,
"inbound_call_start_time": "09:00",
"inbound_call_end_time": "22:00",
"inbound_call_timezone": "Asia/Kolkata",
"inbound_block_action": "REDIRECT",
"inbound_redirect_number": "+919999999999",
"inbound_block_message": "We are currently closed. Redirecting you to support.",
"enforce_blacklist": true,
"rate_limit_enabled": true,
"rate_limit_max_calls": 200,
"rate_limit_window_seconds": 60,
"rate_limit_whitelist": ["+911234567890"],
"pre_checks": [
{
"name": "dnd_check",
"type": "external_api",
"enabled": true,
"default_on_failure": "proceed"
}
]
}Full Reference
For the complete list of CallExecutionConfig fields, see Call Execution Configuration.
Error responses
| Status | Meaning | Common Cause |
|---|---|---|
400 | Bad Request | Invalid field values or missing required fields. |
404 | Not Found | Configuration ID does not exist. |
409 | Conflict | Duplicate reseller + template combination. |
Was this helpful?