Conecta Allo con lo que ya usas

Llamadas, SMS, fichas del CRM, analítica y hasta la recepcionista de IA. Una API REST que te entrega el material en bruto, para que la centralita se adapte a tu stack y no al revés.

  • REST y JSON
  • Autenticación por clave
  • Webhooks firmados
  • Incluida en todos los planes
terminal
# Todas las claves responden a esto. Empieza aquí.
curl -X GET "https://api.withallo.com/v2/api/me" \
  -H "Authorization: Api-Key YOUR-API-KEY"

# 200 · tus scopes, tus endpoints, tus límites de peticiones
{
  "scopes": ["CONVERSATIONS_READ", "SMS_SEND", "CRM_WRITE"],
  "rate_limits": { "read_per_second": 20, "write_per_second": 5 }
}
terminal
# Todas las llamadas y SMS donde se habló de un reembolso
curl -X POST "https://api.withallo.com/v2/api/conversations/items/search" \
  -H "Authorization: Api-Key YOUR-API-KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "search": "refund",
    "type": "ALL",
    "sort": "RELEVANCE",
    "size": 25
  }'

# Transcripciones, resúmenes de IA y textos de SMS, en una búsqueda
terminal
# Enviar un SMS desde uno de tus números de Allo
curl -X POST "https://api.withallo.com/v1/api/sms" \
  -H "Authorization: Api-Key YOUR-API-KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "+13055550180",
    "to": "+13055550142",
    "message": "Your order just shipped"
  }'

# Llega al mismo hilo que las llamadas con ese contacto
terminal
# Dinos dónde enviar los eventos, en tiempo real
curl -X POST "https://api.withallo.com/v2/api/webhooks" \
  -H "Authorization: Api-Key YOUR-API-KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://your-app.com/allo/events",
    "topics": ["call.completed", "sms.received", "contact.created"]
  }'

# Firmados, reintentados y entregados en el acto

Hecha para que tu primera petición funcione

La API es REST, la autenticación cabe en una cabecera y las respuestas son JSON predecible. Nada ingenioso, nada que memorizar.

  • Una cabecera, una claveGenera una clave en los ajustes de tu espacio de trabajo y envíala en Authorization: Api-Key. Ese es todo el saludo.

  • Permisos acotadosCada clave lleva solo los scopes que le das, y GET /v2/api/me responde con sus scopes y los endpoints a los que llega de verdad.

  • Paginación que te dice cuándo pararpage y size, hasta 100 por petición, con total_count y has_more en cada respuesta paginada.

  • Límites de peticiones claros20 lecturas y 5 escrituras por segundo y por clave, con X-RateLimit-Remaining y X-RateLimit-Reset de vuelta.

Ver la guía de autenticación
Un escritorio con un portátil, un cuaderno y una taza de café
terminal
# Dos líneas, y ya está.
export ALLO_KEY="YOUR-API-KEY"

curl -s \
  "https://api.withallo.com/v2/api/numbers" \
  -H "Authorization: Api-Key $ALLO_KEY"

# 200 · todos los números de Allo de la cuenta

Cada superficie, y la ruta que la abre

Catorce recursos sobre una sola URL base. Una API compacta, sin endpoints heredados de sobra ni deprecaciones sorpresa.

Conversaciones

El historial unificado de llamadas y SMS, con búsqueda por palabra clave en transcripciones y mensajes.

  • GET/v2/api/conversations
  • POST/v2/api/conversations/items/search
  • POST/v2/api/conversations/items/batch

SMS

Envía SMS y MMS desde tus números de Allo o desde un sender ID registrado.

  • POST/v1/api/sms

CRM

Crea, lee, actualiza y busca personas, empresas y negocios.

  • /v2/api/crm/people
  • /v2/api/crm/companies
  • /v2/api/crm/deals

Notas

Notas internas del equipo sobre una conversación o una ficha de contacto, con @menciones.

  • /v2/api/conversations/{contact_number}/notes
  • /v2/api/crm/people/{person_id}/notes

Hilos

Hilos de discusión del equipo colgados de una llamada, un SMS o una nota de conversación.

  • /v2/api/threads

Webhooks

Notificaciones de eventos con firma HMAC y reintentos automáticos.

  • GET/v2/api/webhooks
  • POST/v2/api/webhooks
  • GET/v2/api/webhooks/event_types

Números

Tus números de Allo con sus capacidades y los accesos del equipo, más el flujo de llamada entrante.

  • GET/v2/api/numbers
  • GET/v2/api/numbers/{number}/call_flow
  • PUT/v2/api/numbers/{number}/call_flow/draft

Usuarios

El equipo con sus roles y números asignados, y lo que puede hacer tu clave de API.

  • GET/v2/api/users
  • GET/v2/api/me

Etiquetas

Crea y lista etiquetas de llamada, y ponlas o quítalas en llamadas y SMS.

  • GET/v2/api/tags
  • POST/v2/api/conversations/items/{id}/tags
  • DELETE/v2/api/conversations/items/{id}/tags/{tag}

Plantillas de resumen

Las plantillas que deciden cómo estructura la IA un resumen de llamada.

  • GET/v2/api/summary_templates
  • POST/v2/api/summary_templates
  • PUT/v2/api/summary_templates/{id}

Analítica

Los KPI del equipo con comparación entre periodos y desglose por usuario.

  • POST/v2/api/analytics/overview
  • POST/v2/api/analytics/outbound

Colas de marcación

