Agentes de voz

Seu agenteatende o telefone.

O mesmo agente que responde no WhatsApp pode atender uma chamada. A Zavu roda o pipeline inteiro — reconhecimento de fala, o modelo, síntese — perto o suficiente para a conversa não parecer uma fila de espera.

  • POST /v1/calls · recebidas e de saída
  • papéis do transcript · user · assistant · tool
  • call.initiated → answered → completed

Uma chamada

Uma chamada é um transcript, um status e um custo.

Percorra o que GET /v1/calls/{callId} devolve enquanto a chamada acontece: os turnos em ordem, o objeto da chamada preenchendo campo a campo e os webhooks disparando nos momentos em que realmente disparam.

GET/v1/calls/call_abc123·inbound
ringing·00:00

Transcrição

ringing…

Objeto da chamada

statusringing
durationSeconds
turnCount0
endReason
cost

Webhooks

call.initiated00:00

cost chega com o evento final: a chamada é cobrada primeiro, o call.completed é despachado depois.

Um exemplo trabalhado, não uma gravação. Os campos, os papéis e os eventos são os que a API documenta; o custo mostrado é ilustrativo e depende do destino e da duração.

O que faz

Seis coisas que ele faz em cada chamada.

Atende chamadas recebidas

Aponte um número para um sender cujo agente tenha voz ativada. O agente atende, cumprimenta e conduz a conversa.

Faz chamadas

Um POST em /v1/calls disca para o destinatário e conecta o agente. Dá para trocar a saudação, o idioma ou a duração só naquela chamada.

Pode ser interrompido

Se a pessoa fala por cima, o agente para. A interrupção vem ligada; silêncio e duração total têm cada um seu limite.

Segue o idioma de quem liga

Fixe um idioma BCP-47, ou passe auto e o agente segue quem fala. Se você escolheu uma voz própria, ela é mantida — só o idioma muda.

Transfere para um humano

Dê um número ao agente e ele ganha uma ferramenta de transferência. Quando a conversa precisa de uma pessoa, ele passa a chamada em vez de improvisar.

Transcrição e custo por chamada

Cada turno fica registrado em ordem, incluindo as ferramentas que o agente chamou. Cada chamada encerrada traz duração, por que terminou e quanto custou.

Configure

Tudo o que o agente faz numa chamada é um objeto só.

Mude um controle e veja o corpo da requisição mudar junto. O que continua no padrão fica de fora, como um PATCH deve ser.

voice
Voz ativada

O número do sender é atendido pelo agente e as chamadas de saída são aceitas.

Saudação

Falada quando a chamada conecta. Deixe vazia e o agente espera a pessoa falar primeiro. Máximo de 1000 caracteres.

Adicionar saudações por idioma
Idiomaauto

auto detecta o idioma de quem liga e segue. A voz que você escolheu é mantida — só o idioma muda.

Vozpadrão

Dois ids que aparecem na especificação publicada. O catálogo completo do seu time vem de GET /v1/agents/voices.

voiceSpeed1.00

De 0.5 a 1.5, 1.0 é natural. Só é respeitado pelas vozes que permitem mudar a velocidade.

Interrupção

Vem ligada. O agente para de falar assim que a pessoa começa.

maxCallDurationMinutes15 min

De 1 a 120 minutos, 15 por padrão. A chamada termina sozinha ao chegar no limite.

maxIdleSeconds30 s

De 5 a 300 segundos, 30 por padrão. Quanto o agente espera em silêncio antes de encerrar.

Gravar chamadas

Guarda o áudio da chamada. Desligado até você ligar.

Se cair na secretária eletrônica

O que o agente faz ao detectar uma secretária eletrônica numa chamada de saída. Desliga, salvo instrução em contrário.

Transferir para um humano

Coloque um número E.164 e o agente ganha uma ferramenta de transferência para passar a chamada.

agent.voice
{
  "voice": {
    "enabled": true,
    "greeting": "Olá, obrigado por ligar para a Acme. Como posso ajudar?",
    "language": "auto"
  }
}

A API

Cinco requisições cobrem toda a superfície.

Voz ainda não é gerada nos SDKs, então aqui é curl e payload cru — as formas exatas que a API aceita e devolve.

curl -X POST https://api.zavu.dev/v1/calls \
  -H "Authorization: Bearer $ZAVU_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+56912345678",
    "senderId": "sender_12345",
    "language": "es-ES",
    "greeting": "Hola, le llamamos de Acme por su cita de mañana.",
    "maxDurationMinutes": 10,
    "metadata": { "campaign": "appointment_reminders" }
  }'

Como chegar lá

Três passos do zero até um telefone tocando.

  1. 01

    Dê um número ao sender

    Compre um número com capacidade de voz, ligue-o ao sender e ative o canal de voz.

  2. 02

    Configure a voz do agente

    Saudação, idioma, a voz que fala, quanto espera em silêncio, o que fazer com uma secretária eletrônica.

  3. 03

    Ligue, ou receba

    As recebidas funcionam assim que o número é ligado. As de saída são uma requisição quando seu produto precisar.

Antes de construir em cima disso

O que condiciona a voz, sem rodeios.

  • Voice Agents é habilitado por time. Enquanto não estiver ligado, todos os endpoints de chamada retornam 403 — peça para habilitarmos.
  • O agente do sender precisa de voz ligada, e o sender precisa de um número provisionado para chamadas. Ligar voz sem número é recusado, não guardado.
  • Não é possível fazer chamadas com uma API key de modo de teste.
  • A cobrança é por minuto conectado mais telefonia, do seu saldo pré-pago. Uma estimativa curta é reservada ao discar e a duração real é cobrada ao desligar.
  • Chamadas não aparecem nas estatísticas nem nas execuções de mensageria do agente — uma chamada é uma conversa, não uma mensagem recebida. Leia em /v1/calls.

Dê um número e ele começa a falar.

Comece grátis, sem cartão. A voz é habilitada por time — fale conosco e ativamos.

Agentes de voz | Atendem e fazem chamadas com IA — Zavu | Zavu