Guardrail checks

Every check name, configuration field, and response status Protect exposes, laid out as tables.

Checks run inside Protect’s gateway pipeline and are configured from Gateway > Guardrails, either per-check or as pipeline-wide settings; see Configuration fields for where each field lives.

First-party checks

These ten checks run inside Protect without an external provider. Three of them carry a different name on the Gateway > Guardrails settings tab.

CheckAlso shown as
pii-detectorpii-detection
injection-detectorprompt-injection
secrets-detectorsecret-detection
content-moderationSame
keyword-blocklistSame
topic-restrictionSame
language-detectionSame
system-prompt-protectionSame
hallucination-detectionSame
data-leakage-preventionSame

Provider-backed checks

Each of these 18 checks has a Provider Settings section in its Rules dialog (the per-check settings dialog under Gateway > Guardrails, covered in Configuration fields). Provider Settings is where that check’s own provider configuration lives, not always a credential connection to an outside service.

Check
futureagi-eval
llama-guard
azure-content-safety
presidio-pii
lakera-guard
bedrock-guardrails
hiddenlayer-guard
aporia-guard
pangea-guard
dynamoai-guard
enkrypt-guard
ibm-ai-detector
grayswan-guard
lasso-guard
crowdstrike-aidr
zscaler-guard
tool-permissions
mcp-security

PII entities

A pii-detector check (shown as pii-detection in the settings tab) can look for these 14 entity ids:

Entity idLabel
SSNSocial Security Number
CREDIT_CARDCredit Card Number
EMAILEmail Address
PHONEPhone Number
ADDRESSPhysical Address
NAMEPerson Name
DOBDate of Birth
PASSPORTPassport Number
DRIVER_LICENSEDriver’s License
IP_ADDRESSIP Address
BANK_ACCOUNTBank Account Number
MEDICAL_RECORDMedical Record Number
AWS_KEYAWS Access Key
API_KEYAPI Key / Secret

Topic categories

A topic-restriction check groups its topics under 8 categories, most with their own subcategories; Custom ships with none.

Category idLabelSubcategories
violenceViolence & Harmweapons, self_harm, threats, graphic_violence
sexualSexual Contentexplicit, suggestive, minors
hateHate Speech & Discriminationracism, sexism, religious_hate, disability_hate
illegalIllegal Activitiesdrugs, fraud, hacking, terrorism
misinformationMisinformationhealth_misinfo, political_misinfo, conspiracy
privacyPrivacy Violationsdoxxing, surveillance, stalking
profanityProfanity & Offensive Languagestrong_profanity, slurs, insults
customCustom Topicsnone

Configuration fields

Most fields below apply to every check in both the first-party and provider-backed tables above. A check that carries provider fields additionally has a Provider Settings section holding them, which is why keyword-blocklist shows its Blocked Keywords there despite being first-party. Confidence Threshold appears on every check except futureagi-eval and presidio-pii.

A check is configured from one of two dialogs: the per-check dialog covered under Rules dialog, and the guardrail-level dialog covered under Overview dialog. The two expose different fields: the Rules dialog offers Mask as an action option, plus a Confidence Threshold; the Overview dialog sets Stage.

Rules dialog

FieldValuesDefault
EnabledToggleOn
ActionBlock, Warn, Mask, LogBlock
Confidence ThresholdSlider from 0.0 to 1.0, marked at 0.0 / 0.5 / 1.00.8
Provider Settings (checks that have provider fields)The check’s provider configuration

Overview dialog

FieldValuesDefault
ActionBlock, Warn, LogBlock
Stagepre, post, bothpre
ThresholdNumeric (optional)

Pipeline settings

These apply to every check on the gateway rather than to an individual check.

FieldValuesDefaultWhat it does
ModeParallel, SequentialParallelWhether the gateway’s checks run at the same time or one after another
Fail OpenToggleOnWhat happens when a check doesn’t return a verdict before Timeout runs out. On lets the request through unchecked; off applies the check’s configured action instead
TimeoutMilliseconds5000 msHow long a check is given to return a verdict before Fail Open decides what happens next

Response statuses

A check that blocks or warns changes the gateway call’s response status to one of these codes.

StatusMeaning
403Blocked
446Blocked
246Warned

Note

Both 403 and 446 indicate a blocked call. The condition that selects one over the other isn’t documented here, so treat both as blocked when writing code that branches on status.

Keep exploring

Was this page helpful?

Questions & Discussion