Infraestrutura WhatsApp para devs.
REST, webhooks assinados, eventos em tempo real. Suba uma instância em 60 segundos. Sem markup da Twilio. Sem ter que verificar conta business na Meta. Só uma API HTTP que devolve JSON previsível.
curl -sX POST https://api.whatisup.dev/v1/instances \
-H "Authorization: Bearer $WHATISUP_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name": "primary"}'
# → 201 Created
{
"id": "inst_01J5XZ3RX9...",
"name": "primary",
"status": "pending",
"created_at": "2026-05-01T12:34:56Z"
}Três passos do zero até a primeira mensagem.
Sem instalar SDK, sem verificação business da Meta, sem markup. Cadastra, escaneia o QR, manda na API.
Pareia uma instância
Cadastra, cria uma instância pelo dashboard, escaneia o QR com seu celular. Mesmo fluxo do WhatsApp Web — o Baileys segura a sessão do nosso lado.
Envia via REST
POST em /v1/instances/:id/messages com a bearer key. Texto, imagem, documento — mesmo formato JSON. A resposta é imediata; a entrega acontece async.
Reage por webhook
Mensagens recebidas e status de entrega chegam no seu endpoint com assinatura HMAC estilo Stripe, retries e um log de delivery consultável.
Infraestrutura — não chatbot SaaS.
O WhatIsUp.dev é a camada entre a sua aplicação e o WhatsApp. Tudo é tipado, assinado e observável.
API REST
Instâncias, mensagens, webhooks, API keys. JSON in, JSON out. Mesmos schemas Zod que o gateway usa pra validar.
Webhooks assinados
X-WhatIsUp-Signature: t=…,v1=… verificado igualzinho ao Stripe. Retries automáticos com backoff exponencial.
SSE em tempo real
/v1/events transmite QR codes e mudanças de estado da instância. Sem polling, sem ginástica de WebSocket.
Lifecycle FSM da instância
pending → qr → connecting → connected → disconnected. Cada transição é um evento tipado.
Deploy de um binário só
Postgres, Redis, um processo Node. Roda no Railway, Fly, Hetzner ou no seu notebook.
Contratos abertos
@whatisup/contracts publica todo request, response e payload de webhook como schema Zod. Zero drift.
Do zero até a primeira mensagem em cinco passos.
Curl primeiro porque se funciona no curl funciona em qualquer stack. As mesmas chamadas rodam de Node, Python, Go — qualquer cliente HTTP serve.
curl -sX POST https://api.whatisup.dev/v1/instances \
-H "Authorization: Bearer $WHATISUP_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name": "primary"}'
# → 201 Created
{
"id": "inst_01J5XZ3RX9...",
"name": "primary",
"status": "pending",
"created_at": "2026-05-01T12:34:56Z"
}Arquitetura realtime, observável desde o dia um.
Um Postgres, um Redis, um processo Node stateful por região. SSE pros clientes, BullMQ pra entrega com retry, prom-client pra tudo que importa.
Bote mensageria pra rodar numa tarde.
Plano Starter cobre uma instância. Faz upgrade quando precisar.