List target tool catalog
Look up the tools that the per-target monit-agent currently exposes for a given target_locator (host, mysql, …). Returns each tool’s name, description, and JSON-Schema input_schema. Pair with /monit/tools/invoke to drive AI-SRE tool calls.
Restrictions
| Aspect | Value |
|---|---|
| Rate limits | 600 requests/minute; 10 requests/second per account |
| Permissions | Any valid app_key (read-only; not gated by a specific permission class) |
Usage
- Use
target_locatorto identify the target;target_kindis optional and is auto-inferred when omitted. Built-in target kinds arehostandmysql. - If multiple kinds match the same locator, the response is HTTP 200 with
data.error.code = "ambiguous_target_kind"and atarget_kindslist — retry with an explicittarget_kind. - The catalog is a candidate capability view, not an execution guarantee. The target Agent may go offline between catalog and invoke, or local Agent policy may block individual tools at invoke time.
- Set
include_output_shape: trueto additionally receive each tool’soutput_shape. Default isfalseto keep the response small for LLM consumption. - Business errors (
target_unavailable,unknown_toolset_hash,ambiguous_target_kind) come back as HTTP 200 with a non-nulldata.error. Only protocol / auth / internal errors use the standard error envelope.
Authorizations
App key issued from the Flashduty console under Account → APP Keys. Required on every public API call. Keep it secret — it grants the same access as the owning account.
Body
Target identifier (host name, MySQL address, …). Max 256 bytes; no whitespace, control characters, or |.
Optional consistency check. Must equal the authenticated account when supplied.
Optional target kind. When omitted webapi auto-infers across currently known kinds. Built-in kinds: host, mysql. Required on retry when the previous call returned ambiguous_target_kind.
When true, each tool entry includes its output_shape JSON Schema. Defaults to false to keep responses small for LLM consumption.
Response
Success
Success response envelope. On every 2xx response, request_id identifies the call (also mirrored in the Flashcat-Request-Id header) and data holds the endpoint-specific payload. Failure responses use a different shape — see ErrorResponse.