> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.danaconnect.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# API REST - Activación de Conversaciones


### Especificaciones OpenAPI:
Puede encontrar toda la documentación y especificaciones bajo el estándar OpenAPI en nuestro portal de desarrolladores: https://dev.danaconnect.com 

# API REST - Activación de Conversaciones
El API REST de Conversaciones es una interfaz utilizada para iniciar flujos de comunicaciones. Para este ejemplo se usa el id de la conversación o convesationID, también es posible iniciar la conversación por el id del proyecto o projectID.

Algunos flujos de comunicaciones:

* A un contacto
* A un lote de hasta 10 contactos
* A una lista de contactos completa que haya sido pre-cargada
---
### ${color}[#ef4b26](**URL Base:**)

Todos los URLs referentes a esta API tiene la siguiente base:

###### ${color}[#ef4b26](**Protocolo: HTTPS**)
###### ${color}[#ef4b26](**URL**)
Web Service
https://appserv.danaconnect.com/api/1.0/rest/
---
### ${color}[#ef4b26](**Consideraciones previas a utilizar el API:**)

1. La empresa que va utilizar el API debe contar con un usuario y contraseña válidos.
2. Por motivos de seguridad, el usuario que va a utilizar el API deber contar con un permiso especial. El administrador de su cuenta DANAConnect debe asegurarse de que este permiso esté habilitado.
3. Esta API funciona sobre Conversaciones que previamente se hayan creado y estén activas. Esto significa que debe tener el ID de Conversación (convesationID).

![](https://storage.crisp.chat/users/helpdesk/website/20c17c74d739e400/unnamed-1_k151sk.png)

4. Es importante tener ubicados los códigos de los campos requeridos para iniciar la conversación.

Ejemplo:

La conversación con ID ( ${color}[#ef4e26](**145164**)) requiere:

* NOMBRE
* APELLIDO
* EMAIL
* DEUDA
* FECHAVENCIMIENTO

Para aprender cómo ubicar el código de un campo, acceder al siguiente enlace: [http://help.danaconnect.com/es/editar-campo/](https://help.danaconnect.com/es/article/editar-campo-de-una-lista-de-contactos-n6x57r/)
---
### ${color}[#ef4b26](**Autenticación al API**)

EL API utiliza el mismo sistema de credenciales de usuarios DANAConnect.

Se utiliza el método de autenticación HTTP BASIC AUTH, el cual está basado en un login y password.

${color}[#ef4e26](**Login:**) El login consiste en el nombre de usuario concatenado con un @ y seguido del código de la compañía.

${color}[#ef4e26](**Ejemplo:**)

**Nombre de usuario**: apiuser
**Código de compañía**: formaciondana
**Login para el API**: apiuser@formaciondana

El método HTTP Basic Auth es el más común para autenticarse desde clientes REST:

![](https://storage.crisp.chat/users/helpdesk/website/20c17c74d739e400/unnamed-2_uarauw.png)
---
### ${color}[#ef4b26](**Resumen de los métodos**)

1. ${color}[#ef4e26](**startWithDataIdBody:**)

Inicia una conversación a un contacto.

Este es el método mas utilizado para activar flujos transacciones, ya que el mismo envia a través del POST los parámetros de un contacto requeridos para que funcione la conversación.

${color}[#ef4e26](**Ejemplos:**) Si la Conversación con ID ${color}[#ef4e26](**145164**) requiere los parámetros:

NOMBRE
APELLIDO
EMAIL
DEUDA
FECHAVENCIMIENTO

Entonces el Request es:

![](https://storage.crisp.chat/users/helpdesk/website/20c17c74d739e400/image004_1765rje.png)

Respuesta:

idResult se refiere al identificador del registro cargado en la lista de contactos.

![](https://storage.crisp.chat/users/helpdesk/website/20c17c74d739e400/image005_sm6jwo.png)

${color}[#ef4e26](**startList:**)

Inicia una conversación a toda la lista pre-cargada y asociada a la conversación.

Por lo general este método trabaja de la mano con la carga masiva de contactos, por lo que es muy frecuente hacer una carga masiva de contactos y luego activar la conversación a toda la lista.

![](https://storage.crisp.chat/users/helpdesk/website/20c17c74d739e400/image006-1_18kpedh.png)

![](https://storage.crisp.chat/users/helpdesk/website/20c17c74d739e400/image007_kwfmlu.png)

${color}[#ef4e26](**startWithDataListIdBody:**) Inicia una conversación a un lote de hasta 10 contactos de manera simultanea.

Este método funciona de manera similar a ${color}[#ef4e26](**startWithDataIdBody**), pero permite activar flujos hasta 10 contactos, lo cual reduce la cantidad de peticiones.

Ejemplo: Si la Conversación con ID ${color}[#ef4e26](**145164**) requiere los parámetros:

* NOMBRE
* APELLIDO
* EMAIL
* DEUDA
* FECHAVENCIMIENTO

Entonces el Request es:

![](https://storage.crisp.chat/users/helpdesk/website/20c17c74d739e400/image008_drjwa3.png)

Note que toda la petión está contenida entre corchetes [].

Respuesta:

![](https://storage.crisp.chat/users/helpdesk/website/20c17c74d739e400/image009_yra70n.png)

${color}[#ef4e26](**Códigos de error:**)

* idError 1 – ERROR_INVALIDUSER: Usuario inválido.
* idError 2 – ERROR_INVALIDLOGINPWD: Usuario y password inválido
* idError 3 – ERROR_ACCESSDENIED: El usuario no posee el permiso para ejecutar APIs de DANA.
* idError 4 – ERROR_INVALIDCOMPANY: El código de la cuenta DANA es inválido.
* idError 5 – ERROR_INVALIDIDCONTACT: El id del contacto es inválido. Este código de error no aplica en el API REST.
* idError 6 – INVALIDIDCONVERSATION: El ID de la conversación es inválido o no se corresponde con su cuenta.
* idError 7 – ERROR_INSUFFICIENTBALANCE: La cuenta no posee créditos suficiente para enviar los mensajes.
* idError 8 – ERROR_INTERNALERROR: Error interno DANAConnect.
* idError 9 – ERROR_RUNTIMERROR: Error interno DANAConnect, principalmente causado por un error en el formato de la petición (JSON)
* idError 10 – ERROR_INVALIDTABLEORCOLUMN: El código del campo X no existe en la lista de contactos Y.
* idError 11 – ERROR_CONTACTLISTEMPTY: La lista de contactos sobre la cual ha utilizado el método: startList está vacía.
* idError 12 - ERROR_INVALIDCONVERSATIONSTATUS: El ID de conversación está cancelado o suspendido.

Ejemplos de respuestas con error:

![](https://storage.crisp.chat/users/helpdesk/website/20c17c74d739e400/image011-1_1pc2vav.png)