Saltar a contenido

Ejemplos en Python

Cliente reutilizable y scripts para los flujos más comunes de la API.

Instalación

pip install -r requirements.txt

Única dependencia: requests.

Configuración

Los scripts leen la API Key del entorno (nunca hardcodeada):

export NEURON_API_KEY="nrn_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

La URL base por defecto es https://api.neuronstudio.ai. Si necesitas sobrescribirla (raro), exporta API_BASE_URL.

¿De dónde sale la API Key? No es self-serve. La emite un administrador de tu organización y se muestra una sola vez. Solicita tu API Key a tu contacto de Neuron o al administrador de tu organización.

Archivos

Archivo Qué hace
client.py Cliente HTTP reutilizable. Lee la key del entorno, agrega el header X-API-Key, reintenta ante 429 respetando Retry-After, y parsea error_id/request_id de los errores. Los demás scripts lo importan.
start_campaign.py Lee un CSV local e inicia una campaña. Imprime campaign_id y total_leads.
schedule_campaign.py Programa una campaña para una fecha/hora futura (scheduled_at ISO 8601).
poll_results.py Polling con cursor sobre analytics/calls, paginando hasta has_more=false, imprimiendo un resumen por llamada.
fetch_call_detail.py Trae el detalle completo de una llamada (llamada + análisis + transcript).

Uso

export NEURON_API_KEY="nrn_live_..."

# Iniciar una campaña a partir de un CSV local
python start_campaign.py contactos.csv "Cobranza Enero"

# Programar una campaña para el futuro
python schedule_campaign.py contactos.csv "Cobranza Marzo" 2026-03-01T09:00:00Z

# Traer resultados (todas las llamadas, paginadas)
python poll_results.py

# Detalle de una llamada puntual
python fetch_call_detail.py call_abc123

Sin sandbox / dry-run: un start exitoso dispara llamadas reales de inmediato. Para probar sin impacto, usa una lista de un solo contacto con tu propio número, fuera de horario productivo.

Resultados por polling, no webhooks: la sincronización de resultados es por consulta (poll_results.py). La entrega por webhooks (push) está en desarrollo.