Realiza una llamada desde uno de los números de teléfono de tu espacio de trabajo. Cada solicitud necesita un Idempotency-Key único; enviar de nuevo la misma clave devuelve la misma llamada en lugar de marcar dos veces.
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 es obligatorio cuando el espacio de trabajo tiene más de un número de teléfono. variables rellenan los marcadores del tipo {{customer_name}} en el primer mensaje y en el prompt del agente.
Con voicemail_detection activado (el valor predeterminado), una llamada saliente espera a que el otro lado hable antes de que el agente salude; si guardan silencio, el agente saluda después de dos o tres segundos. Cuando el agente oye un buzón o una grabación de una operadora, espera a que terminen el saludo y su pitido, deja voicemail_message, o cuelga si no hay ninguno. Estas llamadas terminan con ended_reason voicemail, se cobran por el tiempo que duraron y no se analizan ni se notifican.
En una campaña, un número que llegó a un buzón se vuelve a llamar como uno que no contestó, y el mensaje se deja solo en el último intento, para que nadie reciba el mismo mensaje dos veces.
Toda llamada saliente, de una campaña o de POST /api/v1/voice/calls, comprueba primero la lista de no llamar del espacio de trabajo. Un número de la lista nunca se marca: la API responde 409 con code do_not_call, y una campaña marca el contacto como canceled con outcome do_not_call y pasa al siguiente.
Cuando la persona de una llamada realizada por el agente pide que no se la vuelva a llamar, el agente pone su número en la lista por sí mismo, se lo dice, y se envía el webhook call.do_not_call. Los números también se pueden añadir y quitar en Campañas → Lista de no llamar o con la 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" }'
Los números van en formato internacional; hasta 1000 a la vez. GET /api/v1/voice/do-not-call los lista, los más recientes primero (search, limit, page), cada uno con su source (call, dashboard o api). DELETE /api/v1/voice/do-not-call/%2B14155550100 quita uno de nuevo; hazlo solo cuando la persona haya aceptado ser llamada.