Faça uma chamada a partir de um dos números de telefone do seu workspace. Cada requisição precisa de um Idempotency-Key único; enviar a mesma chave de novo devolve a mesma chamada em vez de discar duas vezes.
curl https://evasay.com/api/v1/voice/calls \
-X POST \
-H "Authorization: Bearer sk-your-key" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"agent_id": "AGENT_ID",
"to": "+14155550100",
"variables": { "customer_name": "Alex", "order_id": "1234" }
}'
from é obrigatório quando o workspace tem mais de um número de telefone. variables preenchem marcadores do tipo {{customer_name}} na primeira mensagem e no prompt do agente.
Com voicemail_detection ativado (o padrão), uma chamada de saída espera o outro lado falar antes de o agente cumprimentar; se ficarem em silêncio, o agente cumprimenta depois de dois ou três segundos. Quando o agente ouve uma caixa postal ou uma gravação da operadora, espera a saudação e o bipe terminarem, deixa voicemail_message, ou desliga quando não há nenhuma. Essas chamadas terminam com ended_reason voicemail, são cobradas pelo tempo que duraram e não são analisadas nem notificadas.
Em uma campanha, um número que caiu em uma caixa postal é chamado de novo como um que não atendeu, e a mensagem só é deixada na última tentativa, para que ninguém receba a mesma mensagem duas vezes.
Toda chamada de saída, de uma campanha ou de POST /api/v1/voice/calls, verifica primeiro a lista de não ligar do workspace. Um número da lista nunca é discado: a API responde 409 com code do_not_call, e uma campanha marca o contato como canceled com outcome do_not_call e segue para o próximo.
Quando a pessoa de uma chamada feita pelo agente pede para não ser chamada de novo, o agente coloca o número dela na lista por conta própria, avisa a ela, e o webhook call.do_not_call é enviado. Os números também podem ser adicionados e removidos em Campanhas → Lista de não ligar ou pela API:
curl https://evasay.com/api/v1/voice/do-not-call \
-X POST \
-H "Authorization: Bearer sk-your-key" \
-H "Content-Type: application/json" \
-d '{ "phones": ["+14155550100"], "note": "Asked by email" }'
Os números ficam em formato internacional; até 1.000 por vez. GET /api/v1/voice/do-not-call os lista, os mais recentes primeiro (search, limit, page), cada um com sua source (call, dashboard ou api). DELETE /api/v1/voice/do-not-call/%2B14155550100 tira um da lista novamente; faça isso somente quando a pessoa tiver concordado em ser chamada.