Mandapi/ Documentação

API Mandapi

Envie e receba mensagens no WhatsApp por uma API HTTP simples. Esta é a referência da API pública /v1, autenticada por API key.

Base URL

http://localhost:8080  ·  (produção: https://api.mandapi.com)

Autenticação

Toda requisição a /v1 precisa de uma API key, enviada de uma das duas formas:

  • • Header Authorization: Bearer mapi_live_…
  • • Header X-Api-Key: mapi_live_…

Cada chave tem escopos: messages:send (enviar) e messages:read (ler/baixar). A chave pode ser vinculada a um canal; se não for e a conta tiver vários, informe o canal ao criar a chave.

Gere uma chave em Painel → API Keys. A chave fica só no seu navegador (localStorage) e nunca aparece nos exemplos de código.

Rate limit

O limite de requisições por minuto depende do plano. Toda resposta traz X-RateLimit-Limit e X-RateLimit-Remaining. Ao estourar, a API responde 429 com code: rate_limited. Há também um limite mensal de mensagens por plano (quota_exceeded).

Formato de erro

Erros seguem sempre o mesmo envelope:

{
  "error": {
    "code": "insufficient_scope",
    "message": "A chave não tem o escopo messages:send."
  }
}

Status comuns: 400 (validação), 401 (chave ausente/inválida), 403 (escopo), 404, 429 (limite), 202 (envio aceito e enfileirado).

Status da conta

GET/v1/health

Retorna a saúde da conta e do canal vinculado à chave. Bom para validar a autenticação rapidamente.

Resposta 200

{
  "status": "healthy",
  "channel": {
    "id": "665f…",
    "name": "Meu número",
    "phoneNumber": "5511999998888",
    "status": "connected"
  }
}
curl -X GET "https://api.mandapi.net/v1/health" \
  -H "Authorization: Bearer mapi_live_SUA_CHAVE"
▶ Testar no sandbox