Token导航 LogoToken导航

Agent Skill · 开发

whatsapp-cloud-api(WhatsApp cloud API 文档)

用于辅助 API 设计、接口文档、请求响应结构和服务集成说明。它适合让 Agent 梳理 endpoint、生成 OpenAPI 草稿、检查字段命名、整理错误码或辅助前后端联调。使用时需要确认真实业务语义、鉴权方式、分页和错误处理规则;涉及生成接口文档时,应避免凭空补字段,最好从现有代码、schema 或接口样例中提取事实。

whatsapp-cloud-api 是开发类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为接触敏感数据;许可证信息还不明确,第三方扫描有提醒项,按安装量在开发类的 21,746 个 Skill 里排第 13,983。

总安装 776周安装 33GitHub Stars 35,681下载 272核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:whatsapp-cloud-api(WhatsApp cloud API 文档)
来源仓库:https://github.com/sickn33/antigravity-awesome-skills
仓库路径:skills/whatsapp-cloud-api
安装命令:
npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill whatsapp-cloud-api
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill whatsapp-cloud-api

这个 Skill 是做什么的

开发类 Skill 面向写代码、改代码和排查问题,一般会读写仓库文件,部分还会执行构建或测试命令。

whatsapp-cloud-api 用于辅助 API 设计、接口文档和请求响应结构梳理。适合在 Codex、Claude、Cursor、Gemini CLI 中生成 OpenAPI 草稿或检查字段命名。通过 npx skills add 命令从指定仓库安装并使用。

使用时需确认真实业务语义、鉴权方式和分页规则,避免凭空补字段。建议结合现有代码或接口样例提取事实,确保文档准确性。

来源仓库内路径:skills/whatsapp-cloud-api

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill wha…;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要接触敏感数据,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

whatsapp-cloud-api 怎么安装?

在终端执行 npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill whatsapp-clou…。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

whatsapp-cloud-api 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

whatsapp-cloud-api 需要什么权限?

权限级别是接触敏感数据。该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

whatsapp-cloud-api 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

whatsapp-cloud-api 用的人多吗?

公开数据是累计安装 776 次,近一周安装 33 次,下载 272 次,GitHub 35,681 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

whatsapp-cloud-api 安全吗?

第三方扫描有提醒项,说明存在需要人工确认的行为。安装前请打开源码看清它读了什么、联网到哪里。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 来源仓库有 35,681 星,维护活跃度相对可查。

先想清楚的地方

  • 需要接触敏感数据,装到常用环境前要先评估影响面。
  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理开发类任务、又不想每次都手写提示词的人。

不太适合

  • 环境里有大量密钥、凭证,不方便给第三方 Skill 读取的人。
  • 需要明确授权才能用到公司项目里的场景。
  • 需要厂商级技术支持和 SLA 的生产系统。

开发类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
skill-vetter

技能审查员 · OpenClaw

8,779,018986操作浏览器MIT-0通过
ontology

本体论 · OpenClaw

6,636,960576只读MIT-0通过
entra-app-registration

内部应用程序注册 · Codex、Claude

6,631,872764接触敏感数据未明确通过
entra-app-registration

内部应用程序注册 · Codex、Claude

3,757,680201接触敏感数据未明确通过
nano-banana-pro

纳米香蕉专业版 · OpenClaw

3,526,898364接触敏感数据MIT-0有提醒
whatsapp-cloud-api

WhatsApp cloud API 文档 · 本页

77635,681接触敏感数据未明确有提醒

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

WhatsApp Cloud API - Integracao Profissional

Overview

Integracao com WhatsApp Business Cloud API (Meta). Mensagens, templates, webhooks HMAC-SHA256, automacao de atendimento. Boilerplates Node.js e Python.

