Grupos
Gestiona los grupos de WhatsApp con la API.
{session}— nombre de la sesión que creaste conPOST /api/session.{groupId}— ID del grupo en formato123123123123@g.us.
@lid en la lista de participantes, consulta la página de Contactos.Crear un nuevo grupo
POST /api/{session}/groups{
"name": "Mi grupo",
"participants": [
{ "id": "5215551234567@c.us" },
{ "id": "5219999999999@c.us" }
]
}Obtener todos los grupos
GET /api/{session}/groupsLa respuesta depende del motor (engine) que uses.
Parámetros de consulta:
GET /api/{session}/groups?limit=20&offset=0&sortBy=subject&sortOrder=desclimit=10— limita el número de grupos a devolver.offset=0— omite N grupos desde el inicio.sortBy— ordena por campo:sortBy=id— por ID del grupo.sortBy=subject— por asunto del grupo.
sortOrder=desc|asc— orden:desc— descendente (nuevos primero, A–Z).asc— ascendente (antiguos primero, Z–A).
exclude=participants— excluye los datos de participantes de la respuesta.
timeout o la petición tarda demasiado, usa limit para obtener los objetos en partes más pequeñas.rate-overlimit con el motor NOWEB, intenta habilitar el NOWEB Store.Obtener el número de grupos
GET /api/{session}/groups/count{ "count": 10 }Unirse a un grupo
Si tienes el enlace de invitación, únete mediante el código o la URL completa:
POST /api/{session}/groups/join{
"code": "https://chat.whatsapp.com/INVITECODE"
}{ "id": "5215551234567@g.us" }Obtener info de invitación del grupo
GET /api/{session}/groups/join-info?code=invitecodeO usando el enlace completo (recuerda codificar la URL):
GET /api/{session}/groups/join-info?code=https%3A%2F%2Fchat.whatsapp.com%2FinvitecodeRefrescar grupos
POST /api/{session}/groups/refreshrate-overlimit. Normalmente la API de grupos ya tiene la información actualizada.Obtener el grupo
GET /api/{session}/groups/{groupId}Eliminar el grupo
DELETE /api/{session}/groups/{groupId}Salir del grupo
POST /api/{session}/groups/{groupId}/leaveFoto del grupo
Recuerda codificar el símbolo @ del ID como %40 (ej. 5215551234567%40g.us).
Obtener foto
GET /api/{session}/groups/{ID}/picture?refresh=false{ "url": "https://ejemplo.com/foto.jpg" }url puede ser null si el grupo no tiene foto. Usa refresh=true para forzar el refresco (por defecto se cachea 24 horas; no refresques con frecuencia para evitar rate-overlimit).
Cambiar foto
PUT /api/{session}/groups/{ID}/picture{
"file": {
"url": "https://ejemplo.com/foto.jpg"
}
}O con datos en base64:
{
"file": {
"data": "BASE64_DE_LA_IMAGEN"
}
}Eliminar foto
DELETE /api/{session}/groups/{ID}/pictureCambiar el asunto del grupo
PUT /api/{session}/groups/{groupId}/subject{ "subject": "Nuevo asunto" }Devuelve true si el asunto se actualizó correctamente. Puede devolver false si no tienes los permisos necesarios.
Cambiar la descripción del grupo
PUT /api/{session}/groups/{groupId}/description{ "description": "Nueva descripción" }Devuelve true si la descripción se actualizó correctamente. Puede devolver false si no tienes los permisos necesarios.
Seguridad · editar info solo administradores
Permite que solo los administradores editen la información del grupo (título, descripción, foto).
GET /api/{session}/groups/{groupId}/settings/security/info-admin-onlyPUT /api/{session}/groups/{groupId}/settings/security/info-admin-only{ "adminsOnly": true }Devuelve true si el ajuste se actualizó correctamente. Puede devolver false si no tienes los permisos necesarios.
Seguridad · mensajes solo administradores
Permite que solo los administradores envíen mensajes.
GET /api/{session}/groups/{groupId}/settings/security/messages-admin-onlyPUT /api/{session}/groups/{groupId}/settings/security/messages-admin-only{ "adminsOnly": true }Devuelve true si el ajuste se actualizó correctamente. Puede devolver false si no tienes los permisos necesarios.
Seguridad · quién puede añadir miembros
Controla si todos los miembros o solo los administradores pueden añadir nuevos miembros.
GET /api/{session}/groups/{groupId}/settings/security/member-add-modePUT /api/{session}/groups/{groupId}/settings/security/member-add-mode{
"membersCanAddNewMember": true
}Devuelve true si el ajuste se actualizó correctamente. Puede devolver false si no tienes los permisos necesarios.
Participantes
Obtener participantes
GET /api/{session}/groups/{groupId}/participants[
{ "id": "5215551234567@c.us", "role": "participant" },
{ "id": "5219999999999@c.us", "role": "admin" }
]También disponible con una respuesta casi idéntica entre motores:
GET /api/{session}/groups/{groupId}/participants/v2Roles posibles: left, participant, admin, superadmin.
Añadir participantes
POST /api/{session}/groups/{groupId}/participants/add{
"participants": [
{ "id": "5215551234567@c.us" }
]
}Quitar participantes
POST /api/{session}/groups/{groupId}/participants/remove{
"participants": [
{ "id": "5215551234567@c.us" }
]
}Administradores
Promover a administrador
POST /api/{session}/groups/{groupId}/admin/promote{
"participants": [
{ "id": "5215551234567@c.us" }
]
}Degradar a usuario regular
POST /api/{session}/groups/{groupId}/admin/demote{
"participants": [
{ "id": "5215551234567@c.us" }
]
}Código de invitación
Obtener código
Con el código puedes formar el enlace https://chat.whatsapp.com/{inviteCode} para compartirlo con tus contactos.
GET /api/{session}/groups/{groupId}/invite-codeRevocar código
Invalida el código de invitación actual y genera uno nuevo.
POST /api/{session}/groups/{groupId}/invite-code/revokeEventos
Recibe eventos de grupos mediante Eventos: group.v2.join, group.v2.leave, group.v2.participants y group.v2.update. Consulta el detalle del payload en la página de Eventos.