Pular para o conteúdo

Criar grupo

POST/v1/instances/{id}/groupsdesde M8token da instância ou admin

Quando usar

Cria um grupo com até 10 participantes iniciais (número com DDI ou JID). Só entram pessoas que já têm conversa no log da instância ou que a consulta de números confirma no WhatsApp (gasta a cota de check-numbers); as demais voltam em results com not_on_whatsapp ou unknown_contact, sem chegar ao WhatsApp. Conta na cota settings.groups.max_creates_per_day (padrão 3) e os participantes nas cotas de adição (e no intervalo de 10s entre lotes); acima, 429 rate_limited. A cota só volta se a requisição não chegou ao WhatsApp. Com envios suspensos pelo operador, 403 sending_suspended. Com parent, o grupo nasce dentro da comunidade.

Autenticação

Aceita o token da instância (só a própria instância) ou o token admin. Um token de outra instância recebe 403 forbidden (ou 404 not_found em webhooks de outra instância).

Parâmetros

Caminho

NomeTipoDescrição
idobrigatóriostringId da instância (inst_...).

Corpo (JSON)

NomeTipoDescrição
nameobrigatóriostring (até 100)
participantsstring[]Número com DDI ou JID. (até 10 itens)
descriptionstring (até 2048)
parentstringCriar dentro desta comunidade (só em POST /groups).
settingsobject
settings.announceboolean
settings.lockedboolean
settings.approval_requiredboolean
settings.admins_add_membersboolean
settings.ephemeral_seconds0 | 86400 | 604800 | 7776000

Exemplo

Janela do terminal
curl -s -X POST "$LITEZAP_URL/v1/instances/$ID/groups" \
-H "Authorization: Bearer $LITEZAP_TOKEN" \
-d '{"name":"Equipe","participants":["5511999999999"],"description":"Avisos da equipe","settings":{"announce":false}}'

Nos exemplos, LITEZAP_URL é a URL base (ex.: http://localhost:8787) e o token vem deLITEZAP_TOKEN (instância) ou LITEZAP_ADMIN_TOKEN.

Resposta

201 Grupo criado e resultado por participante.

Campos de CreateGroupResult
groupGroup
group.jidstring
group.namestring
group.descriptionstring
group.ownerstring
group.created_atstring
group.communitybooleanÉ uma comunidade.
group.parentstringComunidade a que o grupo pertence.
group.announcement_groupbooleanGrupo de avisos da comunidade.
group.participant_countinteger
group.lid_addressingbooleanO grupo endereça os membros por LID.
group.suspendedboolean
group.settingsGroupSettingsConfigurações de um grupo (marco 8).
group.participantsGroupParticipant[]Só em GET /groups/{jid} e na criação.
resultsParticipantResult[]
warningstringUm passo depois da criação falhou (descrição); o grupo existe.

Erros

CódigoHTTPRetentávelO que fazer
validation_failed400nãoCorrija o corpo ou os parâmetros; a message diz o campo.
unauthorized401nãoEnvie Authorization: Bearer <token> válido.
forbidden403nãoUse o token certo (admin, ou o da própria instância).
instance_not_found404nãoConfira o id da instância.
instance_not_connected409dependeConfira o estado da instância; se logged_out, pareie de novo.
instance_banned409nãoNúmero banido: apague a instância.
rate_limited429simEspere e tente de novo com backoff.
worker_error502simTente de novo com backoff; se persistir, veja o log do servidor.
worker_timeout504simTente de novo; a instância pode estar sobrecarregada ou reconectando.

Todo erro usa o envelope {"error":{"code","message","retryable"}}. Tabela completa em Erros.

Eventos gerados

Equivalente na Z-API: Criar grupo. Veja Migrar da Z-API.

Outras operações de Grupos: Listar grupos · Metadados do grupo · Alterar grupo · Trocar foto do grupo · Remover foto do grupo · Gerenciar participantes · Listar pedidos de entrada · Aprovar ou rejeitar pedidos · Link de convite · Redefinir link de convite · Sair do grupo · Ver grupo pelo convite · Entrar por convite