When to Use This Skill

  • When the user mentions "whatsapp" or related topics
  • When the user mentions "whatsapp business" or related topics
  • When the user mentions "api whatsapp" or related topics
  • When the user mentions "chatbot whatsapp" or related topics
  • When the user mentions "mensagem whatsapp" or related topics
  • When the user mentions "template whatsapp" or related topics

Do Not Use This Skill When

  • The task is unrelated to whatsapp cloud api
  • A simpler, more specific tool can handle the request
  • The user needs general-purpose assistance without domain expertise

How It Works

Skill para implementar integracoes profissionais com WhatsApp Business usando a Cloud API oficial da Meta. Suporta Node.js/TypeScript e Python.

Overview

A WhatsApp Cloud API e a API oficial da Meta para envio e recebimento de mensagens via WhatsApp Business. Desde outubro 2025, e a unica opcao suportada (a API On-Premises foi descontinuada).

Versao da API: Graph API v21.0 (2026) Base URL: https://graph.facebook.com/v21.0/{phone-number-id}/messages Autenticacao: Bearer Token (System User Token para producao)

Pricing 2026 (por mensagem):

CategoriaCustoQuando cobrado
Marketing$0.025-$0.1365Campanhas, promocoes
Utility$0.004-$0.0456Confirmacoes de pedido, atualizacoes
Authentication$0.004-$0.0456OTP, reset de senha
ServiceGRATISResposta dentro da janela de 24h

Pre-requisitos:

  • Conta Meta Business Suite (gratuita)
  • App no Meta for Developers com produto WhatsApp
  • Numero de telefone verificado
  • System User Token (permanente)

Se o usuario nao tem conta Meta Business, leia references/setup-guide.md para o guia completo de setup do zero.


Decision Tree

Use esta arvore para determinar o proximo passo:

O usuario precisa de setup inicial?
├── SIM → Leia references/setup-guide.md
└── NAO → Qual linguagem?
    ├── Node.js/TypeScript
    └── Python
    → O que quer fazer?
       ├── Enviar mensagens → Secao "Tipos de Mensagem" abaixo
       ├── Receber mensagens → Secao "Webhooks" abaixo
       ├── Automatizar atendimento → Secao "Automacao" abaixo
       ├── WhatsApp Flows / Commerce → Secao "Features Avancados" abaixo
       ├── Gerenciar templates → references/template-management.md
       └── Compliance / limites → Secao "Compliance & Quality" abaixo

Para iniciar um projeto do zero com boilerplate pronto, use o script:

python scripts/setup_project.py --language nodejs --path ./meu-projeto

## Ou

python scripts/setup_project.py --language python --path ./meu-projeto

1. Configurar Variaveis De Ambiente

WHATSAPP_TOKEN=seu_access_token_aqui
PHONE_NUMBER_ID=seu_phone_number_id
WABA_ID=seu_whatsapp_business_account_id
APP_SECRET=seu_app_secret
VERIFY_TOKEN=token_customizado_para_webhook

2. Enviar Mensagem De Texto Simples

Node.js/TypeScript:

import axios from 'axios';

const GRAPH_API = 'https://graph.facebook.com/v21.0';

async function sendText(to: string, message: string) {
  const response = await axios.post(
    `${GRAPH_API}/${process.env.PHONE_NUMBER_ID}/messages`,
    {
      messaging_product: 'whatsapp',
      to,
      type: 'text',
      text: { body: message }
    },
    { headers: { Authorization: `Bearer ${process.env.WHATSAPP_TOKEN}` } }
  );
  return response.data; // { messaging_product, contacts, messages: [{ id }] }
}

Python:

import httpx
import os

GRAPH_API = "https://graph.facebook.com/v21.0"

async def send_text(to: str, message: str) -> dict:
    async with httpx.AsyncClient() as client:
        response = await client.post(
            f"{GRAPH_API}/{os.environ['PHONE_NUMBER_ID']}/messages",
            json={
                "messaging_product": "whatsapp",
                "to": to,
                "type": "text",
                "text": {"body": message}
            },
            headers={"Authorization": f"Bearer {os.environ['WHATSAPP_TOKEN']}"}
        )
        return response.json()  # {"messaging_product", "contacts", "messages": [{"id"}]}

