Create WhatsApp groups and message them from code.
Create a group, get its invite link and post to it with one REST API or with MCP tools. Built on Meta's Groups API, so Meta's limits apply.
- Verified badge required
- Join by invite link only
- Meta sets the limits
The short answer
What is the WhatsApp Groups API?
The WhatsApp Groups API lets software create a WhatsApp group, send it messages, and manage its invite link and members. Instant Reply exposes it as a REST API and as MCP tools. Your number needs the verified badge and must not also run in the WhatsApp Business app.
Last verified
Key facts
- Create a group with POST /v1/whatsapp/groups. The reply has a group_id and an invite_link.
- Meta allows 8 people per group, joining only by invite link, and no buttons.
- Needs the verified badge and a number that is not also in the WhatsApp Business app.
- Seven MCP tools cover eligibility, create, list, invite link, send, remove and join requests.
- Meta bills group messages in its own categories. Instant Reply adds no fee.
Verified capabilities
What the WhatsApp Groups API does today
Checked against the product source code on November 8, 2026. The last three rows list what it does not do.
Swipe the table sideways to see every column.
| Capability | How it works today | Status |
|---|---|---|
| Create a group | One POST with a subject and an optional description. The reply has the group_id and the invite_link. | Included |
| Send to a group | Plain text up to 4,096 characters, or an approved template. Exactly one of the two per call. | Included |
| Invite links | Read the invite link, or reset it with a POST. | Included |
| Join requests and removals | List requests, approve or reject up to 7 people per call, and remove up to 7 people per call. | Included |
| MCP tools | Seven tools let an AI agent do the same work through the Instant Reply MCP server. | Included |
| Adding people by phone number | Meta does not let a business add people. They join from the invite link. | Not available |
| Buttons inside groups | Meta does not support interactive messages in groups, so the API accepts text and templates only. | Not available |
| Numbers that also use the WhatsApp Business app | These numbers fail the eligibility check with the reason coexistence. | Not available |
Before you start
Meta sets three conditions. If one fails, create calls return a 422 with the code GROUPS_INELIGIBLE.
- Your WhatsApp number is connected to Instant Reply. WhatsApp numbers come with Growth and Pro.
- Your number has the verified badge. Meta calls this an Official Business Account.
- Your number is not also used in the WhatsApp Business phone app.
Ask the API instead of guessing. The eligibility call returns eligible, and when it is false, one reason: not_connected, coexistence, not_official_business_account or check_failed.
curl https://api.instantreply.co/v1/whatsapp/groups/eligibility \
-H "Authorization: Bearer $IR_API_KEY"
# {"eligible": false, "reason": "not_official_business_account"}You also need an API key. Every paid plan includes the REST API. The API reference covers keys and scopes.
Create a group and send a message
The base URL is https://api.instantreply.co/v1. Create a group first. Keep the group_id and share the invite_link.
curl -X POST https://api.instantreply.co/v1/whatsapp/groups \
-H "Authorization: Bearer $IR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"subject": "Alerts", "description": "Hot leads and cancellations"}'
# 200 OK
# {"group_id": "...", "invite_link": "https://..."}Then send to the group. Pass either text or template, not both. A group id that does not belong to your number returns 404 with GROUP_NOT_FOUND.
curl -X POST https://api.instantreply.co/v1/whatsapp/groups/GROUP_ID/messages \
-H "Authorization: Bearer $IR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"text": "Hot lead: Dana asked for a quote 2 minutes ago."}'
# Send an approved template instead of text:
# -d '{"template": {"name": "alert_notice", "language": "en"}}'A missing or too long subject returns 400. Each group id is checked against your own number before any read, change or send.
All group endpoints
Reads need the scope conversations:read. Writes need messages:send.
| Method | Path | Scope | What it does |
|---|---|---|---|
| GET | /v1/whatsapp/groups/eligibility | conversations:read | Check if the number can use groups |
| POST | /v1/whatsapp/groups | messages:send | Create a group, get its invite link |
| GET | /v1/whatsapp/groups | conversations:read | List your groups |
| GET, PATCH, DELETE | /v1/whatsapp/groups/:id | read, write, write | Read, rename or delete one group |
| GET, POST | /v1/whatsapp/groups/:id/invite-link | read, write | Get the invite link, or reset it with POST |
| GET | /v1/whatsapp/groups/:id/join-requests | conversations:read | List pending join requests |
| POST | /v1/whatsapp/groups/:id/join-requests/approve or /reject | messages:send | Approve or reject 1 to 7 people |
| DELETE | /v1/whatsapp/groups/:id/participants | messages:send | Remove 1 to 7 people |
| POST | /v1/whatsapp/groups/:id/messages | messages:send | Send text or an approved template |
MCP tools for agents
The same actions are available as seven tools on the Instant Reply MCP server. An agent can check eligibility, make a group and post to it. Send needs exactly one of text or template.
whatsapp_groups_eligibility(no input)list_whatsapp_groups(no input)create_whatsapp_group(subject, description (optional))get_whatsapp_group_invite_link(group_id, reset (optional))send_whatsapp_group_message(group_id, plus either text or template)remove_whatsapp_group_participants(group_id, participants (1 to 7))approve_whatsapp_group_join_requests(group_id, action (approve or reject), participants (1 to 7))
Limits
Meta sets the first five. The other rows are ours. Meta can change its limits, so check Meta's Groups API page before you plan around a number.
| Limit | Value | Set by |
|---|---|---|
| People in a group | 8 at most | Meta |
| Groups per business number | 10,000 at most | Meta |
| How people join | Only through the invite link | Meta |
| Buttons and other interactive messages | Not supported in groups | Meta |
| Editing or deleting a sent message | Not supported in groups | Meta |
| Message body we accept | Text of 1 to 4,096 characters, or an approved template | Instant Reply API |
| Group subject and description | Subject 1 to 128 characters, description up to 512 | Instant Reply API |
| People per remove, approve or reject call | 1 to 7 | Instant Reply API |
Cost. Meta bills group messages in its own groups categories, and the rates are on Meta's Groups API pricing page. We list no rates here. Instant Reply adds no fee on top of Meta's.
Example: an alerts group for your team
A shop owner wants one place where the team sees three things: a subscription that is about to end, an angry customer, and a hot lead. Your code decides when each one happens. The API only creates the group and posts the message.
- Call the eligibility endpoint once. Stop here if it says false and fix the reason.
- Create the group with the subject "Alerts". Store the returned group_id.
- Send the invite_link to your teammates yourself, by email or in your team chat. They tap it to join.
- When your system sees a hot lead, post one line to the group with the send endpoint.
- When someone leaves the team, remove their number. You can also reset the invite link.
The same pattern fits a client group, a support group, or a team room. Keep in mind that a group holds 8 people at most, and you count as one.
No code needed? Owners and admins can do the same in Settings, Account. You see your groups, copy an invite link, turn alerts on for one group, or start a new group from the Alerts, Team, Clients and Support quick picks. The controls show only when your number is eligible.
What this does not do
- It does not add people. They join from the invite link, and Meta allows no other way.
- It does not send buttons. Meta does not support interactive messages in groups.
- It does not send media. The API accepts text and approved templates only.
- It does not promise delivery. Meta delivers the message and reports its status.
- It does not work for numbers without the verified badge, or numbers that also run in the WhatsApp Business app.
- Our create call has no option to turn on join approval, and we could not confirm Meta's default for new groups.
For the wider setup, see WhatsApp Business API with Instant Reply and the full WhatsApp Groups API guide.
How it works
How it works
Check eligibility
Call the eligibility endpoint. It tells you if the number qualifies, and if not, the reason.
Create the group
Send a subject and an optional description. You get a group_id and an invite link.
Share the link and post
People join from the link. Then send text or an approved template to the group.
Why teams choose it
What you get
A thin, checked layer over Meta's Groups API.
Scoped API keys
Reads need conversations:read. Writes need messages:send.
Your groups only
Every group id is checked against your own number before any read, change or send.
Plain error codes
GROUPS_INELIGIBLE, GROUP_NOT_FOUND and 400 for bad input, so your code can react.
Same actions in MCP
An agent can create a group and post to it with the same rules.
Best fit
Perfect for teams that move fast in DMs.
Alerts group
Scenario
Post a line when a subscription is ending, a customer is angry, or a lead is hot.
Outcome
Team room
Scenario
Create a group for a shift or a project and share the invite link.
Outcome
Client or support group
Scenario
Open a group per client, post updates, and remove people who should leave.
Outcome
The difference
Why Switch?
Without Instant Reply
With Instant Reply
Common questions
Is there a WhatsApp groups API?
Yes. Meta's Cloud API has a Groups API, and Instant Reply wraps it in a REST API at api.instantreply.co/v1 and in MCP tools. You can create a group, send messages, manage the invite link, and remove people.
How do I create a WhatsApp group via API?
Send POST /v1/whatsapp/groups with a subject of 1 to 128 characters and an optional description of up to 512. The reply has a group_id and an invite_link. Share the link so people can join.
What is the WhatsApp Business API groups limit?
Meta lists 8 people per group and 10,000 groups per business number. People can join only through the invite link, and groups do not support buttons. Meta's Groups API page is the source and can change.
Who can use the WhatsApp Groups API?
Your number needs the verified badge (an Official Business Account), and it cannot also run in the WhatsApp Business app. Call GET /v1/whatsapp/groups/eligibility to see if your number qualifies and why not.
Can I add people to a WhatsApp group through the API?
No. Meta does not let a business add people by phone number. You send the invite link and people join on their own. You can approve or reject join requests and remove people.
How much do WhatsApp group messages cost?
Meta bills group messages in its own groups categories, and Instant Reply adds no fee on top of Meta's. Read Meta's Groups API pricing page for the rates that apply to your account.
Which API key scope do I need?
Reading groups needs conversations:read. Creating, changing, sending and removing need messages:send. Send the key as Authorization: Bearer <key>. The older X-API-Key header still works.
Related reading
- WhatsApp Groups API guideEligibility, examples and limits in one place.
- WhatsApp Business API with Instant ReplyConnect a number and run the inbox.
- API referenceKeys, scopes and every public endpoint.
- Instant Reply MCP serverTools for agents.
- Agent LineYour AI agent texts you on WhatsApp and asks before it acts.
Related features
Features that work with this one
Each page below covers the next step in the same workflow, with its own plan limits and a list of what it does not do.
Next
WhatsApp Business API
Embedded Signup, templates, signed webhooks and delivery tracking.
Next
Agent Line
Your AI agent texts you on WhatsApp and asks Yes or No before it acts.
Next
WhatsApp BSP setup
Connect an official WhatsApp Business number and manage the API workflow.
Next
Shared inbox
See every DM in one place.
Check if your number can use groups.
Connect WhatsApp, then call the eligibility endpoint.
An interactive read-only demo, and plan limits in plain English.