WhatsApp APIDeveloper Docs OpenAPI JSON Abrir painel
API em produção

Integre o WhatsApp com uma API direta e observável.

Referência completa para criar e operar instâncias, gerar QR Code, enviar mensagens, acompanhar filas, webhooks e investigar cada conexão ou falha.

Base URL
FormatoJSON UTF-8 · HTTPS
Retenção de logs7 dias por instância
Segurança

Autenticação

Há dois modelos. Nunca coloque chaves no payload ou em código publicado; carregue-as pelas variáveis de ambiente do consumidor.

API nativa — Bearer

Rotas /instances/*, configuração global e métricas usam ADMIN_API_KEY.

Header
Authorization: Bearer <ADMIN_API_KEY>

Compatibilidade UAZAPI

Administração usa admintoken. Uma instância usa o token retornado na criação.

Headers
admintoken: <ADMIN_API_KEY>
token: <INSTANCE_TOKEN>
O painel e esta documentação não expõem tokens. Os exemplos usam placeholders. Respostas de criação podem conter um token de instância: trate-o como segredo.
Quickstart

Da instância ao primeiro envio

Crie a instância, obtenha o QR Code, escaneie no WhatsApp e só então envie. A fila assíncrona aceita pedidos durante oscilações.

1. Criar uma instância

cURL

2. Gerar o QR Code

Substitua {id} pelo identificador retornado. Repita até obter qrcode e respeite expiresAt.

cURL

3. Enviar com idempotência

Use async: true e uma chave única para evitar duplicidade nos retries.

cURL
Confiabilidade

Erros, filas e limites

Erros seguem {"error":"motivo"}. Falhas de envio e desconexão aparecem no histórico com causa técnica e destinatário.

StatusSignificadoAção recomendada
200 / 201Processado com sucesso.Persista o identificador retornado.
202Aceito para processamento assíncrono.Consulte a fila e mantenha a mesma chave idempotente.
400 / 422Payload, parâmetro ou número inválido.Corrija a requisição; não repita sem alteração.
401Chave ausente ou inválida.Verifique o header e a variável de ambiente.
404Recurso não encontrado.Confira o identificador e se ele não foi removido.
409Sessão desconectada ou estado incompatível.Cheque status, QR Code e logs de conexão.
429Limite de envio atingido.Respeite Retry-After; a fila aplica backoff.
5xxFalha interna ou dependência indisponível.Repita com backoff e idempotência; veja os logs.

Nenhum endpoint encontrado

Tente “mensagem”, “fila”, “QR” ou o caminho da rota.