3. Enviar Template Message (Fora Da Janela De 24H)

Templates sao a unica forma de iniciar conversa com um cliente. Devem ser aprovados pela WhatsApp antes do uso.

{
  "messaging_product": "whatsapp",
  "to": "5511999999999",
  "type": "template",
  "template": {
    "name": "hello_world",
    "language": { "code": "pt_BR" },
    "components": [
      {
        "type": "body",
        "parameters": [
          { "type": "text", "text": "João" }
        ]
      }
    ]
  }
}

4. Verificar Entrega

Use o script de teste para validar:

python scripts/send_test_message.py --to 5511999999999 --message "Teste de integracao"

Tipos De Mensagem

TipoUsoLimite
TextMensagens simples de texto4096 chars
TemplateIniciar conversa / fora da janela 24h1600 chars body
ImageFotos e imagens5MB
DocumentPDFs, planilhas, docs100MB
VideoVideos16MB
AudioMensagens de voz16MB
Interactive ButtonBotoes de resposta rapidaMax 3 botoes
Interactive ListMenu com opcoes em secoesMax 10 opcoes
LocationCompartilhar localizacaolat/long
ContactCompartilhar contatovCard format
ReactionReagir com emoji a mensagem1 emoji

Exemplo - Botoes interativos (Node.js):

async function sendButtons(to: string, body: string, buttons: Array<{id: string, title: string}>) {
  return axios.post(`${GRAPH_API}/${process.env.PHONE_NUMBER_ID}/messages`, {
    messaging_product: 'whatsapp',
    to,
    type: 'interactive',
    interactive: {
      type: 'button',
      body: { text: body },
      action: {
        buttons: buttons.map(b => ({
          type: 'reply',
          reply: { id: b.id, title: b.title }
        }))
      }
    }
  }, { headers: { Authorization: `Bearer ${process.env.WHATSAPP_TOKEN}` } });
}

// Uso:
await sendButtons('5511999999999', 'Como posso ajudar?', [
  { id: 'suporte', title: 'Suporte' },
  { id: 'vendas', title: 'Vendas' },
  { id: 'info', title: 'Informacoes' }
]);

Para exemplos completos de todos os tipos em Node.js e Python, leia references/message-types.md.


Webhooks

Webhooks permitem receber mensagens e atualizacoes de status em tempo real.

Verificacao (Get) - Obrigatorio

Quando voce configura o webhook no Meta Developers, a Meta envia um GET para verificar:

// Node.js (Express)
app.get('/webhook', (req, res) => {
  const mode = req.query['hub.mode'];
  const token = req.query['hub.verify_token'];
  const challenge = req.query['hub.challenge'];

  if (mode === 'subscribe' && token === process.env.VERIFY_TOKEN) {
    res.status(200).send(challenge);
  } else {
    res.sendStatus(403);
  }
});

Recebimento (Post) - Com Seguranca Hmac-Sha256

Toda notificacao de webhook vem assinada no header X-Hub-Signature-256. Valide SEMPRE antes de processar:

import crypto from 'crypto';

function validateSignature(rawBody: Buffer, signature: string): boolean {
  const expectedSig = crypto
    .createHmac('sha256', process.env.APP_SECRET!)
    .update(rawBody)
    .digest('hex');
  return crypto.timingSafeEqual(
    Buffer.from(`sha256=${expectedSig}`),
    Buffer.from(signature)
  );
}

Importante: Usar crypto.timingSafeEqual (Node.js) ou hmac.compare_digest (Python) para prevenir timing attacks. Nunca use comparacao simples de strings.

Eventos Recebidos

  • messages - Mensagem do cliente (texto, midia, botao, localizacao)
  • statuses - Atualizado de status (sent → delivered → read)
  • errors - Erros de entrega

