Retrieve the full details of a specific campaign by ID. This API is used to fetch all configured campaign settings and values, including its status, dialer parameters, and agent group assignments.
This legacy information is part of v1, v2, or v3, which will be supported only until March 31, 2027. To avoid disruption, migrate your integration to v4 before that date. For endpoint mappings, Bearer token authentication, and scoped API key guidance, see the Migrating to v4 article in the Developer's Guide.
This API is used to fetch all configured campaign settings and values, including its status, dialer parameters, and agent group assignments.
Prerequisites
- You must have access to your contact center API key.
- You must know the campaign ID of the campaign you wish to retrieve.
Endpoint
GET /api/v1/campaigns/{campaign_id}
Path parameters
| Parameter | Description | Type | Required |
|---|---|---|---|
| campaign_id | The numeric ID of the campaign to retrieve. | number | Yes |
Authentication
This endpoint requires authentication using the Contact Center Bearer Token. The token must be included in the request header:
Authorization: Bearer {contactcenter_token}
Response
Returns the complete configuration and status of the specified campaign.
| Element | Sub-element | Description | Type | Notes |
|---|---|---|---|---|
| id | The unique identifier of the campaign. | integer | ||
| name | The name of the campaign. | string | ||
| strategy | The campaign strategy type. | string | Possible values are: simple, predictive_ai. predictive_ai is available only if Dialer AI is enabled for contact center. | |
| dialing_order | The order in which contacts are dialed for live campaigns. | string | Possible values are: disabled, oldest_first, newest_first. Available only if the Dialing order feature is enabled for the contact center. | |
| dial_level | The number of parallel attempts to dial a contact for one available agent. | integer | ||
| dial_level_override | Settings for overriding the dial level based on the number of active agents. | object | ||
| enabled | Whether the dial level override is enabled. | boolean | ||
| override_value | The dial level to use when the number of active agents drops to the threshold value. | number | float | |
| active_agents_threshold | The number of active agents at which to apply the override dial level. | integer | ||
| max_dial_time | The maximum time in seconds to spend dialing a contact. | integer | In seconds. | |
| max_wait_time | The maximum time in seconds to wait for an agent when a contact answers the call. | integer | In seconds. | |
| max_dial_attempts | The maximum number of attempts to dial a contact. | integer | ||
| voice_message | The name of an audio file that will be played as a voice message. | string | ||
| answering_machine_detection | Whether Answering Machine Detection is enabled for calls. | boolean | ||
| live | Whether or not the campaign type is live. | boolean | ||
| survey_enabled | The ability for contact to rate a call after the call ends. | boolean | ||
| local_time_settings | The time settings for calls. | object | Available only if Dialer contact local time is enabled for contact center. | |
| call_from | The time of day when calls to contacts can start. | string | HH:MM | |
| call_to | The time of day when calls to contacts must stop. | string | HH:MM | |
| week_days | The days of the week when calls to contacts can be made. | array of strings | Example values are: Mon, Tue, Wed, Thu, Fri. | |
| caller_id_sets | The Caller ID sets for the campaign. | array of objects | ||
| numbers | The phone numbers assigned to the Caller ID set. | array of strings | This field is contained within each object in caller_id_sets. | |
| local_caller_id | Whether to use only Caller IDs that match the destination country or region. | boolean | ||
| redial_rules | The rules for redialing contacts based on call outcomes. | object | ||
| A redial rule definition. | object | Applies to each object within redial_rules outcome arrays. | ||
| assigned_agents | List of agent email addresses assigned to the campaign. | array of strings |
Redial rules
| Element | Sub element | Description | Type | Notes |
|---|---|---|---|---|
| redial_rules | The rules for redialing contacts based on call outcomes. | object | ||
| machine_answered | Rules applied when a machine answers. | array of objects | Each item is a Redial rule object. | |
| abandoned | Rules applied when the call is abandoned. | array of objects | Each item is a Redial rule object. | |
| no_answer | Rules applied when there is no answer. | array of objects | Each item is a Redial rule object. | |
| rejected | Rules applied when the call is rejected. | array of objects | Each item is a Redial rule object. | |
| failed | Rules applied when the call fails. | array of objects | Each item is a Redial rule object. | |
| busy | Rules applied when the line is busy. | array of objects | Each item is a Redial rule object. |
Redial rule object
| Element | Sub element | Description | Type | Notes |
|---|---|---|---|---|
| Redial rule | A rule definition used in each redial_rules outcome array. | object | ||
| units | The time units for the rule. | string | Possible values are: s, m, h. | |
| wait | The maximum time to wait before redialing. | integer | ||
| change_callerid | Whether to switch the Caller ID set when redialing. | boolean | Optional. |
The full structure of the response may vary depending on the dialer mode or campaign type.
Response example
{
"id": 12345,
"name": "Campaign (154)",
"strategy": "simple",
"dialing_order": "oldest_first",
"dial_level": 1,
"dial_level_override": {
"enabled": true,
"override_value": 1.5,
"active_agents_threshold": 3
},
"max_dial_time": 60,
"max_wait_time": 5,
"max_dial_attempts": 3,
"voice_message": "Voice message (1)",
"answering_machine_detection": true,
"live": false,
"survey_enabled": false,
"local_time_settings": {
"call_from": "08:00",
"call_to": "22:00",
"week_days": [
"Mon",
"Tue",
"Wed",
"Thu",
"Fri"
]
},
"caller_id_sets": [
{
"numbers": [
"100"
]
}
],
"local_caller_id": false,
"redial_rules": {
"machine_answered": [
{
"units": "s",
"wait": 600,
"change_callerid": true
}
],
"abandoned": [
{
"units": "s",
"wait": 600,
"change_callerid": true
}
],
"no_answer": [
{
"units": "s",
"wait": 600,
"change_callerid": true
}
],
"rejected": [
{
"units": "s",
"wait": 600,
"change_callerid": true
}
],
"failed": [
{
"units": "s",
"wait": 600,
"change_callerid": true
}
],
"busy": [
{
"units": "s",
"wait": 600,
"change_callerid": true
}
]
},
"assigned_agents": [
"[email protected]",
"[email protected]"
]
}Errors
| Code | Message | Description |
|---|---|---|
| 401 | Unauthorized | Missing or invalid bearer token. |
| 404 | Campaign not found | No campaign exists with the specified ID. |