/v1/calls*.
Provedores suportados
As chamadas funcionam em dois tipos de provedor — e se comportam de forma diferente em cada um:Habilitar chamadas em um número oficial (Meta Cloud) tem dois pré-requisitos do lado da Meta: (1) tier de mensagens
TIER_2K (2.000 msgs/24h) ou maior — o gate da Meta para a Calling API (tentar abaixo disso retorna o erro Meta 138015); e (2) a WABA precisa ter o campo de webhook calls subscrito (ou SIP configurado) — senão a Meta retorna 138018 (“pré-requisitos técnicos não atendidos”). O Pilot Status habilita chamadas automaticamente ao conectar o número e re-tenta conforme o tier sobe, então um número novo em tier baixo (ex.: TIER_250) simplesmente ainda não recebe chamadas. O tier que vale é o do próprio número (messaging_limit_tier) — não o limite do Business Portfolio (whatsapp_business_manager_messaging_limit), que é outra coisa, costuma ser maior e não destrava chamadas. Você também pode disparar manualmente pelo botão Habilitar chamada nos detalhes Meta do número, na página Números — ele responde ENABLED, PENDING_TIER (tier ainda abaixo de 2K) ou PENDING_WEBHOOK (subscreva o campo de webhook calls na WABA / configure SIP e tente de novo). Números não oficiais (web) não têm esse gate.Tipos de chamada
O Pilot Status não cobra nada pelas chamadas.
Preços da Meta para chamadas iniciadas pela empresa (números oficiais)
Em números Meta Cloud API, os minutos de BIC são cobrados pela Meta diretamente na sua WABA (preços oficiais):- Chamadas iniciadas pelo usuário são gratuitas — sempre, nos dois provedores.
- A duração de BIC é medida em pulsos de 6 segundos; pulso fracionado conta como pulso inteiro (uma chamada de 56 segundos = 9,33 → 10 pulsos).
- A tarifa por pulso depende do país de destino e do seu tier de volume mensal (mesma estrutura de acúmulo de tiers das mensagens do WhatsApp). Quando uma chamada cruza a fronteira de um tier, a chamada inteira é cobrada pela tarifa mais barata (do tier de maior volume).
- É obrigatório ter um método de pagamento válido na WABA para fazer chamadas — sem ele, as chamadas falham com o erro Meta
131044. - Mensagens de solicitação de permissão de chamada são cobradas como mensagens normais, não como minutos de chamada.
- As tarifas são publicadas por moeda nos rate cards da Meta (rate card em BRL vigente a partir de 1º de julho de 2026).
Suporte de recursos por provedor
Um recurso que o provedor não suporta retorna
400 FEATURE_NOT_SUPPORTED.
Como cada provedor trata a mídia
META — apenas sinalização
O Pilot Status retransmite o SDP; o áudio flui navegador ↔ WhatsApp diretamente. Seu cliente WebRTC produz a oferta/resposta SDP. Não há nada no servidor para tocar áudio, entãoplay e realtime-session não se aplicam. A página /chat do painel tem um softphone integrado (disponível nos dois tipos de número).
Pilot Status web — mídia no servidor (sem SDP)
POST /v1/calls e /accept não recebem sdp — a chamada conecta e o áudio é processado no servidor. Você então controla o áudio com os dois endpoints exclusivos dos números web:
POST /v1/calls/{callId}/play— o backend baixa seu arquivo de áudio (a URL é validada no servidor) e o toca na chamada; passehangupAfterPlay: truepara encerrar a chamada automaticamente quando a reprodução terminar (bots de notificação não precisam de timer no cliente).POST /v1/calls/{callId}/realtime-session— abre uma sessão WebSocket PCM16 full-duplex. AwsUrlretornada fica em um host público de mídia dedicado e seu token é de uso único com TTL curto (~2 min); conecte-se a ela diretamente (não passa pelo proxy da API).
Camada de migração / compatibilidade
Se você já integra com o Evolution GO, a camada de compatibilidade faz proxy dos endpoints GO/call/* (start, answer, reject, hangup, list, get, media/play, media/realtime/session) — aponte sua base URL para /api/layer/evolution-go/ e seu código de chamadas GO existente continua funcionando. O WebSocket em tempo real (/call/media/realtime/ws/*) é acessado diretamente em um host público de mídia dedicado (a camada HTTP não faz upgrade de WebSocket); rotas de frontend/manager do GO não passam pelo proxy.
Acompanhe o progresso com webhooks
Assinecall.ringing, call.connected, call.ended (inclui duration em segundos quando atendida), call.missed e call.permission_updated. Eventos call.* normalizados disparam tanto para números META quanto Pilot Status web.

Chamadas na página de Logs — cada chamada aparece com direção, status (Completada com duração, Perdida, Recusada) e um contador próprio de CHAMADAS.
Próximos passos
Referência da API de Chamadas
Cada endpoint, parâmetros e comportamento por provedor.
Guia de Chamadas de Voz
Passo a passo: fazer chamada, atender, permissões, softphone.