Skip to main content
GET
/
api
/
v1
/
guardrails
/
invocations
Guardrail Invocations
curl --request GET \
  --url http://localhost:8000/api/v1/guardrails/invocations
{
  "trace_id": "<string>",
  "span_id": "<string>",
  "observed_at": "<string>",
  "decision": "<string>",
  "timing": "<string>",
  "reason": "<string>",
  "evidence": "<string>",
  "severity": "<string>",
  "provider": "<string>",
  "judge_model": "<string>",
  "response_json": "<string>"
}

Documentation Index

Fetch the complete documentation index at: https://docs.tracectrl.ai/llms.txt

Use this file to discover all available pages before exploring further.

Recent tracectrl.guardrail.evaluation spans for a specific (agent_id, guardrail_name) pair, ordered newest first. Reads directly from otel_traces and does not depend on the analytics pipeline tick.

Query Parameters

agent_id
string
required
The agent that owns the guardrail.
guardrail_name
string
required
The guardrail to query.
limit
integer
default:"50"
Maximum rows to return.
Returns 400 if agent_id or guardrail_name is missing.

Response

Array of GuardrailInvocation objects:
trace_id
string
Trace ID of the evaluation span
span_id
string
Span ID of the evaluation span
observed_at
string
ISO-8601 timestamp
decision
string
pass, fail, or error
timing
string
pre_input or post_output
reason
string
Judge’s reasoning
evidence
string
Evidence captured at evaluation time
severity
string
Severity level
provider
string
judge_llm or protector_plus
judge_model
string
Model used for the decision
response_json
string
Structured response payload (Protector Plus only; empty for legacy judge_llm spans)