Requisitos:

  • Endpoint HTTPS com certificado SSL valido
  • Responder com HTTP 200 em ate 5 segundos
  • Dev: use ngrok para teste local

Para setup completo com exemplos Node.js e Python, leia references/webhook-setup.md.


Menu Principal Interativo

Use botoes ou listas para criar um menu de opcoes na primeira interacao:

## Python - Menu Com Lista Interativa

async def send_main_menu(to: str):
    await send_interactive_list(
        to=to,
        header="Bem-vindo!",
        body="Selecione o que precisa:",
        button_text="Ver opcoes",
        sections=[{
            "title": "Atendimento",
            "rows": [
                {"id": "suporte", "title": "Suporte Tecnico", "description": "Ajuda com problemas"},
                {"id": "vendas", "title": "Vendas", "description": "Conhecer nossos produtos"},
                {"id": "financeiro", "title": "Financeiro", "description": "Boletos e pagamentos"},
            ]
        }]
    )

State Machine Para Fluxos

Gerencie conversas com uma maquina de estados. Cada cliente tem um estado atual que determina como a proxima mensagem sera processada:

INICIO → MENU_PRINCIPAL → SUPORTE → AGUARDANDO_DETALHES → ESCALACAO_HUMANO
                        → VENDAS → CATALOGO → CHECKOUT
                        → FINANCEIRO → SEGUNDA_VIA_BOLETO

Janela De 24 Horas

  • Dentro da janela (24h apos ultima mensagem do cliente): Pode enviar qualquer tipo de mensagem gratuitamente
  • Fora da janela: Apenas template messages (cobradas por categoria)

Integracao Com Ia (Claude Api)

Combine WhatsApp com Claude para respostas inteligentes:

  1. Receba mensagem via webhook
  2. Envie para Claude API com contexto da conversa
  3. Retorne resposta via WhatsApp
  4. Mantenha escalacao para humano disponivel

Para padroes completos de automacao, leia references/automation-patterns.md.


Whatsapp Flows

Formularios interativos multi-tela dentro do WhatsApp. O cliente preenche campos sem sair do app. Definidos em JSON com screens, components e actions.

Use cases: cadastros, agendamentos, pesquisas NPS, selecao de produtos.

Commerce & Catalogo

Ate 500 produtos no catalogo WhatsApp. Envie mensagens de produto individual ou multi-produto com checkout in-app.

Template Management Api

Crie, liste e delete templates programaticamente. Ate 6000 traducoes por conta. Aprovacao em minutos.

Whatsapp Channels

Broadcasting unidirecional para subscribers ilimitados. Localizado na aba "Atualizacoes" do WhatsApp.

Click-To-Whatsapp Ads

Anuncios no Facebook/Instagram com botao que abre conversa no WhatsApp. 99% de taxa de abertura.

Status Tracking

Rastreie entrega: pending → server → device → read. Receba via webhook de status updates.

Para detalhes completos de features avancados, leia references/advanced-features.md. Para gerenciamento de templates via API, leia references/template-management.md.


Checklist Essencial

  • Opt-in explicito obtido antes de enviar mensagens
  • Mecanismo de opt-out implementado (keyword "SAIR" ou "STOP")
  • Registro de consentimento com timestamp, metodo e proposito
  • Conteudo dentro das politicas do WhatsApp (sem spam, sem conteudo proibido)
  • LGPD/GDPR compliance (base legal definida, direitos do titular)
  • Frequencia de mensagens adequada (nao excessiva)
  • Templates aprovados antes do uso
  • Verificacao de negocio completa (para limites maiores)

Quality Rating

O WhatsApp monitora a qualidade das suas mensagens e atribui um rating:

RatingSignificadoAcao
VerdeBoa qualidade, poucos bloqueiosManter — elegivel para upgrade
AmareloQualidade media, atencao necessariaRevisar conteudo e frequencia
VermelhoQualidade baixa, risco de suspensaoAcao imediata: reduzir volume

