Group messaging
Updated: Nov 14, 2025Overview
This document provides comprehensive information on the APIs and webhooks available for sending and receiving messages within groups. It details support for various message types, including: Text messages Media messages Text-based templates Media-based templatesSubscribe to groups metadata webhooks
In order to receive webhook notifications for metadata about your groups, please subscribe to the following webhook fields:group_lifecycle_update
group_participants_update
group_settings_update
group_status_update
For a full reference of webhooks for the Groups API, please visit our Webhooks for Groups API reference.
Send group message
To send a group message, use the existing send message endpoint:POST /<BUSINESS_PHONE_NUMBER_ID>/messages
This endpoint has been extended to support group messages in the following way:
The recipient_type field now supports group as well as individual.
The to field now supports the group ID that is obtained when using the Groups API.
Example group message send
Webhooks
Group message sent example
Group message failed example
Receive group messages
You can use the following webhooks to receive statuses on messages received in the group. Themessage object includes a group_id field to indicate this is a group message. The from field in the message object and the contact object point to the same participant who sends this message.
Webhooks
Receive group message webhook sample
Receive unsupported group message webhook sample
Pin and unpin group message
Pinning a message highlights its relevance. The display order of the pinned messages is based on the chronological order of parent messages, newest first. If three messages are already pinned when a new pin request is made, the oldest pinned message will be automatically unpinned.Limits
When calling the API, only one message can be pinned at a time. Only the group admin can pin or unpin messages. A maximum of 3 pinned messages can exist at any time.Request Syntax
POST /<BUSINESS_PHONE_NUMBER_ID>/messages
Note: You will receive an error in the sync response if the recipient_type and to type do not match.
Request body
Body parameters
| Placeholder | Description | Sample Value |
|---|---|---|
<GROUP_ID>String | Required The group in which you are pinning a message. | Y2FwaV9ncm91cDoxOTUwNTU1MDA3OToxMjAzNjMzOTQzMjAdOTY0MTUZD |
<PIN_OPERATION>String | Required The pinning operation you are performing on the group. Can either be "pin" or "unpin" | pin |
<MESSAGE_ID>String | Required A unique identifier for the message you are pinning or unpinning in the group. | wamid.HBgLM... |
<EXPIRATION>Integer | Required when PIN_OPERATION is pinPin duration in days. Can be 1 to 30 days. | 4 |
Response body
Webhooks
Subscribe to themessages webhook topic to receive message status notifications. Standard sent and delivered statuses webhooks will be received for the message_id in the response.
Learn more about the messages status webhook object here
Group message status webhooks
When you send messages to a group, you will receive a webhook when the message is delivered or read. Instead of sending multiple webhooks for each status update, we will send an aggregated webhook. This means that if you send a message and are set to receive severalread or delivered statuses, we will send you a single, aggregated webhook that contains multiple status objects.
Each webhook you receive is only ever in reference to a single message sent to a single group and a single status type.
Learn more about the Group Message Status webhook
Did you find this page helpful?

