Docs / Whatixo API
Groups
Automate your community management: create a group per VIP customer or per course, add buyers to it, post announcements…
All these operations run with the number given by deviceId. To change a group (members, name, description), this number must be an admin of it. Participants are written in international format (243812345678).
Create a group
POSThttps://api.whatixo.com/api/whatsapp/groups/create
| Field | Type | Description |
|---|---|---|
deviceIdrequired | string | Number that creates the group (it becomes its admin). |
namerequired | string | Group name. |
participantsoptional | string[] | Numbers to add on creation. |
curl -X POST https://api.whatixo.com/api/whatsapp/groups/create \
-H "x-api-key: $WHATIXO_API_KEY" -H "Content-Type: application/json" \
-d '{"deviceId":"8f2c1a7e-4b9d-4e21-9a6f-3c5d7e1b2a90","name":"November 2026 course","participants":["243812345601","243998877602"]}'
Response 200JSON
{
"success": true,
"group": {
"id": "120363041234567890@g.us",
"subject": "November 2026 course",
"owner": "243812345678@s.whatsapp.net",
"participants": [ { "id": "243812345601@s.whatsapp.net", "admin": null } ]
}
}
Keep group.id (ends in @g.us): it’s the groupId for other calls, and the to to post in the group.
List groups
POSThttps://api.whatixo.com/api/whatsapp/groups/list
RequestJSON
{ "deviceId": "8f2c1a7e-4b9d-4e21-9a6f-3c5d7e1b2a90" }
Response 200JSON
{
"success": true,
"count": 2,
"groups": [
{ "id": "120363041234567890@g.us", "subject": "VIP customers", "size": 184, "participants": [ … ] },
{ "id": "120363049876543210@g.us", "subject": "Kinshasa wholesalers", "size": 92, "participants": [ … ] }
]
}
List members
POSThttps://api.whatixo.com/api/whatsapp/groups/members
RequestJSON
{ "deviceId": "8f2c1a7e-4b9d-4e21-9a6f-3c5d7e1b2a90", "groupId": "120363041234567890@g.us" }
Response 200JSON
{
"success": true,
"members": [
{ "id": "243812345678@s.whatsapp.net", "admin": "superadmin" },
{ "id": "243812345601@s.whatsapp.net", "admin": "admin" },
{ "id": "243998877602@s.whatsapp.net", "admin": null }
]
}
Manage members
Four endpoints with the same body:
| Endpoint | Action |
|---|---|
POST /whatsapp/groups/members/add | Add participants |
POST /whatsapp/groups/members/remove | Remove participants |
POST /whatsapp/groups/members/promote | Make admins |
POST /whatsapp/groups/members/demote | Remove the admin role |
Request bodyJSON
{
"deviceId": "8f2c1a7e-4b9d-4e21-9a6f-3c5d7e1b2a90",
"groupId": "120363041234567890@g.us",
"participants": ["243812345601", "243998877602"]
}
Response 200JSON
{
"success": true,
"response": [
{ "status": "200", "jid": "243812345601@s.whatsapp.net" },
{ "status": "403", "jid": "243998877602@s.whatsapp.net" }
]
}
Each participant has its own status: 200 succeeded, 403 refused (the contact’s privacy settings: they must be invited by link), 409 already a member.
Rename a group
POSThttps://api.whatixo.com/api/whatsapp/groups/settings/name
Request bodyJSON
{ "deviceId": "8f2c1a7e-…", "groupId": "120363041234567890@g.us", "name": "VIP customers 2027" }
Change the description
POSThttps://api.whatixo.com/api/whatsapp/groups/settings/description
Request bodyJSON
{ "deviceId": "8f2c1a7e-…", "groupId": "120363041234567890@g.us", "description": "Exclusive offers every Friday 🎁" }
Response for both calls: {"success":true,"message":"…"}.
Common errors
| Code | Cause |
|---|---|
| 400 | Missing parameter, or the number is disconnected (“Appareil déconnecté”). |
| 404 | Unknown deviceId. |
| 500 | WhatsApp refused the operation: the number isn’t an admin, the group doesn’t exist, or the member limit is reached. The details field sometimes gives the reason. |
Questions? Message us from the app (Help & support) or at support@whatixo.com.Updated: November 2026