Sinais positivos: Alta taxa de resposta, engajamento, poucos bloqueios Sinais negativos: Bloqueios, reports de spam, baixo engajamento

Tier System (Limites De Mensagem)

Desde outubro 2025, limites sao por Business Portfolio (nao por numero):

TierConversas/24hComo alcancar
Inicial250Conta nova / nao verificada
Tier 11,000Auto-upgrade: 50%+ do limite por 7 dias
Tier 210,000Auto-upgrade: 50%+ do limite por 7 dias
Tier 3100,000Auto-upgrade: 50%+ do limite por 7 dias
UnlimitedIlimitadoAuto-upgrade: 50%+ do limite por 7 dias

Mudancas 2026: Tiers 2K e 10K serao removidos. Apos verificacao de negocio, limite imediato de 100K.

Para guia completo de compliance, leia references/compliance.md.


Troubleshooting

ProblemaCausa ProvavelSolucao
401 UnauthorizedToken expirado ou invalidoGerar novo System User Token
400 Bad RequestPayload malformadoVerificar JSON contra exemplos
Template rejeitadoConteudo viola politicasRevisar e resubmeter com alteracoes
Webhook nao recebeURL invalida ou sem HTTPSUsar ngrok (dev) ou certificado SSL (prod)
Rate limit exceededUltrapassou 80 msg/sImplementar queue com retry
Quality rating baixoMuitos bloqueios/reportsReduzir volume, melhorar conteudo
Mensagem nao entregueNumero invalido ou nao no WhatsAppValidar numero antes de enviar
Numero nao verificadoOTP nao completadoRepetir verificacao via SMS ou ligacao

Para validar sua configuracao:

python scripts/validate_config.py

Referencias (Leia Conforme Necessidade)

ArquivoQuando ler
references/setup-guide.mdSetup inicial — criar conta Meta, configurar API
references/message-types.mdExemplos completos de todos os tipos de mensagem
references/webhook-setup.mdConfigurar webhooks com seguranca HMAC
references/automation-patterns.mdChatbot, filas, state machine, integracao IA
references/compliance.mdLGPD/GDPR, opt-in, quality rating, tier system
references/api-reference.mdEndpoints, erros, rate limits, pricing 2026
references/advanced-features.mdFlows, Commerce, Channels, Ads, Status Tracking
references/template-management.mdCRUD de templates via API

Scripts

ScriptO que faz
scripts/setup_project.pyCria projeto com boilerplate (Node.js ou Python)
scripts/validate_config.pyValida credenciais e conexao com a API
scripts/send_test_message.pyEnvia mensagem teste para validar setup

Boilerplate

DiretorioConteudo
assets/boilerplate/nodejs/Projeto TypeScript/Express completo
assets/boilerplate/python/Projeto Python/Flask completo
assets/examples/Exemplos de payloads JSON (templates, webhooks, flows)

Best Practices

  • Provide clear, specific context about your project and requirements
  • Review all suggestions before applying them to production code
  • Combine with other complementary skills for comprehensive analysis

Common Pitfalls

  • Using this skill for tasks outside its domain expertise
  • Applying recommendations without understanding your specific context
  • Not providing enough project context for accurate analysis

Related Skills

  • instagram - Complementary skill for enhanced analysis
  • social-orchestrator - Complementary skill for enhanced analysis
  • telegram - Complementary skill for enhanced analysis

Limitations

  • Use this skill only when the task clearly matches the scope described above.
  • Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
  • Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.

平台分布

Codex

33.55%
按下载量换算91

Claude

28.1%
按下载量换算76

Cursor

19.13%
按下载量换算52

Gemini CLI

9.84%
按下载量换算27

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

可疑

权限和风险

接触敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在提醒或未通过项,安装前请自行复核。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills