Documentation Index
Fetch the complete documentation index at: https://docs.responsibleailabs.ai/llms.txt
Use this file to discover all available pages before exploring further.
Overview: Compliance API | Credits: 0.5 per call
Parameters
The text to scan. Must be 1-10,000 characters.
"detect" returns findings without modifying content. "mask" replaces PII with type-specific placeholders. "block" replaces all PII with [BLOCKED].Scan for child signals (age mentions, grade references, parental references). Required for S.9 compliance.
Declared processing purpose (e.g.,
"loan_advisory", "marketing"). Enables purpose-drift detection under S.4.Links this scan to a compliance session for stateful tracking.
Indian PII types detected
| Type | Pattern | Validation |
|---|---|---|
aadhaar | 12-digit (XXXX XXXX XXXX) | Verhoeff checksum; must not start with 0 or 1 |
pan | 5 alpha + 4 digits + 1 alpha | Regex match |
mobile | +91 prefix or 10-digit starting with 6-9 | Regex match |
upi | username@bankhandle | Validated against known bank handles |
passport | Letter + 7 digits | Active series only (J, K, L, M, R, S, T, U, V, Z) |
voter_id | 3 alpha + 7 digits | Regex match |
driving_license | State code + RTO + year + serial | Regex match |
ifsc | 4 alpha + 0 + 6 alphanumeric | Regex match |
bank_account | 9-18 digits | Context-aware: requires nearby keywords (account, a/c, acct) |
gstin | 2 digits + PAN + 1 alphanum + Z + 1 alphanum | Regex match |
Masking behavior
| PII Type | Mask Mode | Block Mode |
|---|---|---|
| Aadhaar | XXXX XXXX 0123 (last 4 visible) | [BLOCKED] |
| PAN | XXXXX1234X (digits visible) | [BLOCKED] |
| Mobile | [MOBILE] | [BLOCKED] |
| UPI | XXXX@bankhandle | [BLOCKED] |
| All others | [TYPE] (e.g., [PASSPORT]) | [BLOCKED] |
Child signal types
| Signal | Examples | Age Inference |
|---|---|---|
age_mention | ”I am 14”, “my son is 12” | Yes |
grade_mention | ”in 8th grade”, “class 10” | Yes (grade + 5) |
school_mention | ”my school” | No |
parental_reference | ”my parents”, “my mom said” | No |
minor_keyword | ”I am a minor” | No |
Request
Response
true if no PII, child signals, or purpose drift were detected.The input text with PII replaced by type-specific masks. Only present when
pii_action is "mask" or "block".Array of detected PII items. Each entry includes
type, original value, masked replacement, character position, severity (critical/high/medium), DPDP section, and maximum penalty_crore.Detected child indicators. Each entry has
type, matched text, inferred_age (if available), and DPDP section (S.9).true if child signals were detected, indicating S.9 protections must be applied.Specific actions required when a child is detected: parental consent, no targeted ads, no tracking, no harmful processing, age-gating.
true if the content contains indicators inconsistent with the declared purpose (S.4 violation).When drift is detected:
declared_purpose, drift_indicators (keywords found), DPDP section, and penalty_crore.