📥API de Contactos

Le permite agregar, editar y recuperar información de contacto a través de API.Le permite agregar, editar y recuperar información de contacto a través de 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

  • Obtener contacto por ID

  • Actualizar contacto por ID

  • Añadir etiqueta por ID

  • Elimina la etiqueta de ID

  • Crear contacto

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.bony.chat/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": "muhammad@bony.chat",
   "customerid": "1"
   },
   "tags": [
   "Blog Updates",
   "Platform Updates"
   ],
   "created_at": 1575618542
   }
   ],
   "links": {
   "first": "http://app.bony.chat/api/v1/contact/by_custom_field?page=1",
   "last": "http://app.bony.chat/api/v1/contact/by_custom_field?page=1",
   "prev": null,
   "next": null
   },
   "meta": {
   "current_page": 1,
   "from": 1,
   "last_page": 1,
   "path": "http://app.bony.chat/api/v1/contact/by_custom_field",
   "per_page": 10,
   "to": 1,
   "total": 1
   }
   }Copied!

Obtener contacto por ID

Esta solicitud devuelve un único objeto de contacto.

/v1/contact/{contact_id}Copied!

Ejemplo de solicitud GET

curl -X GET \
      https://app.bony.chat/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": "muhammad@rbony.chat",
                "customerid": "1"
            },
            "tags": [
                "Blog Updates",
                "Platform Updates"
            ],
            "created_at": 1575618542
        }
    }

Actualizar contacto por ID

Esta solicitud actualiza un valor de campo personalizado

/v1/contact/{contact_id}

Campo de contacto (ID) que se permite actualizar

  • firstName

  • lastName

  • profilePic

  • language

  • phone

  • email

  • custom_field IDs (Refer Contact Field module to get the ID of each custom field)

Se permite actualizar el campo personalizado

Ejemplo de solicitud PUT

curl -X PUT \
      https://app.bony.chat/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.bony.chat/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.bony.chat/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.bony.chat/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.

Última actualización