Skip to content

Users paste sensitive data into AI prompts - credit card numbers, phone numbers, passwords, and other PII - often without realizing the risk. Once that data reaches your AI provider it may appear in logs, training pipelines, or model outputs.

Arcjet sensitive info detection scans prompt content inside your application before it reaches the AI provider. Detected PII is blocked before it leaves your app environment.

deny: ["CREDIT_CARD_NUMBER", "EMAIL"] - the list of PII entity types to block. Remove any types your application legitimately handles - for example, a support bot that collects phone numbers should remove "PHONE_NUMBER" from the deny list.

Available entity types include: CREDIT_CARD_NUMBER, PHONE_NUMBER, EMAIL, IP_ADDRESS, URL. See the full reference for the complete list.

sensitiveInfoValue - The text to scan. Pass the user’s prompt or the most recent message. You can also pass the full conversation history if you want to scan all messages, not just the latest one.

mode: "DRY_RUN" - Logs detections without blocking. Use this to audit what PII appears in prompts before switching to "LIVE".

Sensitive info detection controls what reaches your AI provider. To also block automated clients and enforce per-user budgets, combine it with AI abuse protection and AI budget control.