Skip to main content
Use client.groups for WhatsApp group operations on an instance. Common fields on every call:
FieldTypeRequiredDescription
instance_idstringYesInstance ID.
instance_tokenstringYesInstance token.
Group-specific operations also require group_id in the payload.

client.groups.list(...)

Lists groups with pagination.
groups = client.groups.list(
    instance_id="VZ...",
    instance_token="instance-token",
    page=1,
    page_size=20,
)
print(groups)
Return: envelope { code, success, data.groups[] } with pagination when applicable.

client.groups.get(...)

Gets group metadata.
group = client.groups.get(
    instance_id="VZ...",
    instance_token="instance-token",
    group_id="120363012345678901@g.us",
)
print(group)
Return: envelope { code, success, data } with group metadata (jid, name, topic, participants, etc.). Gets or resets the invite link.
invite = client.groups.invite_link(
    instance_id="VZ...",
    instance_token="instance-token",
    group_id="120363012345678901@g.us",
    reset=False,
)
print(invite)
Return: envelope { code, success, data.invite_link }. With reset:
new_invite = client.groups.invite_link(
    instance_id="VZ...",
    instance_token="instance-token",
    group_id="120363012345678901@g.us",
    reset=True,
)

client.groups.set_photo(...)

Changes the group photo. Accepts a public URL or base64 data URL.
client.groups.set_photo(
    instance_id="VZ...",
    instance_token="instance-token",
    group_id="120363012345678901@g.us",
    image="https://cdn.example.com/groups/photo.jpg",
)
Return: envelope { code, success, data.details } confirming the change.

client.groups.set_name(...)

Changes the group name.
client.groups.set_name(
    instance_id="VZ...",
    instance_token="instance-token",
    group_id="120363012345678901@g.us",
    name="VIP Support",
)
Return: envelope { code, success, data.details } confirming the change.

client.groups.set_description(...)

Changes the group description.
client.groups.set_description(
    instance_id="VZ...",
    instance_token="instance-token",
    group_id="120363012345678901@g.us",
    description="Official support channel",
)
Return: envelope { code, success, data.details } confirming the change.

client.groups.set_settings(...)

Changes group settings.
client.groups.set_settings(
    instance_id="VZ...",
    instance_token="instance-token",
    group_id="120363012345678901@g.us",
    admin_only_message=True,
    admin_only_settings=False,
    delay_message=0,
)
Return: envelope { code, success, data.details } confirming the change.

client.groups.create(...)

Creates a group with participants.
client.groups.create(
    instance_id="VZ...",
    instance_token="instance-token",
    group_name="VIP Support",
    group_description="Support channel",
    group_image="https://cdn.example.com/groups/photo.jpg",
    participants=["5511999999999", "5511888888888"],
)
Return: envelope { code, success, data } with created group fields.

client.groups.add_admin(...)

Promotes participants to admin.
client.groups.add_admin(
    instance_id="VZ...",
    instance_token="instance-token",
    group_id="120363012345678901@g.us",
    participants=["5511999999999"],
)
Return: envelope { code, success, data.details } confirming the change.

client.groups.remove_admin(...)

Removes admins from the group.
client.groups.remove_admin(
    instance_id="VZ...",
    instance_token="instance-token",
    group_id="120363012345678901@g.us",
    participants=["5511999999999"],
)
Return: envelope { code, success, data.details } confirming the change.