API OFICIAL BSP

Comunicate con tus clientes a través de la API oficial de WhatsApp.

Autenticación

Servicio para obtener el token de autenticación que debe ser usado en cada iteración. La vigencia es de 8 horas y es válido sólo para el usuario logueado. A continuación se presenta la estructura que requiere la api para obtener el JWT de autenticación.

Path:

POST /login

  • Request

    • Body:
   {
       "username": "<user>",
       "password":"<password>"
   }
  • Response

    • Body:
   {
       "access_token": "<JWT>"
   }
Status Code 200

Errors

StatusCode 400 - Bad Request

StatusCode 401 - Unauthorized

Envío de Mensajeria

Servicio que permite el envío de mensajes outbound al cliente según la API Oficial de WhatsApp, considerar la siguiente estructura:

Path

POST /external/message/outbound/{did}

  • Request

    • Header:
  ["Authorization" : "Bearer <JWT>"]

Body:

Remitirse a documentación de Facebook

  • Response

    • Body:
   {
      "id": "gBGGVphGQwVvAgkmGHURK_vap4A"
   }

Errors

StatusCode 400 - Bad Request

StatusCode 401 - Unauthorized

StatusCode 500 - Internal Server Error    

Definición de Objeto

Fields Type Mandatory Descripción
did String yes identificador del canal

Descarga de Adjuntos

Servicio para obtener un adjunto, considerar la siguiente estructura:

Path:

GET /external/attach/download/{did}/{id}

  • Request
    • Header:
   ["Authorization" : "Bearer <JWT>"]
  • Body:
{
   []byte
}

Response

StatusCode 200

Errors

StatusCode 400 - Bad Request

StatusCode 401 - Unauthorized

StatusCode 500 - Internal Server Error

Definición de Objeto

Fields Type Mandatory Descripción
did String yes identificador del canal
id String yes id del adjunto

Webhook cliente

Servicio para agregar o cambiar el endpoint que permitirá la recepción de los mensajes inbound de cliente, considerar la siguiente estructura:

Path:

POST /external/webhook/set

  • Request
    • Header:
   ["Authorization" : "Bearer <JWT>"]
  • Body:
{
   "did": "<identificador del canal>",
   "urlSegura": "<URL segura HTTPS>"
}

Response

StatusCode 200

Errors

StatusCode 400 - Bad Request

StatusCode 500 - Internal Server Error

Definición de Objeto

Fields Type Mandatory Descripción
did String yes identificador del canal
urlSegura String yes URL del cliente que permite el despacho de mensajes inbound

Cuerpo del mensaje a recepcionar:

Remitirse a documentación de Facebook