Chaque point de terminaison DPDP est disponible comme méthode typée sur client.dpdp. Le sous-client est attaché automatiquement — construisez un RailScoreClient et atteignez client.dpdp.*. Le client async (AsyncRAILClient) expose les mêmes méthodes sur await client.dpdp.*.
from rail_score_sdk import RailScoreClientclient = RailScoreClient(api_key="YOUR_RAIL_API_KEY")scan = client.dpdp.scan("Applicant PAN ABCDE1234F", pii_action="mask")
Détectez Aadhaar (validé Verhoeff), PAN, UPI, mobile et plus, plus les signaux d’enfants (S.9) et la dérive d’objectif (S.4). Choisissez detect, mask ou block.
result = client.dpdp.scan( "Applicant PAN is ABCDE1234F and mobile 9876543210.", pii_action="detect", purpose="loan_advisory",)print(result.compliant, [p.type for p in result.pii_found])
emit écrit 1–50 événements de conformité et démarre automatiquement les minuteurs statutaires qu’ils déclenchent (par exemple, dsr.received démarre l’horloge de réponse).
Une session enfile le parcours d’un seul sujet des données. create_session nécessite un purpose — le SDK lève ValueError immédiatement s’il est vide (il ne gaspillera pas un aller-retour).
Listez les minuteurs de délai réglementaires, filtrés par statut, type ou proximité.
timers = client.dpdp.list_timers(status="active", approaching_days=30)print(timers.summary.total_active)for t in timers.timers: print(t.type, t.days_remaining)
dpdp_audit exécute une évaluation de conformité en étapes d’une description de système, avec contexte spécifique à l’entité et notation d’exposition aux pénalités. Il enveloppe la vérification de conformité hébergée, donc il est hébergé uniquement.
from rail_score_sdk import DPDPHostedOnlyErrortry: audit = client.dpdp.dpdp_audit( content="Our fintech processes Aadhaar for KYC; consent via checkbox.", entity_type="data_fiduciary", sector="finance", ) print(audit.overall_label, audit.total_penalty_exposure_crore)except DPDPHostedOnlyError: # Levé lorsqu'il pointe vers un agent self-hosted qui ne sert pas l'audit. print("dpdp_audit runs against the hosted API only.")
dpdp_audit et la vérification de conformité sous-jacente sont disponibles sur l’API hébergée uniquement. Contre un agent RAIL self-hosted le SDK lève DPDPHostedOnlyError au lieu d’un 404/501 brut.
Les méthodes DPDP lèvent les erreurs SDK standard (AuthenticationError, RateLimitError, InsufficientTierError pour evidence inférieur à Pro) plus des erreurs spécifiques à DPDP.
from rail_score_sdk import DPDPHostedOnlyErrorfrom rail_score_sdk import AuthenticationError, RateLimitErrortry: client.dpdp.scan("...", pii_action="block")except AuthenticationError: print("Check your API key")except RateLimitError: print("Slow down requests")