Lee y llena la cola del Power Dialer.

  • GET/v2/api/dialing-queues/current
  • POST/v2/api/dialing-queues/current/numbers
  • GET/v2/api/dialing-queues/sessions/{id}

Recepcionista de IA

Configura la recepcionista: su prompt, su voz, su base de conocimiento y si está activa.

  • GET/v2/api/numbers/{number}/agent
  • PATCH/v2/api/numbers/{number}/agent
  • PUT/v2/api/numbers/{number}/agent/prompt

Partner

Aprovisiona y gestiona cuentas de Allo como revendedor de marca blanca.

  • /v2/api/partner/accounts

Cada endpoint, campo a campo, en la referencia completa de la API

Tu centralita, a golpe de petición

Allo se encarga de las llamadas, los SMS y los resúmenes de IA. La API te da los datos y los disparadores para conectarlos con lo que tu equipo ya usa.

Lleva cada llamada a tu CRM

Trae las llamadas con sus grabaciones, transcripciones, resúmenes de IA y etiquetas, y déjalas donde tu equipo trabaja de verdad, desde Salesforce hasta la herramienta interna que montasteis el trimestre pasado.

Mantén contactos, empresas y negocios al día

Lee y escribe el CRM en los dos sentidos. Un lead nuevo en tu herramienta aparece en Allo, y un cambio hecho en Allo vuelve a tu base de datos por webhook.

Envía SMS desde tu código

Recordatorios de cita, avisos de entrega, confirmaciones de turno. Un POST y sale desde tu número de Allo, registrado en el mismo hilo que el resto de la conversación.

Reacciona en el momento en que pasa

Los webhooks se disparan cuando termina una llamada, llega un SMS o cambia un contacto. Sin polling ni cron, y con el resumen y la transcripción ya dentro del payload.

Mide al equipo sin exportar nada

Los KPI del equipo, el embudo de salientes y el desglose por usuario vuelven en JSON, para que tu panel muestre las cifras que tu equipo ya ve en Allo.

Monta la recepcionista de IA desde tus herramientas

Lee y cambia el prompt, la voz, el horario y la base de conocimiento de la recepcionista, y actívala en un número, sin que nadie abra la app de Allo.

Los eventos, en el momento en que ocurren

Olvídate del polling. Dale una URL a Allo, elige tus topics y el payload llega con el resumen de IA y la transcripción ya dentro, en cuanto la llamada termina o el SMS aterriza.

  • Once topicsLlamadas, SMS, etiquetas, contactos y resúmenes, en la combinación que quieras.

  • Entregas firmadasCada payload lleva una firma HMAC, así tu handler comprueba que viene de Allo antes de actuar.

  • Reintentos automáticosUna entrega fallida se reintenta, así que una ventana de despliegue te cuesta unos segundos, no un día de eventos.

Ver la guía de webhooks
Topics
  • call.receivedEntra una llamada en uno de tus números
  • call.triggeredArranca una llamada, entrante o saliente
  • call.answeredAlguien descuelga, un compañero o la recepcionista de IA
  • call.completedLa llamada termina, con resumen y transcripción
  • sms.receivedLlega un SMS entrante
  • sms.sentSale un SMS, desde cualquier parte de Allo
  • summary.updatedSe escribe o se edita un resumen de IA
  • tag.addedSe pone una etiqueta en una llamada o un SMS
  • tag.removedSe quita una etiqueta
  • contact.createdAparece un contacto nuevo en tu espacio
  • contact.updatedCambia un nombre, un número o una empresa

Preguntas que nos hacen siempre

El acceso a la API está incluido en todos los planes de Allo. No hay plan para desarrolladores ni coste por petición. Lo único que se factura aparte son los SMS salientes que envías por la API, cobrados por segmento como el resto de tu uso.

Sí. Verbos HTTP, cuerpos en JSON, códigos de estado predecibles y una sola URL base en api.withallo.com. Casi todo vive bajo /v2/api; enviar un SMS sigue siendo POST /v1/api/sms.

Con claves de API. La generas en los ajustes de tu espacio de trabajo y la mandas en la cabecera Authorization como Api-Key, no como Bearer. Cada clave lleva los scopes que le concedes: un 403 con APIKEYINSUFFICIENT_SCOPE significa que la clave es válida pero no tiene permiso. Llama a GET /v2/api/me para ver a qué llega la tuya.

Sí, con POST /v1/api/sms, desde cualquiera de tus números de Allo o desde un sender ID registrado. El mensaje aterriza en el mismo hilo que las llamadas y los SMS anteriores.

Once topics hoy: call.received, call.triggered, call.answered, call.completed, sms.received, sms.sent, summary.updated, tag.added, tag.removed, contact.created y contact.updated. Suscríbete a la combinación que quieras. Tu endpoint tiene que ser HTTPS, y cada entrega va firmada y se reintenta.

Sí, por clave de API: 20 lecturas por segundo y 5 escrituras por segundo. Cada respuesta lleva X-RateLimit-Limit, X-RateLimit-Remaining y X-RateLimit-Reset, para que tu backoff sepa cuándo reintentar. Usa webhooks en lugar de polling siempre que puedas.

Sí. GET y PATCH /v2/api/numbers/{number}/agent leen y actualizan toda la configuración, de la voz al horario y las reglas de transferencia, PUT sobre /prompt sustituye aquello con lo que responde, y los endpoints de conocimiento añaden o retiran las webs que ha leído.

Cada endpoint, cada campo y cada ejemplo están en help.withallo.com/en/v2/api-reference. El cURL se copia directamente desde la página.