POST
https://api.prysm1.com/v2/compliance/preview · Requires authenticationAuthorization
Your secret key as a bearer token:
Bearer prysm_sk_...Body
The text to classify and gate. Provide either
prompt or messages.An OpenAI-style conversation; the last
user message is classified. Used if prompt is
omitted.The Policy-as-Code spec. Every field is optional; an all-empty policy is inert
(pass-through). See compliance routing for the model.
A BRAIN.md config whose
compliance: block supplies the policy.
Used when compliance is omitted; falls back to the server-discovered BRAIN.md.Response
Whether a policy was in force.
false means inert — all models eligible, and only the
classification fields plus note are returned.true if at least one approved model can serve the request. false is a hard stop —
the policy excludes every model.The compiled policy, echoed back (allowlist/denylist, jurisdictions, residency, required
frameworks & certifications, blocked data classes, zero-retention).
Sensitive data classes found in the text, e.g.
["PII","FINANCIAL"]. Empty if none.Per-class detail: each detected class maps to the kinds that matched (e.g.
{ "FINANCIAL": ["iban","credit_card"] }). Pattern matches only — never executed.Model ids that survive the policy and could serve the request.
Map of excluded model id → list of human-readable reasons (e.g.
jurisdiction 'US' not in ['EU']).What staying compliant costs versus the cheapest unrestricted model.
The full exclusion decision:
policy, policy_active, detected_classes, allowed,
allowed_count, excluded, excluded_count, matrix_version.A sample SHA-256 compliance receipt (
sha256:...) for the cheapest compliant model —
present when ok is true. The same shape attaches to real runs’ PrysmProof.The Regulatory Compliance Matrix version used, e.g.
rcm-2026.06-baseline.Present only when
active is false — explains the pass-through.Errors
| Status | error | Meaning |
|---|---|---|
401 | — | Missing or invalid API key. |
422 | — | Neither prompt nor messages resolved to any text. |