Invocación de Herramientas (HTTP)
El Gateway de OpenClaw expone un endpoint HTTP sencillo para invocar una sola herramienta directamente. Siempre está habilitado, pero está protegido por la autenticación del Gateway y la política de herramientas.POST /tools/invoke- Mismo puerto que el Gateway (multiplexación WS + HTTP):
http://<gateway-host>:<port>/tools/invoke
Autenticación
Usa la configuración de autenticación del Gateway. Envíe un token bearer:Authorization: Bearer <token>
- Cuando
gateway.auth.mode="token", usegateway.auth.token(oOPENCLAW_GATEWAY_TOKEN). - Cuando
gateway.auth.mode="password", usegateway.auth.password(oOPENCLAW_GATEWAY_PASSWORD). - Si
gateway.auth.rateLimitestá configurado y se producen demasiados fallos de autenticación, el endpoint devuelve429conRetry-After.
Cuerpo de la solicitud
tool(string, requerido): nombre de la herramienta a invocar.action(string, opcional): se asigna a args si el esquema de la herramienta admiteactiony la carga útil de args lo omitió.args(object, opcional): argumentos específicos de la herramienta.sessionKey(string, opcional): clave de sesión de destino. Si se omite o es"main", el Gateway usa la clave de sesión principal configurada (respetasession.mainKeyy el agente predeterminado, oglobalen el ámbito global).dryRun(boolean, opcional): reservado para uso futuro; actualmente se ignora.
Política + comportamiento de enrutamiento
La disponibilidad de herramientas se filtra mediante la misma cadena de políticas utilizada por los agentes del Gateway:tools.profile/tools.byProvider.profiletools.allow/tools.byProvider.allowagents.<id>.tools.allow/agents.<id>.tools.byProvider.allow- políticas de grupo (si la clave de sesión se asigna a un grupo o canal)
- política de subagente (al invocar con una clave de sesión de subagente)
sessions_spawnsessions_sendgatewaywhatsapp_login
gateway.tools:
x-openclaw-message-channel: <channel>(ejemplo:slack,telegram)x-openclaw-account-id: <accountId>(cuando existen múltiples cuentas)
Respuestas
200→{ ok: true, result }400→{ ok: false, error: { type, message } }(solicitud inválida o error de la herramienta)401→ no autorizado429→ autenticación limitada por tasa (Retry-Afterestablecido)404→ herramienta no disponible (no encontrada o no en la lista de permitidos)405→ método no permitido500→{ ok: false, error: { type, message } }(error inesperado en la ejecución de la herramienta; mensaje saneado)