Jeder DPDP Endpoint ist als typisierte Methode auf client.dpdp verfügbar. Der Sub-Client wird automatisch angehängt — konstruieren Sie einen RailScoreClient und greifen Sie auf client.dpdp.*. Der Async-Client (AsyncRAILClient) zeigt die gleichen Methoden auf 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")
Erkennen Sie Aadhaar (Verhoeff-validiert), PAN, UPI, Mobilfunk und mehr, plus Kindersignale (S.9) und Zweckabweichung (S.4). Wählen Sie detect, mask oder 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 schreibt 1–50 Compliance-Ereignisse und startet automatisch alle gesetzlichen Timer, die sie auslösen (beispielsweise startet dsr.received die Antwortuhr).
Eine Sitzung verbindet die Reise eines Datenhauptlings. create_session erfordert einen purpose — das SDK wirft sofort ValueError, wenn es leer ist (es wird die Reise nicht verschwenden).
Listen Sie regulatorische Fristen-Timer auf, gefiltert nach Status, Typ oder wie bald sie fällig sind.
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 führt eine abgestuften Compliance-Bewertung einer Systembeschreibung mit entitätsspezifischem Kontext und Strafen-Exponierung-Scoring durch. Es umhüllt die gehostete Compliance-Prüfung, daher ist es gehostet-nur.
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: # Raised when pointed at a self-hosted agent that does not serve the audit. print("dpdp_audit runs against the hosted API only.")
dpdp_audit und die zugrunde liegende Compliance-Prüfung sind nur auf der gehosteten API verfügbar. Gegen einen selbstgehosteten RAIL Agent wirft das SDK stattdessen DPDPHostedOnlyError.
Die DPDP Methoden werfen die Standard-SDK-Fehler (AuthenticationError, RateLimitError, InsufficientTierError für evidence unter Pro) plus DPDP-spezifische.
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")