Construa com IA: como montar o WhatsApp dos clientes da agência com Claude Code, OpenAPI e MCP
Cada vez mais donos de agência constroem as próprias soluções com Claude Code, Cursor, Codex e outras IAs. O que separa uma primeira versão que funciona de uma que alucina endpoint é o contexto que o agente recebe. A ZapZap publica a especificação OpenAPI, a coleção Postman, SDKs, um servidor MCP e o llms.txt exatamente para isso. A GM Solutions Hub, agência do fundador da ZapZap, usa a ZapZap com os clientes dela; é uma declaração de fonte própria, sem números de resultado. A ZapZap é uma API não oficial: o WhatsApp pode limitar ou bloquear números.
Publicado em · 4 min de leitura
O que existe para a sua IA ler
Quatro peças. O llms.txt resume o produto, o preço, os limites e os links para o agente. A especificação OpenAPI e a coleção Postman descrevem os endpoints, em português, inglês e espanhol. O servidor MCP, de código aberto (github.com/zapzapapi/zapzap-mcp), dá ao agente ferramentas prontas, e os SDKs oficiais (Node.js, Python e PHP, pelo GitHub zapzapapi) cobrem a integração em código. Veja a página de agentes de IA e o guia do servidor MCP.
Passo 1: dê o contexto, não a senha
Coloque no arquivo de instruções do projeto (CLAUDE.md, AGENTS.md ou as regras do Cursor) os links da OpenAPI e do llms.txt, o base URL e os nomes das variáveis de ambiente. Nunca cole a chave e o segredo da API no prompt nem no repositório: o agente só precisa saber que existem ZAPZAP_API_KEY e ZAPZAP_API_SECRET.
Um trecho de instruções que funciona: "A API de WhatsApp é a ZapZap. Especificação: https://zapzapapi.com/openapi/zapzap-openapi.pt.json. Resumo para IA: https://zapzapapi.com/llms.txt. Base: https://api.zapzapapi.com/api/v1. Autenticação: cabeçalhos x-api-key e x-api-secret, lidos de ZAPZAP_API_KEY e ZAPZAP_API_SECRET. Use somente endpoints presentes na especificação e diga quando um recurso não existir."
Passo 2: peça uma coisa por vez, com critério de pronto
Prompts que funcionam são pequenos e verificáveis. Para um CRM mínimo: "Crie um script Node.js que receba o webhook de mensagens recebidas da ZapZap e grave numa tabela leads (telefone, nome, primeira mensagem, instância, data). Use só os campos que a especificação descreve, valide o payload e responda 200 rápido." Para relatório: "Leia as instâncias com GET /instances e, para cada uma, as campanhas com GET /{instanceId}/sender/listfolders. Gere um JSON com os contadores log_total, log_delivered, log_read e log_failed." Para lembretes: "Agende uma mensagem com POST /{instanceId}/sender/simple usando scheduled_for em milissegundos."
Peça sempre o teste no fim: "escreva um teste que rode contra uma instância de homologação". E mande o agente citar de qual operação da OpenAPI tirou cada chamada, o que torna a revisão de um minuto.
Passo 3: um exemplo que o agente pode usar como base
O trecho abaixo é a base de quase tudo: listar as instâncias da conta e checar o status de cada uma. Ele usa apenas operações documentadas, e serve de ponto de partida para um painel interno de saúde dos números dos clientes.
List instances and check the status of each one
const BASE = "https://api.zapzapapi.com/api/v1";
const headers = {
"x-api-key": process.env.ZAPZAP_API_KEY,
"x-api-secret": process.env.ZAPZAP_API_SECRET,
};
const instances = await (await fetch(BASE + "/instances", { headers })).json();
for (const inst of instances) {
const r = await fetch(BASE + "/" + inst.id + "/instance/status", { headers });
console.log(inst.name, r.ok ? await r.json() : "HTTP " + r.status);
await new Promise((res) => setTimeout(res, 1000));
}O que pedir para a IA construir primeiro
Quatro projetos de alto retorno para agência: um painel de saúde dos números dos clientes (quais caíram, quais precisam reconectar), um CRM mínimo alimentado por webhook, um relatório mensal por cliente (veja automatizar relatórios) e um agendador de retornos e lembretes (veja agendar mensagens de compromisso). Para o fluxo de leads de anúncio por cliente, veja acompanhar leads de anúncios.
Comece pelo painel de saúde: é só leitura, tem pouco risco e já entrega valor na primeira semana.
Cuidados ao deixar a IA programar
Revise todo envio. Um agente que gera código que envia mensagem pode, por erro, mandar a mesma mensagem a uma lista inteira ou ignorar o ritmo. Exija atrasos entre envios, uma trava de volume por execução e um modo de teste que escreve em log em vez de enviar. Não aprove código que dispare para lista sem consentimento, conforme o uso aceitável.
Trate também a segurança: chave e segredo só no back-end, nunca no navegador, e uma chave por ambiente. Para as páginas de nicho, veja agências com IA e revenda com a marca do cliente.
Resumo rápido
- A ZapZap publica llms.txt, OpenAPI, Postman, SDKs (Node.js, Python, PHP) e servidor MCP de código aberto para o agente ler.
- Dê ao agente o contexto (links e nomes de variáveis), nunca a chave e o segredo.
- Prompts pequenos, com critério de pronto, e a citação da operação da OpenAPI usada.
- Comece por um painel de saúde só de leitura e evolua para CRM, relatórios e agendamento.
- Revise todo código de envio: atrasos, trava de volume e modo de teste.
Continue lendo
Perguntas frequentes
A ZapZap tem servidor MCP?
Sim, de código aberto (github.com/zapzapapi/zapzap-mcp), com 25 ferramentas, segundo o llms.txt. Funciona em clientes que falam MCP, como Claude e Cursor.
Onde está a especificação OpenAPI?
Em zapzapapi.com/openapi/zapzap-openapi.pt.json (e .en.json e .es.json), com a coleção Postman ao lado, na página de OpenAPI.
Posso colar a chave de API no prompt?
Não. Use variáveis de ambiente e deixe o agente conhecer só os nomes. Chave em prompt pode vazar em histórico e em log.
Quais SDKs existem?
Node.js, Python e PHP, distribuídos pelo GitHub da zapzapapi, segundo o llms.txt.
A GM Solutions Hub usa a ZapZap?
Sim. A GM Solutions Hub, agência do fundador da ZapZap, usa a ZapZap com os clientes dela. É uma declaração de fonte própria, sem números de resultado.
Dê ao seu agente de código uma API que ele entende
Crie a conta, gere a chave de API e aponte o agente para a OpenAPI e o llms.txt. R$15 por número ativo ao mês, sem cobrança por mensagem. Ao verificar o telefone há crédito de boas-vindas, sujeito à campanha vigente.
