Skip to main content
Todo lo que necesitas para consumir la Public API desde Node.js o el navegador usando nuestro SDK oficial.

Instalación

Configura el cliente

Define tus variables de entorno (usa el nuevo dominio productivo).
El baseUrl va sin /v1: el SDK agrega el prefijo de versión a cada ruta.
Crea un helper client.ts para reutilizar en tu aplicación:
Define apiKey en la configuración inicial o usa client.auth.setApiKey('sk_...') para rotarla en caliente. El SDK enviará el header X-API-Key automáticamente.

Operaciones frecuentes

Listar agentes

Crear y actualizar agentes

PATCH /v1/agents/{agentId} sólo acepta name, status, description, avatarUrl, avatarUploadId y debounceDelayMs. La validación corre con forbidNonWhitelisted, así que cualquier otra propiedad —metadata, por ejemplo— devuelve 400 property … should not exist en vez de ignorarse.

Versiones, instrucciones y horarios

Versiones y horarios cuelgan del namespace agents: son client.agents.versions y client.agents.schedule (con el alias client.agents.schedules). No existen client.agentVersions ni client.agentSchedule — llamarlos revienta con un TypeError antes de emitir la petición.
El horario no se manda con una clave por día. rules es un arreglo de exactamente siete elementos —uno por cada día de monday a sunday— con la forma { dayOfWeek, isEnabled, slot }, donde slot lleva startTime y endTime en formato HH:mm (o null los días cerrados). isEnabled, timezone, outOfHoursBehavior y rules son obligatorios.

Stages y triggers del blueprint

Los helpers devuelven los métodos list, get, create, update, delete, reorder y triggers(stageId) (con list, get, create, update, delete para cada trigger).

Conectar la tool voice.calls

Ejecutar voice.calls.startCall

API Keys y autenticación

Webhooks y suscripciones

Tres detalles que hacen fallar la copia a ojo: el webhook no tiene name (se identifica por su url y su description, y un name de más devuelve 400); las suscripciones se crean con client.webhooks.createSubscription(...), no con un sub-objeto client.webhooks.subscriptions; y el campo del evento es eventKey, no eventType. El catálogo de eventKey disponibles está en Notificaciones.

Manejo de errores e idempotencia

Ejemplo completo: CRUD de agentes

Ejemplo completo: agente de voz productivo

Scopes disponibles

La tabla de scopes vive en un solo sitio: la guía de API Keys. Ahí está el listado que los guards verifican hoy —incluidos knowledge-bases:read y knowledge-bases:write, que necesita client.knowledgeBases, y los dos de uploads— junto con las combinaciones que exige el carril de subida de archivos.
Los scopes no admiten comodines: el guard compara cadenas exactas, así que agents:* no existe y no otorga nada. Enumera cada scope que necesites.
Consulta el archivo OpenAPI local (openapi/public-api.yaml) para validar qué scope exige cada endpoint.

Recursos adicionales

  • Revisa la guía MCP en ./mcp para combinar tools con agentes desde el Protocolo de Contexto de Modelo.
  • Usa la referencia OpenAPI (/openapi/public-api.yaml) para navegar los modelos y respuestas HTTP.
  • En la carpeta snippets/ de esta documentación encontrarás fragmentos reutilizables listos para copiar en tus integraciones.