API REST – Integração total com WhatsApp Oficial – CRM Whats Pro
API REST · OpenAPI 3.0 · WhatsApp Cloud Oficial

Uma API para conectar seu negócio ao WhatsApp Oficial

Mais de 130 endpoints documentados para enviar, receber, automatizar e auditar conversas. Aceita Fetch, axios, cURL ou qualquer linguagem que fale HTTP. Zero SDK proprietário.

50req/s por token 15grupos de rotas OAuth-freeaccess-token simples
~ /integration/send-message.js
1// Envia mensagem pelo WhatsApp Oficial
2const res = await fetch(
3  'https://api.crmwhatspro.com/core/v2/api/chats',
4  {
5    method: 'POST',
6    headers: {
7      'access-token': process.env.CWP_TOKEN,
8      'Content-Type': 'application/json'
9    },
10    body: JSON.stringify({
11      number: '5511987654321',
12      text: 'Olá! Seu pedido #7842 foi confirmado 🟢',
13      forceSend: true
14    })
15  }
16);
17const data = await res.json();
1// Cria contato no CRM
2const res = await fetch(
3  'https://api.crmwhatspro.com/core/v2/api/contacts',
4  {
5    method: 'POST',
6    headers: { 'access-token': token, 'Content-Type': 'application/json' },
7    body: JSON.stringify({
8      name: 'Mariana Costa',
9      number: '5511987654321',
10      tags: ['lead-quente', 'webinar-jul'],
11      customFields: { empresa: 'ACME', cargo: 'CMO' }
12    })
13  }
14);
15const { id, existsOnWhatsapp } = await res.json();
1// Dispara um script (campanha) para uma lista de contatos
2const res = await fetch(
3  'https://api.crmwhatspro.com/core/v2/api/scripts/run',
4  {
5    method: 'POST',
6    headers: { 'access-token': token, 'Content-Type': 'application/json' },
7    body: JSON.stringify({
8      scriptId: 'sc_black_friday_24',
9      audience: { tag: 'cliente-vip' },
10      scheduleAt: '2026-11-29T10:00:00-03:00'
11    })
12  }
13);
14// → { runId, queued: 4_217, eta: '~12min' }
$ curl -X POST https://api.crmwhatspro.com/core/v2/api/chats \
   -H "access-token: $CWP_TOKEN" \
   -H "Content-Type: application/json" \
   -d '{"number":"5511987654321","text":"Olá! 🟢"}'

 {"chatId":"ch_8a92","messageId":"msg_281f","status":"sent"}
 ✓ HTTP/1.1 200 OK
● live POST /chats
latency 142 ms · 200 OK
WhatsApp Cloud Oficial Meta OpenAPI 3.0 / Swagger Postman friendly Webhooks bidirecionais Rate limit 50 req/s · 2.500 req/min errorCode estável
Meta Business Partner WhatsApp Cloud API · Templates aprovados

Trabalhamos sobre a API Oficial do WhatsApp da Meta, não usamos engenharia reversa, não dependemos de browsers headless. Toda mensagem sai com remetente verificado, número conformado e zero risco de banimento por uso indevido.

→ swagger

Da chave ao primeiro send em 3 passos

Sem SDK proprietário, sem compilação, sem cliente especial. Se sua stack fala HTTP, ela já fala com a CRM Whats Pro.

01

Pegue seu access-token

No painel: EmpresasCanais → menu Copiar Token API. Um token por canal, você gerencia múltiplos números no mesmo CRM.

02

Envie no header de toda chamada

Cabeçalho fixo access-token: SEU_TOKEN. Sem OAuth, sem refresh dance, autenticação stateless e direta para CI/CD, Lambda, Edge Functions.

03

Faça o primeiro POST

Use fetch(), axios, curl, Postman ou Swagger UI direto. Resposta JSON com chatId, messageId e status em <200ms.

first-send.js
1// 1. instale nada, fetch é nativo no Node 18+
2const CWP = 'https://api.crmwhatspro.com';
3const token = process.env.CWP_TOKEN;
4
5// 2. cabeçalho de autenticação simples
6const headers = {
7  'access-token': token,
8  'Content-Type': 'application/json'
9};
10
11// 3. dispara o primeiro envio oficial
12const r = await fetch(`${CWP}/core/v2/api/chats`, {
13  method: 'POST', headers,
14  body: JSON.stringify({
15    number: '5511987654321',
16    text: 'Hello, world 👋'
17  })
18});
19console.log(await r.json());
20// → { chatId: 'ch_8a92', messageId: 'msg_281f', status: 'sent' }

