Skip to main content
POST
Invoke target tools

Restrictions

Usage

  • Up to 8 tools per call (MaxToolsPerInvoke); larger batches must be split client-side. The 8-tool cap aligns with the per-target agent concurrency.
  • Tools execute in parallel on the agent; webapi returns results[] aligned with the request tools[] order.
  • Long-running: set client timeouts to at least 35 s. The endpoint is intended for AI-SRE / human-RCA flows, not interactive UI.
  • Request-level errors (target_unavailable, ambiguous_target_kind, forward_failed) appear as HTTP 200 with data.error set and data.results = [].
  • Per-tool failures appear as HTTP 200 with data.error absent and results[i].error populated — always check all three layers (outer envelope error, data.error, then each results[i].error).
  • The response uses sparse fields: absent means empty. On success error is omitted entirely rather than sent as null; on failure data, summary and truncated are omitted. Do not key logic off placeholder null fields, and do not expect target when the locator could not be uniquely resolved.
  • results[i].data is the tool payload with the monit-agent result envelope already unwrapped — there is no nested data.data. The one-line distillation is results[i].summary, and results[i].truncated (carrying a reason) appears only when the result was genuinely truncated.
  • results[i].params echoes the params webapi received for that tool, so batched calls stay correlatable even when an individual tool fails.
  • Construct tools[].params against the input_schema returned by /monit/tools/catalog. For no-arg tools always pass params: {} explicitly.

Authorizations

app_key
string
query
required

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

application/json
target_locator
string
required

Target identifier. Same validation rules as /monit/tools/catalog.

tools
object[]
required

Up to 8 tool calls; webapi executes them concurrently and returns results in input order.

Required array length: 1 - 8 elements
account_id
integer<int64>

Optional consistency check. Must equal the authenticated account when supplied.

target_kind
string

Optional target kind; auto-inferred when omitted.

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.

request_id
string
required

Unique ID for this request. Mirrored in the Flashcat-Request-Id response header. Include it when reporting issues.

Example:

"01HK8XQE3Z7JM2NTFQ5YJ8P9R4"

data
object
required

Endpoint-specific payload. See each operation's 200 response schema.