Skip to main content
Group operations live on client.group (WaGroupCoordinator). Group JIDs end in @g.us.

Querying groups

WaGroupMetadata includes the subject, owner, participant list (WaGroupParticipant[] with isAdmin / isSuperAdmin), and the full set of group flags (announce, restrict, ephemeral, community flags, …).

Creating a group

createGroup returns the full WaGroupMetadata for the new group — no need to call queryGroupMetadata afterward:

Managing participants

The four participant methods (addParticipants, removeParticipants, promoteParticipants, demoteParticipants) return a typed WaParticipantActionResult[] — one entry per jid you passed in. The IQ as a whole succeeds even when some participants fail (blocked you, privacy settings disallow add, already a member, …), so inspect the per-jid code to surface partial failures.
Each result also carries phoneNumber and username when the server resolved them, plus the raw BinaryNode under raw for any extra tags the server attached (some 409/408 partial failures hint at how to recover).

Group settings

setSetting also covers the boolean toggles ephemeral, group_history, allow_admin_reports, no_frequently_forwarded, and the community flags. Use it to flip a feature on or off; for settings that need a value (mode or duration), use the dedicated setters below.
All three are admin-only — non-admins receive a 403 not-authorized error.

Disappearing messages

setSetting(groupJid, 'ephemeral', false) is the explicit disable path. To turn disappearing messages on with a specific lifetime, use setEphemeralDuration:
Admin-only. Passing 0 disables disappearing messages — the same as setSetting('ephemeral', false).

Invites

queryInviteCode and revokeInvite are admin-only — non-admins receive a 403 not-authorized.

Leaving

leaveGroup resolves to void once the server acknowledges the request.

Membership approval

For groups that require admin approval to join:

Communities

Communities are parent groups that link sub-groups:
Other community operations include deactivateCommunity, transferCommunityOwnership, and fetchSubgroupSuggestions.

Group events

Changes made by others (subject, participants, settings) arrive on the group event:
See Events for the full payload.
Last modified on May 29, 2026