15 grupos de endpoints. Um impacto direto no seu negócio.

Cada família de rotas resolve um problema de operação real. Use só o que precisa, combine para automatizar fluxos inteiros sem nenhuma intervenção humana.

Mensageria & Conversas
~40 rotas

Abrir chats, enviar texto, mídia, áudio, documentos, botões interativos e templates oficiais. Listar conversas, ler mensagens, transferir entre setores, finalizar atendimentos e disparar fluxos de chatbot.

Chats ChatsActions ChatsUtilities ChatBots

Impacto: notifique pedido pago, confirmação de agenda, status de entrega ou campanha, direto do ERP, sem operador. Cada mensagem entregue na hora certa vira receita.

Contatos & Organização
~31 rotas

CRUD completo de contatos, etiquetas dinâmicas, setores e grupos do WhatsApp. Sincronize sua base de leads do CRM externo, marque segmentações e roteie conversas para o time certo automaticamente.

Contacts Tags Sectors Groups

Impacto: uma única fonte de verdade entre seu CRM, e-commerce e atendimento. Segmentação fina vira campanhas com 3× mais conversão.

Automação & Disparo
~23 rotas

Crie scripts reutilizáveis, agende campanhas, configure cards de ação interativos e regras de horário de atendimento. Tudo programável, versionável e auditável via API.

Scripts ActionCards ServiceTimeRules

Impacto: pare de pagar por automação avulsa. Black Friday, lançamento, recuperação de carrinho, tudo orquestrado em CRON, com fallback fora do horário comercial.

Plataforma & Operação
~26 rotas

Provisione canais, gerencie usuários e permissões, monitore status do sistema, recupere backups e leia metadados da organização. Tudo o que você precisa para integrar a plataforma em rotinas de IT.

Channels Users System Backups Common

Impacto: ideal para revendas, agências e operações multi-cliente. Provisione um canal novo via API em segundos, audite tudo, escale sem caos.

Exemplos reais. Copia e cola.

Quatro chamadas que você pode rodar agora mesmo. Substitua o token e o número, pronto.

POST /core/v2/api/chats Chats

Abre chat e envia primeira mensagem em um único POST. Suporta texto, mídia base64 ou link, com botões interativos opcionais.

// resposta
{
  "chatId": "ch_a82fe1",
  "messageId": "msg_77ab",
  "status": "sent",
  "channel": "whatsapp_cloud"
}
GET /core/v2/api/contacts?tag=lead-quente Contacts

Lista contatos filtrados por etiqueta, paginação e ordenação. Útil para sincronizar leads no CRM externo ou alimentar campanhas.

// resposta paginada
{
  "items": [{ "id": "co_...", "name": "..." }],
  "total": 312,
  "page": 1,
  "hasMore": true
}
POST /core/v2/api/scripts/run Scripts

Dispara um script (campanha) para uma audiência segmentada. Aceita disparo imediato ou agendamento ISO-8601.

// payload
{
  "scriptId": "sc_black_friday",
  "audience": { "tag": "vip" },
  "scheduleAt": "2026-11-29T10:00-03:00"
}
PUT /core/v2/api/chats/{id}/transfer ChatsActions

Transfere chat ativo para outro setor ou usuário, com motivo opcional. Mantém histórico e contexto da conversa.

// payload
{
  "sectorId": "sec_financeiro",
  "reason": "cliente quer falar de boleto",
  "notify": true
}

Pensada para produção desde o primeiro byte

50
req/segundo
por token, janela deslizante
2.500
req/minuto
cap diário sustentado
3.0.4
OpenAPI
importa direto no Postman e Insomnia
99.9%
disponibilidade
infra dedicada · monitoramento 24/7

Tratamento de erros errorCode

  • Códigos estáveis (auth_01, num_02, chat_05), nunca atrele lógica à mensagem
  • HTTP 429 ao exceder rate limit · header com tempo de reset
  • Backoff exponencial recomendado · cache local em writes idempotentes
  • Retorno JSON consistente: { errorCode, status, msg }

Autenticação access-token

  • Token estático no header access-token · sem OAuth dance
  • Um token por canal · isolamento total entre números
  • Compatível com Edge Functions, Lambda, Cloud Run, qualquer serverless
  • Revogação imediata pelo painel · renove sem downtime
⚡ Documentação completa · OpenAPI 3.0

Abra o Swagger e construa hoje

Cada endpoint com payload, parâmetros, exemplos e códigos de erro. Importe no Postman em 1 clique e comece a integrar antes do almoço.