diff --git a/litellm/proxy/guardrails/guardrail_hooks/litellm_content_filter/patterns.json b/litellm/proxy/guardrails/guardrail_hooks/litellm_content_filter/patterns.json index f4ad9c53a35..1accf8ac0c9 100644 --- a/litellm/proxy/guardrails/guardrail_hooks/litellm_content_filter/patterns.json +++ b/litellm/proxy/guardrails/guardrail_hooks/litellm_content_filter/patterns.json @@ -398,6 +398,50 @@ "category": "Payment Card Patterns", "description": "Detects IBANs (2 letter country code + 2 check digits + 4 char bank code + 7 digit base + optional 0-16 alphanumeric)" }, + { + "name": "fr_nir", + "display_name": "NIR/INSEE (French Social Security Number)", + "pattern": "\\b[12][0-9]{2}(0[1-9]|1[0-2])[0-9]{2}[0-9]{3}[0-9]{3}[0-9]{2}\\b", + "category": "EU PII Patterns", + "description": "Detects French National Identification Number (Numéro d'Inscription au Répertoire) - 15 digits with specific format: sex + year + month + department + commune + order + key" + }, + { + "name": "eu_iban_enhanced", + "display_name": "IBAN (Enhanced EU Format)", + "pattern": "\\b[A-Z]{2}[0-9]{2}[A-Z0-9]{4}[0-9]{7}([A-Z0-9]?){0,16}\\b", + "category": "EU PII Patterns", + "description": "Enhanced IBAN detection with more specific format validation (2 letter country + 2 check digits + 4 char bank code + 7 digit account base + optional 0-16 alphanumeric)" + }, + { + "name": "fr_phone", + "display_name": "Phone Number (France)", + "pattern": "(?:\\+33|0033|0)[1-9][0-9]{8}\\b", + "category": "EU PII Patterns", + "description": "Detects French phone numbers in various formats (+33, 0033, or 0 prefix followed by 9 digits starting with 1-9)" + }, + { + "name": "eu_vat", + "display_name": "VAT Number (EU)", + "pattern": "\\b(AT|BE|BG|CY|CZ|DE|DK|EE|EL|ES|FI|FR|HR|HU|IE|IT|LT|LU|LV|MT|NL|PL|PT|RO|SE|SI|SK)[0-9A-Z]{8,12}\\b", + "category": "EU PII Patterns", + "description": "Detects EU VAT identification numbers (2-letter country code + 8-12 alphanumeric characters covering all EU member states)" + }, + { + "name": "eu_passport_generic", + "display_name": "Passport Number (EU Generic)", + "pattern": "\\b[0-9]{2}[A-Z]{2}[0-9]{5}\\b", + "category": "EU PII Patterns", + "description": "Detects generic EU passport format (2 digits + 2 letters + 5 digits) - covers France and similar EU formats" + }, + { + "name": "fr_postal_code", + "display_name": "Postal Code (France)", + "pattern": "\\b[0-9]{5}\\b", + "category": "EU PII Patterns", + "description": "Detects French postal codes (5 digits)", + "keyword_pattern": "\\b(?:code\\s*postal|postal\\s*code|CP|zip\\s*code|postcode)\\b", + "allow_word_numbers": false + }, { "name": "street_address", "display_name": "Street Address",