/v1/accounts/{accountId}/campaignsCrea una nueva campaña en estado Draft. Después de crearla, agrega números a la campaña y actívala para comenzar a llamar.
Todos los campos se validan cuando se crea la campaña, y nuevamente cuando se activa. Algunas validaciones solo se aplican al momento de la activación, como que la fecha de finalización no esté en el pasado, que el Queues Monitor esté en línea para las campañas Predictive y Progressive, o que una campaña Static tenga números.
ID de tu cuenta de SIP Caller. Consulta ID de la cuenta.
Un objeto JSON con la configuración de la campaña. Se deben enviar todos los campos, excepto los que aceptan null, que toman el valor null cuando se omiten.
Nombre de la campaña, de entre 2 y 99 caracteres. Debe ser único en la cuenta.
IDs de las etiquetas de la campaña. Solo los usuarios con al menos una de estas etiquetas pueden ver la campaña en la consola web. Envía un array vacío para no asignar etiquetas.
Prioridad de la campaña, usada para decidir de qué campaña tomar los próximos números a llamar, cuando varias campañas comparten recursos.
LowNormalHighID de la central telefónica usada para realizar las llamadas.
ID de la extensión de la central telefónica usada para realizar las llamadas.
Modo de discador de la campaña y su configuración. El campo mode define el modo, y los demás campos dependen de él.
Primer día en el que la campaña puede realizar llamadas.
Último día en el que la campaña puede realizar llamadas (incluido), o null para no tener fecha de finalización. No puede ser anterior a startDate.
ID del grupo de feriados de la campaña, o null. Los feriados usan los horarios de trabajo definidos para los domingos.
Zona horaria IANA de la campaña, como America/New_York. Las fechas y los horarios de trabajo son relativos a esta zona horaria.
Rangos horarios en los que se pueden realizar llamadas, para cada día de la semana. Todos los días deben estar presentes: envía un array vacío para los días sin llamadas.
Indica si se pueden agregar o eliminar números una vez activada la campaña (Dynamic) o no (Static). Una campaña estática finaliza automáticamente cuando se procesaron todos sus números.
StaticDynamicOrden en que se llaman los números: primero en entrar, primero en salir (Fifo), o último en entrar, primero en salir (Lifo).
FifoLifoIndica si los números aún no contactados se llaman antes que los reintentos (NotContacted), o al revés (RetryPending).
NotContactedRetryPendingPrefijo que se agrega a cada número antes de llamar, por ejemplo para seleccionar una línea saliente, o "" para no usar prefijo. Se pueden especificar hasta 256 prefijos separados por comas, para rotar entre ellos: cada uno de hasta 6 caracteres, entre dígitos, *, # y +.
Tiempo de espera para que se atienda la llamada: entre 1 y 600 segundos, o entre 1 y 10 minutos. En el modo Progressive, se aplica a la llamada al agente.
Cantidad máxima de veces que se llama a cada número, entre 1 y 9.
Tiempo mínimo entre intentos, de hasta 6 meses. Se pueden definir entre 1 y 8 intervalos, para usar distintos tiempos de espera en los sucesivos intentos.
IDs de las listas negras con números a los que no se debe llamar. Envía un array vacío si no hay ninguna.
Qué sucede cuando se atiende una llamada. El campo $t define el modo de gestión de llamada, y los demás campos dependen de él. Obligatorio para los modos de discador Power y Predictive, y debe ser null para el modo Progressive, donde la llamada siempre se conecta con un agente.
ID del webhook que recibe los eventos de la campaña, o null.
Devuelve el nuevo objeto campaña, con el estado 201 Created. El encabezado Location contiene la URL de la nueva campaña.
/v1/accounts/ACCOUNT_ID/campaigns
curl -X POST 'https://api.sipcaller.com/v1/accounts/ACCOUNT_ID/campaigns' \
-H 'Authorization: Bearer API_KEY_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"name": "Q4 Renewals",
"tagIds": [],
"runningPriority": "Normal",
"phoneSystemId": "0199817e-52e0-7079-9585-99a655c2acb3",
"extensionId": "93e5cdfc-6e42-4995-8263-9388a9047c29",
"dialer": {
"mode": "Predictive",
"intensity": 0
},
"startDate": "2026-10-01",
"endDate": null,
"holidayGroupId": null,
"timeZoneId": "America/New_York",
"workingTimes": {
"monday": [
{
"start": "09:00",
"end": "13:00"
},
{
"start": "14:00",
"end": "18:00"
}
],
"tuesday": [
{
"start": "09:00",
"end": "13:00"
},
{
"start": "14:00",
"end": "18:00"
}
],
"wednesday": [
{
"start": "09:00",
"end": "13:00"
},
{
"start": "14:00",
"end": "18:00"
}
],
"thursday": [
{
"start": "09:00",
"end": "13:00"
},
{
"start": "14:00",
"end": "18:00"
}
],
"friday": [
{
"start": "09:00",
"end": "13:00"
},
{
"start": "14:00",
"end": "18:00"
}
],
"saturday": [],
"sunday": []
},
"numberProvisioning": "Dynamic",
"numberSelection": "Fifo",
"numberPriority": "RetryPending",
"callPrefix": "",
"ringTimeout": {
"value": 30,
"unit": "Seconds"
},
"maxAttempts": 3,
"retryIntervals": [
{
"value": 1,
"unit": "Hours"
},
{
"value": 1,
"unit": "Days"
}
],
"blackListIds": [
"01a0dedd-b9a2-729d-8e0a-4e3ad9197aea"
],
"callHandling": {
"$t": "Callflow",
"answerTypeDetector": {
"$t": "AmdAgent",
"amdAgentId": "019f9cef-4a91-7c97-b7cd-edbb06a5038d",
"unknownAnswerTreatment": "Human",
"messageForVoicemail": {
"$t": "OnFirstDetection",
"callflowId": "019f81ba-a149-731a-a6cb-b47146c5f90d",
"isCallRetryEnabled": true
}
},
"callflowId": "019f9cd5-e8cd-716b-a9a6-37c9db2f97a2",
"ttsVoiceId": "azu-en-US-AvaMultilingualNeural"
},
"webhookEndpointId": "019af0c3-62d6-70f2-84a1-5ab5671721bb"
}'Respuesta
201 Created
{
"id": "01a0e2b4-5c1d-7f3a-9b2e-6d8c4a1f0e27",
"name": "Q4 Renewals",
"tagIds": [],
"state": "Draft",
"activeStatus": null,
"runningPriority": "Normal",
"phoneSystemId": "0199817e-52e0-7079-9585-99a655c2acb3",
"extensionId": "93e5cdfc-6e42-4995-8263-9388a9047c29",
"dialer": {
"mode": "Predictive",
"intensity": 0
},
"startDate": "2026-10-01",
"endDate": null,
"holidayGroupId": null,
"timeZoneId": "America/New_York",
"workingTimes": {
"monday": [
{
"start": "09:00",
"end": "13:00"
},
{
"start": "14:00",
"end": "18:00"
}
],
"tuesday": [
{
"start": "09:00",
"end": "13:00"
},
{
"start": "14:00",
"end": "18:00"
}
],
"wednesday": [
{
"start": "09:00",
"end": "13:00"
},
{
"start": "14:00",
"end": "18:00"
}
],
"thursday": [
{
"start": "09:00",
"end": "13:00"
},
{
"start": "14:00",
"end": "18:00"
}
],
"friday": [
{
"start": "09:00",
"end": "13:00"
},
{
"start": "14:00",
"end": "18:00"
}
],
"saturday": [],
"sunday": []
},
"numberProvisioning": "Dynamic",
"numberSelection": "Fifo",
"numberPriority": "RetryPending",
"callPrefix": "",
"ringTimeout": {
"value": 30,
"unit": "Seconds"
},
"maxAttempts": 3,
"retryIntervals": [
{
"value": 1,
"unit": "Hours"
},
{
"value": 1,
"unit": "Days"
}
],
"blackListIds": [
"01a0dedd-b9a2-729d-8e0a-4e3ad9197aea"
],
"callHandling": {
"$t": "Callflow",
"answerTypeDetector": {
"$t": "AmdAgent",
"amdAgentId": "019f9cef-4a91-7c97-b7cd-edbb06a5038d",
"unknownAnswerTreatment": "Human",
"messageForVoicemail": {
"$t": "OnFirstDetection",
"callflowId": "019f81ba-a149-731a-a6cb-b47146c5f90d",
"isCallRetryEnabled": true
}
},
"callflowId": "019f9cd5-e8cd-716b-a9a6-37c9db2f97a2",
"ttsVoiceId": "azu-en-US-AvaMultilingualNeural"
},
"webhookEndpointId": "019af0c3-62d6-70f2-84a1-5ab5671721bb",
"numbersCount": 0,
"progress": {
"notContacted": 0,
"contacting": 0,
"success": 0,
"failure": 0,
"retryPending": 0,
"blacklisted": 0,
"deleted": 0
},
"varNames": null,
"isArchived": false,
"interactionLabels": [
{
"id": "a6d5b2e5-6b3f-49d8-aaa3-bc7b4c693f05",
"label": "Renewal confirmation"
}
],
"createdAt": "2026-09-28T14:02:11.482",
"updatedAt": "2026-09-28T14:02:11.482",
"deletedAt": null,
"startedAt": null,
"endedAt": null
}