Te permite agregar, editar y recuperar información de contacto a través de la API.
Las llamadas API se realizan por canal. Los tokens se pueden generar mediante el icono de llave, junto al canal deseado en Settings/Channels. Hay un límite de 100 llamadas al API por minuto.
Solicitudes #
La API de contactos se compone de varias solicitudes:
- Obtener contacto por campo personalizado
- Obtener contacto por ID
- Actualizar contacto por ID
- Añadir etiqueta por ID
- Eliminar etiqueta por ID
- Crear contacto
Obtener Contacto por Campo Personalizado #
Esta solicitud devuelve una lista de objetos Contact con paginación.
/v1/contact/by_custom_field
Ejemplo GET Request #
curl -X GET \ 'https://chatcentral.orade.com/api/v1/contact/by_custom_field?name=firstName&value=Juan%20Ejemplo' \ -H 'Authorization: Bearer {channel_token}' \ -H 'Content-Type: application/json'
Respuesta – Success (HTTP status → 200) #
{ "data": [ { "id": "1776025372480910", "custom_fields": { "firstName": "Mahin", "lastName": "Dar", "locale": "en_GB", "timezone": "5", "gender": "male", "phone": "123123", "email": "juanej@orade.com", "customerid": "1" }, "tags": [ "Blog Updates", "Platform Updates" ], "created_at": 1575618542 } ], "links": { "first": "http://chatcentral.orade.com/api/v1/contact/by_custom_field?page=1", "last": "http://chatcentral.orade.com/api/v1/contact/by_custom_field?page=1", "prev": null, "next": null }, "meta": { "current_page": 1, "from": 1, "last_page": 1, "path": "http://chatcentral.orade.com/api/v1/contact/by_custom_field", "per_page": 10, "to": 1, "total": 1 } }
Get Contact by ID – Obtener Contacto por ID #
Esta solicitud devuelve un único objeto de Contact.
/v1/contact/{contact_id}
Ejemplo GET Request #
curl -X GET \ https://chatcentral.orade.com/api/v1/contact/1776025372480910 \ -H 'Authorization: Bearer {channel_token}' \ -H 'Content-Type: application/json' \
Respuesta – Success (HTTP status → 200) #
{ "data": { "id": "1776025372480910", "custom_fields": { "firstName": "Mahin", "lastName": "Dar", "locale": "en_GB", "timezone": "5", "gender": "male", "phone": "123123", "email": "juanej@orade.com", "customerid": "1" }, "tags": [ "Blog Updates", "Platform Updates" ], "created_at": 1575618542 } }
Update Contact by ID – Actualizar Contacto por ID #
Esta solicitud actualiza el valor de un campo personalizado de contacto.
/v1/contact/{contact_id}
Ejemplo PUT Request #
curl -X PUT \ https://chatcentral.orade.com/api/v1/contact/1776025372480910 \ -H 'Authorization: Bearer {channel_token}' \ -H 'Content-Type: application/json' \ -d '{ "custom_fields": [ { "name": "firstName", "value": "Juan Ejemplo" }, { "name": "lastName", "value": "Dar" } ] }'
Respuesta – Success (HTTP status → 200) #
{ "data": { "id": "cus_112233344555" } }
Limitantes #
Máximo 30 campos actualizados por solicitud.
Ten en cuenta que en el caso de Viber Channel – debido a una cierta limitación – el ID de contacto debe proporcionarse en un formato codificado en Base64.
Add Tag by ID – Agregar Etiqueta por ID #
Esta solicitud agrega una etiquetas para un Contacto.
/v1/contact/{contact_id}/tags
Ejemplo POST Request #
curl -X POST \ https://chatcentral.orade.com/api/v1/contact/1776025372480910/tags \ -H 'Authorization: Bearer {channel_token}' \ -H 'Content-Type: application/json' \ -d '{ "tags": [ "Blog Updates", "Platform Updates" ] }'
Respuesta – Success (HTTP status → 200) #
{ "status": "success", "message": "Contact Tags have been added successfully.", "data": [] }
Limitantes #
Máximo 10 etiquetas agregadas por solicitud.
Remove Tag by ID – Eliminar Etiquetas por ID #
Esta solicitud elimina las etiquetas de un contacto.
/v1/contact/{contact_id}/tags
Ejemplo DELETE Request #
curl -X DELETE \ https://chatcentral.orade.com/api/v1/contact/1776025372480910/tags \ -H 'Authorization: Bearer {channel_token}' \ -H 'Content-Type: application/json' \ -d '{ "tags": [ "Blog Updates", "Platform Updates" ] }'
Respuesta – Success (HTTP status → 200) #
{ "status": "success", "message": "Contact Tags deleted successfully.", "data": [] }
Limitantes #
Máximo 10 etiquetas eliminadas por solicitud.
IMPORTANTE: Ten en cuenta que en el caso de Viber Channel – debido a una cierta limitación – el ID de contacto debe proporcionarse en un formato codificado en Base64.
Crear contacto #
Esta solicitud crea un Contacto y establece valores para sus Campos personalizados.
/v1/contact
Ejemplo GET Request #
curl -X POST \ https://chatcentral.orade.com/api/v1/contact/ \ -H 'Authorization: Bearer {channel_api_token}' \ -H 'Content-Type: application/json' \ -d '{ "custom_fields": [ { "name": "phone", "value": "03244077087" }, { "name": "firstName", "value": "Juan Ejemplo" }, { "name": "lastName", "value": "Dar" } ] }'
Respuesta – Success (HTTP status → 200) #
{ "data": { "id": "cus_112233344555" } }
Códigos de Error #
Unauthorized (HTTP Status → 401) #
{ "status": "error", "message": "API Token is invalid.", "data": [] }
Too Many Requests (HTTP Status → 429) #
{ "status": "error", "message": "Too many requests", "data": [] }
Method Not Allowed (HTTP Status → 405) #
{ "status": "error", "message": "405 Method Not Allowed.", "data": [] }
General (HTTP Status → 403) #
{ "status": "error", "message": "Message String", "data": [] }
Limitantes #
Máximo 30 campos creados por solicitud.