Skip to main content
Policy Gateway is a paid add-on. Every feature described here and in the subsections requires an active Policy Gateway plan. See pricing.
Policy Gateway is abliteration.ai’s governance layer. It sits between your application and the model, evaluates every request and response, and emits a structured policy event.

Plans

Three plans scale by usage volume, not by feature. Every plan gets the full Policy Gateway surface — projects, policies, all rollout modes, every connector, streaming metadata, policy events:
PlanVolume vs base
Control
Advanced20×
Enterprise60×
See the pricing page for current prices.

What a policy decides

Each request resolves to exactly one policy. The policy returns one of five decisions:
DecisionMeaning
allowPass through unchanged
rewriteApply a rewrite before calling the model
summaryReplace the output with a short summary
escalateForward to the escalation path (email or URL) for human review
refuseBlock the request
The policy-level enforcement_action is one of rewrite | block | summarize | escalate. When a rule fires, the action maps to the decision (summarizesummary, blockrefuse, others pass through). Every decision has a corresponding reason_code in uppercase: ALLOW, REWRITE, SUMMARY, ESCALATE, REFUSE.

What a rule looks at

Rules are flat — there’s no nested match: DSL.
FieldEffect
allowlistIf non-empty, the message must contain at least one listed term, otherwise the decision is forced to refuse.
denylistAny listed term triggers enforcement_action.
flagged_categoriesOpenAI-moderation categories (harassment, hate, sexual, illicit, and child-safety variants). Only evaluated on chat-completions and messages targets.
redact_piiBoolean. Strips PII patterns from the message text before upstream call.

Rollout modes

Rollout is per policy, not per rule.
ModeenabledpercentageBehavior
shadowfalsen/aEvaluate and log. Never block.
canarytrue< 100Each request has (percentage/100) chance of being enforced.
enforcedtrue100Always enforced.
rollback(derived)n/aAuto-rollback fired — policy is temporarily demoted to shadow-like behavior until cooldown_minutes elapses.

Auto-rollback

Every policy can auto-demote itself if the rate of negative decisions spikes:
FieldPurpose
threshold_pctRate (0–100) of matching decisions that triggers rollback
window_minutesSliding window for the rate calculation
min_requestsMinimum sample size before rollback can fire
cooldown_minutesHow long to stay in rollback before resuming
rollback_decisionsWhich decisions count (e.g. ["refuse", "escalate"])

Data classification

Every policy carries a classification field: public | internal | confidential | restricted. It doesn’t change behavior — it’s metadata for audit and access reviews.

Next

Onboarding

Create a project, write a policy, attach a key

Policy endpoints

/policy/* surface and headers

Streaming metadata

The policy field on every SSE frame

Backend guide

Decision lifecycle and policy event shape