Links
Comment on page
📥

API de Contactos

Le permite agregar, editar y recuperar información de contacto a través de API.
La API 1.0 de Contactos y Mensajes quedará obsoleta en 2023. Le recomendamos encarecidamente que empiece a migrar a la nueva API pronto.
Comience a construir con la API de la próxima generación de okeybot.com. Consulte nuestra documentación específica sobre la API.
Las llamadas a la API se realizan por canal. Los tokens se pueden generar usando el icono de llave, junto al canal deseado en Configuración . Hay un límite de frecuencia de 100 llamadas API por minuto.

Peticiones

La API de contactos se compone de varias solicitudes:

Obtener contacto por campo personalizado

Esta solicitud devuelve una lista de objetos de contacto con paginación.
/v1/contact/by_custom_field

Ejemplo de solicitud GET

Si desea recuperar una lista de contactos por campo personalizado de tipo booleano, asegúrese de utilizar TRUE o FALSE como valor.
curl -X GET \
'https://app.okeybot.com/api/v1/contact/by_custom_field?name=firstName&value=Muhammad%20Mahin' \
-H 'Authorization: Bearer {channel_token}' \
-H 'Content-Type: application/json'

Respuesta: éxito (estado HTTP → 200)

{
"data": [
{
"id": "1776025372480910",
"custom_fields": {
"firstName": "Mahin",
"lastName": "Dar",
"locale": "en_GB",
"timezone": "5",
"gender": "male",
"phone": "123123",
"email": "[email protected]",
"customerid": "1"
},
"tags": [
"Blog Updates",
"Platform Updates"
],
"created_at": 1575618542
}
],
"links": {
"first": "http://app.okeybot.com/api/v1/contact/by_custom_field?page=1",
"last": "http://app.okeybot.com/api/v1/contact/by_custom_field?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"path": "http://app.okeybot.com/api/v1/contact/by_custom_field",
"per_page": 10,
"to": 1,
"total": 1
}
}

Obtener contacto por ID

Esta solicitud devuelve un único objeto de contacto.
/v1/contact/{contact_id}

Ejemplo de solicitud GET

curl -X GET \
https://app.okeybot.com/api/v1/contact/1776025372480910 \
-H 'Authorization: Bearer {channel_token}' \
-H 'Content-Type: application/json' \

Respuesta: éxito (estado HTTP → 200)

{
"data": {
"id": "1776025372480910",
"custom_fields": {
"firstName": "Mahin",
"lastName": "Dar",
"locale": "en_GB",
"timezone": "5",
"gender": "male",
"phone": "123123",
"email": "[email protected]",
"customerid": "1"
},
"tags": [
"Blog Updates",
"Platform Updates"
],
"created_at": 1575618542
}
}

Actualizar contacto por ID

Esta solicitud actualiza un valor de campo personalizado de contacto.
/v1/contact/{contact_id}

Ejemplo de solicitud PUT

curl -X PUT \
https://app.okeybot.com/api/v1/contact/1776025372480910 \
-H 'Authorization: Bearer {channel_token}' \
-H 'Content-Type: application/json' \
-d '{
"custom_fields": [
{
"name": "firstName",
"value": "Muhammad Mahin"
},
{
"name": "lastName",
"value": "Dar"
}
]
}'

Respuesta: éxito (estado HTTP → 200)

{
"data": {
"id": "cus_112233344555"
}
}

Limitaciones

Máximo 30 campos actualizados por solicitud.
Tenga en cuenta que en el caso del canal Viber, debido a una cierta limitación, la ID de contacto debe proporcionarse en un formato codificado en Base64 .

Agregar etiqueta por ID

Esta solicitud agrega etiquetas para un contacto.
/v1/contact/{contact_id}/tags

Ejemplo de solicitud POST

curl -X POST \
https://app.okeybot.com/api/v1/contact/1776025372480910/tags \
-H 'Authorization: Bearer {channel_token}' \
-H 'Content-Type: application/json' \
-d '{
"tags": [
"Blog Updates",
"Platform Updates"
]
}'

Respuesta: éxito (estado HTTP → 200)

{
"status": "success",
"message": "Contact Tags have been added successfully.",
"data": []
}

Limitaciones

Máximo 10 etiquetas agregadas por solicitud.

Eliminar etiqueta por ID

Esta solicitud elimina las etiquetas de un contacto.
/v1/contact/{contact_id}/tags

Ejemplo de solicitud DELETE

curl -X DELETE \
https://app.okeybot.com/api/v1/contact/1776025372480910/tags \
-H 'Authorization: Bearer {channel_token}' \
-H 'Content-Type: application/json' \
-d '{
"tags": [
"Blog Updates",
"Platform Updates"
]
}'

Respuesta: éxito (estado HTTP → 200)

{
"status": "success",
"message": "Contact Tags deleted successfully.",
"data": []
}

Limitaciones

Máximo de 10 etiquetas eliminadas por solicitud.
Tenga en cuenta que en el caso del canal Viber, debido a una cierta limitación, la 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 de solicitud POST

curl -X POST \
https://app.okeybot.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": "Muhammad Mahin"
},
{
"name": "lastName",
"value": "Dar"
}
]
}'

Respuesta: éxito (estado HTTP → 200)

{
"data": {
"id": "cus_112233344555"
}
}

Códigos de error

No autorizado (estado HTTP → 401)

{
"status": "error",
"message": "API Token is invalid.",
"data": []
}

Demasiadas solicitudes (estado HTTP → 429)

{
"status": "error",
"message": "Too many requests",
"data": []
}

Método no permitido (estado HTTP → 405)

{
"status": "error",
"message": "405 Method Not Allowed.",
"data": []
}

General (Estado HTTP → 403)

{
"status": "error",
"message": "Message String",
"data": []
}

Limitaciones

Máximo 30 campos creados por solicitud.