API reference
Tools API
Actions an assistant can call during a chat. Define a tool, check which credential it holds, run it once exactly as a chat turn would, and read back every call it has made.
Endpoints
8 operations, each with its parameters, schemas and an example request on its own page.
- get/api/toolsList tools — Every tool in the organization, or the ones a given bot would be offered.
- post/api/toolsCreate tool
- get/api/tools/{tool_id}Get tool
- patch/api/tools/{tool_id}Update tool
- delete/api/tools/{tool_id}Delete tool
- get/api/tools/{tool_id}/callsList calls — What this tool has actually done, most recent first.
- get/api/tools/{tool_id}/credentialCredential hint — Confirms which credential is stored, without returning it.
- post/api/tools/{tool_id}/testTest tool — Runs the tool once, exactly as a chat turn would.
Authentication
Every call here needs Authorization: Bearer with a key from the dashboard — Authentication covers keys and scopes.
Objects returned
The models these endpoints send back, with every field. Open one to read it.
ToolResponse31 fields
auth_kindstringrequiredauth_namestring | nullrequiredauth_usernamestring | nullrequiredbody_modestringrequiredbot_idstring (uuid) | nullrequiredcall_countintegerrequiredcreated_atstring (date-time)requireddescriptionstringrequireddisplay_namestring | nullrequirederror_countintegerrequiredheadersobjectrequiredidstring (uuid)requiredidempotentboolean | nullrequiredinput_schemaobjectrequiredis_enabledbooleanrequiredlast_called_atstring (date-time) | nullrequiredlast_errorstring | nullrequiredlast_error_atstring (date-time) | nullrequiredmax_attemptsintegerrequiredmax_response_bytesintegerrequiredmax_response_charsintegerrequiredmethodstringrequirednamestringrequiredorg_idstring (uuid)requiredquery_templateobjectrequiredresponse_pathstring | nullrequiredtimeout_msintegerrequiredupdated_atstring (date-time)requiredurl_templatestringrequiredauth_configuredbooleanDefault: false
body_templateany
Message2 fields
messagestringrequiredokbooleanDefault: true
PaginatedResponse_ToolInvocationResponse_6 fields
itemsarray of ToolInvocationResponserequired15 fields · ToolInvocationResponse
argumentsobjectrequiredattemptsintegerrequiredbot_idstring (uuid)requiredcall_idstringrequiredconversation_idstring (uuid) | nullrequiredcreated_atstring (date-time)requiredduration_msintegerrequirederror_codestring | nullrequiredidstring (uuid)requiredokbooleanrequiredresultstring | nullrequiredstatus_codeinteger | nullrequiredstepintegerrequiredtool_idstring (uuid) | nullrequiredtool_namestringrequired
pageintegerrequiredpage_sizeintegerrequiredtotalintegerrequiredhas_morebooleanDefault: false
next_cursorstring | null
ToolTestResponse6 fields
contentstringrequiredokbooleanrequiredattemptsintegerDefault: 1
duration_msintegerDefault: 0
error_codestring | nullstatus_codeinteger | null
Something here wrong or missing? Tell us — the documentation and the API are maintained by the same person, so a correction is a fix rather than a ticket.