toolType para elegir el comportamiento de la herramienta. La API admite
estos seis tipos públicos:
Todos los tipos requieren
name, apiName e instructions, y pueden definir
inputs. http, phone_connect y department_availability también admiten
loadingText y showLoadingText; human_handoff admite loadingText.
conversation_ended y run_code no usan esos campos de presentación.
HTTP
Usahttp para llamar una URL con GET, POST, PUT, DELETE o PATCH.
details requiere endpoint, method y authentication.
authenticationadmite{"type":"no_auth"}o{"type":"bearer","token":"<token>"}.headersyqueryParamsson mapas de strings.bodyes un objeto JSON.- Puedes usar placeholders
{{parametro}}en la URL, headers, query params y body. outputVariablePathusa notación de puntos. Si lo omites, se guarda la respuesta completa.
Transferencia humana
human_handoff verifica que el departamento esté permitido y disponible. Si la
transferencia se completa, termina el turno y la ejecución del agente puede
devolver handoff.
allowedDepartments o envías un arreglo vacío, el agente puede elegir
cualquier departamento disponible. Durante la ejecución, este tipo usa tres
argumentos fijos: summary, reason y departmentId; la configuración de
inputs se reemplaza por esos argumentos.
Fin de conversación
conversation_ended marca la conversación como terminada. No necesita
configuración específica:
endTurn: endTurn solo termina el turno actual y
queda reservado para uso interno del agente.
Conexión telefónica
phone_connect inicia el flujo de marcado únicamente cuando el agente se
ejecuta en un contexto de llamada de voz. En otros contextos no conecta una
llamada. Define un input phoneNumber de tipo string para que el agente
proporcione el destino.
Disponibilidad de departamentos
department_availability consulta la disponibilidad de uno o todos los
departamentos permitidos:
allowedDepartments, consulta todos los departamentos. Si lo envías,
debe contener al menos un ID. La herramienta expone un único input opcional
departmentId; si se omite, devuelve todos los departamentos permitidos.
includeFormattedSchedule es true por defecto durante la ejecución.
El resultado incluye checkedAt y, para cada departamento, available,
decision, description, rangos efectivos y, si lo solicitaste, schedule.
Ejecutar código
run_code ejecuta JavaScript durante un máximo de 60 segundos:
El código se ejecuta de forma remota en infraestructura administrada por la
plataforma, no en tu dispositivo. Cada ejecución tiene una duración limitada
y recibe únicamente los datos proporcionados por la plataforma.
codeadmite hasta 100,000 caracteres y no puede quedar vacío.- Lee los parámetros desde
inputy asigna el resultado aoutput. outputdebe ser un objeto JSON serializable de hasta 32 KiB. No puede ser un arreglo ni un valor primitivo.- Con
network.enabled: true, dispone defetch,axios,Headers,RequestyResponse. - Con la red deshabilitada, esas APIs no están disponibles.

