Mensajes de grupos
Resumen para integración
- URL base:
https://{{url}}/whatsapp-bsp-api-endpoint-ws/services- Token: de mensajería, en el encabezado
Authorization: Bearer {{wa-msg-api-token}}(cómo generarlo). Para crear y administrar grupos (token de administración), consulta Administración → Grupos.- Endpoints en esta página:
POST /v1/messaging: Enviar mensaje a un grupoPOST /v1/messaging: Fijar mensaje en un grupoPOST /v1/messaging: Desfijar mensaje en un grupo
Enviar mensaje a un grupo
El cuerpo esperado es similar al de una conversación 1:1; se agrega la propiedad recipient_type: "group" para indicar que el destinatario es un grupo. Los tipos de mensaje admitidos con grupos son: texto, multimedia (image, audio, video, document, sticker), plantilla y pin. Los mensajes de location, contacts, reaction e interactive no son compatibles con grupos y devuelven RECIPIENT_TYPE_GROUP_NOT_SUPPORTED.
Petición
Petición de Enviar mensaje a un grupo:
| URL | https://{{url}}/whatsapp-bsp-api-endpoint-ws/services/v1/messaging |
| Método | POST |
Encabezados
Encabezados de Enviar mensaje a un grupo:
| Nombre | Descripción | Tipo | Requerimientos |
|---|---|---|---|
| Content-Type | application/json | String | Obligatorio |
| Authorization | Token de mensajería en el formato Bearer {token} (con un espacio). Consulta Generar Token de Autenticación. | String | Obligatorio |
Cuerpo
Campos del cuerpo de Enviar mensaje a un grupo:
| Nombre | Descripción | Tipo | Requerimientos |
|---|---|---|---|
| recipient_type | Tipo de destinatario. "group" si el mensaje va dirigido a un grupo, "individual" para una conversación 1:1. Valor por defecto: "individual". Cualquier otro valor devuelve INVALID_RECIPIENT_TYPE. Claves aceptadas: recipient_type (preferida) y el alias camelCase recipientType; ambas apuntan al mismo campo. | String | Opcional |
| messaging_product | Identificador del producto de mensajería. Por defecto es "whatsapp" y no necesita enviarse: el servicio siempre reenvía messaging_product: "whatsapp" a Meta. Inclúyelo solo para replicar literalmente los payloads de Meta Cloud API. Claves aceptadas: messaging_product y el alias camelCase messagingProduct. | String | Opcional |
Ejemplo
Ejemplo completo de Enviar mensaje a un grupo:
curl --location 'https://{{url}}/whatsapp-bsp-api-endpoint-ws/services/v1/messaging' \--header 'Authorization: Bearer {{wa-msg-api-token}}' \--header 'Content-Type: application/json' \--data '{"from": "{{business_phone_number}}","to": "{{group_id}}","recipient_type": "group","type": "text","text": "Hello group!"}'
Respuesta
Respuesta de Enviar mensaje a un grupo:
Las tres operaciones de mensajería (enviar, fijar, desfijar) devuelven la misma estructura de respuesta que el envío de mensajes 1:1: el identificador del mensaje enviado.
| Nombre | Descripción | Tipo |
|---|---|---|
| id | Identificador del mensaje enviado. | String |
[{"id": "gBGHUhVUByKUHwIJ5zf2vjzVJh-X"}]
Fijar mensaje en un grupo
Fija un mensaje en el grupo para resaltar su relevancia. Solo el administrador del grupo puede fijar o desfijar mensajes. Puede haber un máximo de 3 mensajes fijados a la vez; si ya existen 3, el mensaje fijado más antiguo se desfija automáticamente.
Petición
Petición de Fijar mensaje en un grupo:
| URL | https://{{url}}/whatsapp-bsp-api-endpoint-ws/services/v1/messaging |
| Método | POST |
| Tipo | application/json |
Encabezados
Encabezados de Fijar mensaje en un grupo:
| Nombre | Descripción | Tipo | Requerimientos |
|---|---|---|---|
| Content-Type | application/json | String | Obligatorio |
| Authorization | Token de mensajería en el formato Bearer {token} (con un espacio). Consulta Generar Token de Autenticación. | String | Obligatorio |
Cuerpo
Campos del cuerpo de Fijar mensaje en un grupo:
| Nombre | Descripción | Tipo | Requerimientos |
|---|---|---|---|
| recipient_type | Tipo de destinatario. Para grupos el valor debe ser "group". | String | Obligatorio |
| to | ID del grupo en el que se fija el mensaje. | String | Obligatorio |
| type | Tipo de operación de mensaje. Para fijar o desfijar el valor es "pin". | String | Obligatorio |
| pin.type | Operación a realizar. Para fijar el valor es "pin". | String | Obligatorio |
| pin.message_id | Identificador único del mensaje a fijar. | String | Obligatorio |
| pin.expiration_days | Duración de la fijación en días (cadena numérica, p. ej. "30"). El rango 1 a 30 es el límite de Meta; esta API no valida el rango, solo su presencia. | String | Obligatorio al fijar |
Ejemplo
Ejemplo completo de Fijar mensaje en un grupo:
curl --location 'https://{{url}}/whatsapp-bsp-api-endpoint-ws/services/v1/messaging' \--header 'Authorization: Bearer {{wa-msg-api-token}}' \--header 'Content-Type: application/json' \--data '{"from": "{{business_phone_number}}","to": "{{group_id}}","recipient_type": "group","type": "pin","pin": {"type": "pin","message_id": "{{pin_message_id}}","expiration_days": "30"}}'
Respuesta
Respuesta de Fijar mensaje en un grupo:
Las tres operaciones de mensajería (enviar, fijar, desfijar) devuelven la misma estructura de respuesta que el envío de mensajes 1:1: el identificador del mensaje enviado.
| Nombre | Descripción | Tipo |
|---|---|---|
| id | Identificador del mensaje enviado. | String |
[{"id": "gBGHUhVUByKUHwIJ5zf2vjzVJh-X"}]
Desfijar mensaje en un grupo
Desfija un mensaje previamente fijado. Solo el administrador del grupo puede desfijar mensajes. Se usa el mismo tipo "pin", indicando la operación "unpin" en pin.type; a diferencia de fijar, no se envía expiration_days.
Petición
Petición de Desfijar mensaje en un grupo:
| URL | https://{{url}}/whatsapp-bsp-api-endpoint-ws/services/v1/messaging |
| Método | POST |
| Tipo | application/json |
Encabezados
Encabezados de Desfijar mensaje en un grupo:
| Nombre | Descripción | Tipo | Requerimientos |
|---|---|---|---|
| Content-Type | application/json | String | Obligatorio |
| Authorization | Token de mensajería en el formato Bearer {token} (con un espacio). Consulta Generar Token de Autenticación. | String | Obligatorio |
Cuerpo
Campos del cuerpo de Desfijar mensaje en un grupo:
| Nombre | Descripción | Tipo | Requerimientos |
|---|---|---|---|
| recipient_type | Tipo de destinatario. Para grupos el valor debe ser "group". | String | Obligatorio |
| to | ID del grupo en el que se desfija el mensaje. | String | Obligatorio |
| type | Tipo de operación de mensaje. Para fijar o desfijar el valor es "pin". | String | Obligatorio |
| pin.type | Operación a realizar. Para desfijar el valor es "unpin". | String | Obligatorio |
| pin.message_id | Identificador único del mensaje a desfijar. | String | Obligatorio |
Ejemplo
Ejemplo completo de Desfijar mensaje en un grupo:
curl --location 'https://{{url}}/whatsapp-bsp-api-endpoint-ws/services/v1/messaging' \--header 'Authorization: Bearer {{wa-msg-api-token}}' \--header 'Content-Type: application/json' \--data '{"from": "{{business_phone_number}}","to": "{{group_id}}","recipient_type": "group","type": "pin","pin": {"type": "unpin","message_id": "{{pin_message_id}}"}}'
Respuesta
Respuesta de Desfijar mensaje en un grupo:
Las tres operaciones de mensajería (enviar, fijar, desfijar) devuelven la misma estructura de respuesta que el envío de mensajes 1:1: el identificador del mensaje enviado.
| Nombre | Descripción | Tipo |
|---|---|---|
| id | Identificador del mensaje enviado. | String |
[{"id": "gBGHUhVUByKUHwIJ5zf2vjzVJh-X"}]
