Automation API
Esta API permite automatizar la gestión de contactos en los Hubs Salientes de uContact. A través de sus endpoints, puedes subir listas de contactos para campañas y fresh leads para contactos prioritarios que necesitan ser procesados de inmediato o en una fecha específica. Soporta múltiples canales de comunicación incluyendo telefonía, correo, SMS y WhatsApp.
Subir una lista
Este endpoint es utilizado para subir una nueva lista a un hub saliente.
- Method: POST
- URL: https://<domain>.ucontactcloud.com/api/dialer/id/<hubName>/lists
Descripción general
El endpoint inicia la subida de una lista para un hub saliente existente. Una vez creada, la lista se coloca en estado cargando mientras los contactos siguen siendo procesados asincrónicamente. Una vez todos los contactos han sido almacenados en la base de datos la lista se coloca en el estado inactiva.
Request Body
El body de la request se utiliza para especificar el nombre de la lista, y los contactos en esta.
- Content-Type: application/json
- Body: Un JSON object con:
- una propiedad
filename. El valor defilenamees un string con el nombre de la lista. - una propiedad
list. El valor delistes un array conteniendo un objeto por contacto.
- una propiedad
Para un hub saliente de telefonía:
{
"filename": "June sales clients",
"list": [
{
"clientIds": ["1567890", "1234567"]
},
{
"clientIds": ["1987789"]
}
]
}Para un hub saliente de email:
{
"filename": "June sales clients",
"list": [
{
"clientId": "johnsmith@mail.com"
},
{
"clientId": "janesmith@mail.com"
}
]
}La especificación para un objeto de contacto se encuentra en la sección Contactos
Fresh leads
Este endpoint es utilizado para subir fresh leads a un hub saliente existente.
- Method: POST
- URL: https://<domain>.ucontactcloud.com/api/dialer/id/<hubName>/freshLeads
Descripción general
El endpoint sube una lista de leads, estas son contactos que queremos contactar lo antes posible o en una fecha y hora específica, la request se completa una vez que todos los contactos se hayan guardado en la base de datos, se espera que la cantidad de leads por request sean menos que en una lista que se suba normalmente.
Las leads pueden ser vistas en el dashboard del hub como agendados, estos contactos serán procesados con prioridad sobre el resto de listas.
Para cada lead podemos especificar una scheduleDate y timezone para indicar cuándo queremos que se envíe el mensaje o se inicie la llamada con el contacto, si no especificamos una scheduleDate el contacto será contactado lo antes posible (cuando la campaña esté en hora, y en caso de ser un hub de telefonía, haya agentes disponibles para atender la llamada).
Request Body
El body de la request es usado para especificar las leads a procesar.
- Content-Type: application/json
- Body: A JSON object containing:
- una propiedad
leads. El valor deleadses un array conteniendo un objeto por cada lead.
- una propiedad
Para un hub saliente de telefonía:
{
"leads": [
{
"clientIds": ["1567890", "1234567"],
"timezone": "America/Montevideo",
"scheduleDate": "2025-11-03 11:54:00"
},
{
"clientIds": ["1987789"]
}
]
}Para un hub saliente de email:
{
"leads": [
{
"clientId": "johnsmith@mail.com",
"timezone": "America/Montevideo",
"scheduleDate": "2025-11-03 11:54:00"
},
{
"clientId": "janesmith@mail.com"
}
]
}La especificación para un objeto de contacto se encuentra en la sección Contactos
Contactos
Los contactos en una lista son recibidos por uContact como JSON objects con diferentes propiedades dependiendo del tipo de hub saliente, y si es subido con el endpoint de fresh leads o no.
Propiedades generales
Estas propiedades son utilizadas para todos los contactos.
| Propiedad | Tipo | Descripción | Ejemplo |
|---|---|---|---|
timezone | String (opcional) | Especifica la zona horaria del contacto, se intentará contactarlo dentro del horario del hub en esta zona horaria | America/Montevideo |
data | Object (opcional) | Un objeto JSON con la información relevante del contacto, puede ser utilizada en formularios y luego visualizada en el detalle de la interacción | {"name":"John Smith", "birthday":"2003-06-08"} |
priority | Integer (opcional) | Un entero indicando la prioridad del contacto, cuanto más bajo el número, antes será procesado el contacto, por defecto su valor es 0 | 67 |
contactId | String (opcional) | La id que identifica a un cliente sin importar el clientId, se puede obtener del ucrm | 1365 |
Propiedades de telefonía
Estas propiedades son utilizadas para todos los contactos de hubs de telefonía.
| Propiedad | Tipo | Descripción | Ejemplo |
|---|---|---|---|
clientIds | Array[Integer] (requerido) | Un arreglo conteniendo todos los números del cliente que queremos llamar | ["+1 (425) 671-5523","+1 (312) 548-7701"] |
Propiedades de preview
Estas propiedades son utilizadas solo para contactos de hubs preview.
| Propiedad | Tipo | Descripción | Ejemplo |
|---|---|---|---|
agent | String (opcional) | Nombre de usuario del usuario que vaya a manejar este contacto, todas las llamadas de este contacto serán enviadas a este usuario | my_best_agent |
Propiedades de canales de texto
Estas propiedades son utilizadas para todos los contactos de hubs de mensajería (SMS, WhatsApp y email).
| Propiedad | Tipo | Descripción | Ejemplo |
|---|---|---|---|
content | String (opcional) | El mensaje que queremos enviar, si no se especifica se enviará la plantilla configurada en el hub | Hola, este es un mensaje enviado automáticamente desde un Hub Saliente de uContact. |
template | String (opcional) | El nombre de una plantilla creada en el sistema, si se especifica se enviará en lugar de la plantilla configurada en el hub | sales_awesome_template |
Propiedades de email
Estas propiedades son utilizadas solo para contactos de hubs de email.
| Propiedad | Tipo | Descripción | Ejemplo |
|---|---|---|---|
clientId | String (requerido) | El email al que se enviará el mensaje | john.smith@mycompany.net |
subject | String (opcional) | El asunto del correo que enviemos, si no se especifica se utilizará el asunto configurado en el hub | Very important matter |
attachments | Array[String] (opcional) | Un arreglo con las rutas de los adjuntos del marcador, estas pueden obtenerse en la sección de adjuntos en la pantalla del hub | ["20251103/06ee53cc-0a90-4f18-8d07-09cc73910293-my_image.png"] |
Propiedades de WhatsApp/SMS
Estas propiedades son utilizadas solo para contactos de hubs de WhatsApp o SMS.
| Propiedad | Tipo | Descripción | Ejemplo |
|---|---|---|---|
clientId | String (requerido) | El número de teléfono al que se enviará el mensaje | +1 (312) 548-7701 |
Propiedades de fresh leads
Estas propiedades son usadas para todos los contactos subidos por fresh leads.
| Propiedad | Tipo | Descripción | Ejemplo |
|---|---|---|---|
scheduleDate | String (opcional) | La fecha, en formato yyyy-MM-dd HH:mm:ss, en la que queremos contactar al contacto. Si se especifica una timezone se usará para la fecha especificada | 2025-12-25 00:00:00 |
