Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
Tools aanroepen (HTTP)
De Gateway van OpenClaw biedt een eenvoudig HTTP-endpoint om één tool direct aan te roepen. Het is altijd ingeschakeld en gebruikt Gateway-authenticatie plus toolbeleid. Net als bij het OpenAI-compatibele/v1/*-oppervlak wordt bearer-authenticatie met gedeeld geheim behandeld als vertrouwde operator-toegang voor de volledige gateway.
POST /tools/invoke- Dezelfde poort als de Gateway (WS + HTTP-multiplex):
http://<gateway-host>:<port>/tools/invoke
Authenticatie
Gebruikt de authenticatieconfiguratie van de Gateway. Veelvoorkomende HTTP-authenticatiepaden:- authenticatie met gedeeld geheim (
gateway.auth.mode="token"of"password"):Authorization: Bearer <token-or-password> - vertrouwde identiteitsdragende HTTP-authenticatie (
gateway.auth.mode="trusted-proxy"): routeer via de geconfigureerde identiteitsbewuste proxy en laat deze de vereiste identiteitsheaders injecteren - open authenticatie voor private ingress (
gateway.auth.mode="none"): geen authenticatieheader vereist
- Wanneer
gateway.auth.mode="token"is, gebruikgateway.auth.token(ofOPENCLAW_GATEWAY_TOKEN). - Wanneer
gateway.auth.mode="password"is, gebruikgateway.auth.password(ofOPENCLAW_GATEWAY_PASSWORD). - Wanneer
gateway.auth.mode="trusted-proxy"is, moet de HTTP-aanvraag afkomstig zijn van een geconfigureerde vertrouwde proxybron; local loopback-proxy’s op dezelfde host vereisen explicietgateway.auth.trustedProxy.allowLoopback = true. - Als
gateway.auth.rateLimitis geconfigureerd en er te veel authenticatiefouten optreden, retourneert het endpoint429metRetry-After.
Beveiligingsgrens (belangrijk)
Behandel dit endpoint als een oppervlak met volledige operator-toegang voor de gateway-instantie.- HTTP-bearer-authenticatie hier is geen smal scopemodel per gebruiker.
- Een geldig Gateway-token/wachtwoord voor dit endpoint moet worden behandeld als een eigenaars-/operatorreferentie.
- Voor authenticatiemodi met gedeeld geheim (
tokenenpassword) herstelt het endpoint de normale volledige operatorstandaarden, zelfs als de aanroeper een smallerex-openclaw-scopes-header meestuurt. - Authenticatie met gedeeld geheim behandelt directe toolaanroepen op dit endpoint ook als beurten van een eigenaar-afzender.
- Vertrouwde identiteitsdragende HTTP-modi (bijvoorbeeld vertrouwde proxy-authenticatie of
gateway.auth.mode="none"op een private ingress) respecterenx-openclaw-scopeswanneer aanwezig en vallen anders terug op de normale standaardscopeset voor operators. - Houd dit endpoint alleen op loopback/tailnet/private ingress; stel het niet direct bloot aan het openbare internet.
gateway.auth.mode="token"of"password"+Authorization: Bearer ...- bewijst bezit van het gedeelde operatorgeheim van de gateway
- negeert smallere
x-openclaw-scopes - herstelt de volledige standaardscopeset voor operators:
operator.admin,operator.approvals,operator.pairing,operator.read,operator.talk.secrets,operator.write - behandelt directe toolaanroepen op dit endpoint als beurten van een eigenaar-afzender
- vertrouwde identiteitsdragende HTTP-modi (bijvoorbeeld vertrouwde proxy-authenticatie, of
gateway.auth.mode="none"op private ingress)- authenticeren een externe vertrouwde identiteit of implementatiegrens
- respecteren
x-openclaw-scopeswanneer de header aanwezig is - vallen terug op de normale standaardscopeset voor operators wanneer de header ontbreekt
- verliezen alleen eigenaarsemantiek wanneer de aanroeper scopes expliciet versmalt en
operator.adminweglaat
Requestbody
tool(string, vereist): naam van de tool die moet worden aangeroepen.action(string, optioneel): wordt naar args gemapt als het toolschemaactionondersteunt en de args-payload deze heeft weggelaten.args(object, optioneel): toolspecifieke argumenten.sessionKey(string, optioneel): doelsessiesleutel. Als deze is weggelaten of"main"is, gebruikt de Gateway de geconfigureerde hoofdsessiesleutel (respecteertsession.mainKeyen standaardagent, ofglobalin globale scope).dryRun(boolean, optioneel): gereserveerd voor toekomstig gebruik; wordt momenteel genegeerd.
Beleid + routeringsgedrag
Beschikbaarheid van tools wordt gefilterd via dezelfde beleidsketen die door Gateway-agents wordt gebruikt:tools.profile/tools.byProvider.profiletools.allow/tools.byProvider.allowagents.<id>.tools.allow/agents.<id>.tools.byProvider.allow- groepsbeleid (als de sessiesleutel naar een groep of kanaal verwijst)
- subagentbeleid (bij aanroepen met een subagent-sessiesleutel)
- Exec-goedkeuringen zijn operatorvangrails, geen afzonderlijke autorisatiegrens voor dit HTTP-endpoint. Als een tool hier bereikbaar is via Gateway-authenticatie + toolbeleid, voegt
/tools/invokegeen extra goedkeuringsprompt per aanroep toe. - Deel Gateway-bearerreferenties niet met niet-vertrouwde aanroepers. Als u scheiding over vertrouwensgrenzen nodig hebt, draai dan afzonderlijke gateways (en idealiter afzonderlijke OS-gebruikers/hosts).
exec— directe opdrachtuitvoering (RCE-oppervlak)spawn— willekeurige creatie van childprocessen (RCE-oppervlak)shell— uitvoering van shellopdrachten (RCE-oppervlak)fs_write— willekeurige bestandsmutatie op de hostfs_delete— willekeurige bestandsverwijdering op de hostfs_move— willekeurige bestandsverplaatsing/-hernoeming op de hostapply_patch— patchtoepassing kan willekeurige bestanden herschrijvensessions_spawn— sessieorkestratie; agents op afstand spawnen is RCEsessions_send— berichtinjectie tussen sessiescron— persistent automatiseringsbesturingsvlakgateway— gateway-besturingsvlak; voorkomt herconfiguratie via HTTPnodes— node-opdrachtrelay kan system.run bereiken op gekoppelde hostswhatsapp_login— interactieve installatie waarvoor een terminal-QR-scan nodig is; blijft hangen op HTTP
gateway.tools:
x-openclaw-message-channel: <channel>(voorbeeld:slack,telegram)x-openclaw-account-id: <accountId>(wanneer er meerdere accounts bestaan)
Antwoorden
200→{ ok: true, result }400→{ ok: false, error: { type, message } }(ongeldige aanvraag of fout in toolinvoer)401→ niet geautoriseerd429→ authenticatie met rate limit beperkt (Retry-Afteringesteld)404→ tool niet beschikbaar (niet gevonden of niet op de allowlist)405→ methode niet toegestaan500→{ ok: false, error: { type, message } }(onverwachte fout bij tooluitvoering; opgeschoonde melding)