POST /v1/evaluate. Claude Enterprise uses the
specialized endpoint described in its
integration guide.
You create and manage collectors under Agent Runtime → Collectors. The page has two
tabs:
Opening a collector is a side panel with:
Each collector owns:
- Authentication: TrustGate is native (no customer API key; the gateway authenticates via the platform). Other integrations use one or more API keys that resolve the collector at runtime.
- Policy routing: which policy evaluates its traffic (a default policy, and optionally per‑consumer overrides).
Catalog groups
The catalog offers nineteen collector types in five groups. The group decides where the collector runs, what it can see, and which setup snippet you get.
Every type is listed, group by group, on the
TrustGuard overview. Browse
Integrations for setup instructions, and
How it works to compare what each one can enforce.
Two gateways still need a piece you build. Portkey and
LiteLLM each have a collector type, but TrustGuard is not yet a
named guardrail inside either product — Portkey calls a Bring Your Own Guardrails webhook
adapter you host, and LiteLLM loads a custom guardrail class you place beside its
config.yaml. Both work today; both are more setup than the other groups.Model providers and collectors are separate. The
provider catalog configures which upstream models
TrustGate calls. A collector defines where TrustGuard evaluates traffic. Adding
a provider does not create a collector or change the enforcement path.
/v1/evaluate/claude. The Claude Code, Cursor, Codex,
and GitHub Copilot plugins use /v1/evaluate with a tgk_… key.
TrustGate is native. Bind a TrustGate collector to the gateway, assign a
runtime policy, and enable the TrustGuard guardrail on routes. The gateway does
not need a collector API key; it sets
direction and enforces the verdict.
Other collectors call /v1/evaluate with a key, send direction, and apply the
verdict. See the Python SDK or
REST for examples.Authentication & API keys
Except for TrustGate, a collector authenticates with a bearer API key, created on the collector in the console (TrustGate collectors have no Auth key step).- The raw secret is shown once at creation. Store it immediately. Afterwards only a non‑secret prefix hint is shown.
- Keys support an optional expiry and can be revoked.
- The key carries the collector identity. The runtime resolves the collector from the key, so the request body never needs a collector id.
Routing traffic to a policy
A collector decides which policy evaluates a request:- Default policy: the fallback used for all of the collector’s traffic.
- Per-consumer policy: an override keyed on
consumer_id, so one collector can send different consumers to different policies.
consumer_id has a per‑consumer policy, use it;
otherwise use the default policy. A collector with no matching policy leaves
that request unguarded. It returns allow with no findings.
You attach a collector to a policy from the policy’s Collectors tab (routing
mode Default or Consumer ID).
Attribution
Each integration should send, when available:consumer_id: who made the request (user ID, email, or device fingerprint). Used for per‑consumer policy routing.session_id: which conversation the message belongs to. Synthesized if omitted.attributes: optional context (consumer.name,consumer.tag,consumer.type,model.name,model.provider,collector.type,source.application) that gates and detector rules can match on. MCPtool.nameis taken frompayload.params.name, not from attributes.