मुख्य सामग्री पर जाएं
Concept: India DPDP guide | SDK: Python DPDP | Frameworks: Compliance overview
India DPDP suite, Digital Personal Data Protection Act, 2023 को AI systems के लिए operationalize करता है। जहां एक one-shot compliance check यह सवाल करता है कि “क्या यह text अभी compliant है?”, DPDP suite एक data principal की पूरी journey को cover करता है: Indian personal data को detect करना, Act की obligations के against decisions को gate करना, उन events को record करना जो compliance को prove करते हैं, statutory deadlines को track करना, और demand पर audit-grade evidence produce करना। सभी सात endpoints एक ही base path के तहत हैं और same envelope return करते हैं, तो आप इन्हें incrementally adopt कर सकते हैं — scan से शुरु करें, जब आपको stateful tracking चाहिए तब session और emit add करें, और audit के समय evidence के लिए पहुंचें।
https://api.responsibleailabs.ai/railscore/v1/compliance/dpdp

DPDP चलाने के दो तरीके

RAIL एक ही DPDP capability को दो paths पर ship करता है जिनमें opposite data-flow guarantees हैं। यह page hosted API को document करता है।

Hosted (यह API)

आपकी application api.responsibleailabs.ai को content भेजती है। Multi-tenant, org-scoped, प्रति call बिल किया जाता है। इस page पर सबकुछ यहां चलता है।

Enterprise self-hosted

RAIL agent आपके अपने VPC या air-gapped environment के अंदर चलता है; content आपके infrastructure को कभी नहीं छोड़ता। एक ही सात endpoints वहां single-tenant, licensed deployments के लिए mirrored हैं।

सात endpoints

EndpointMethodCreditsयह क्या करता है
/scanPOST0.5Indian PII (Aadhaar with Verhoeff checksum, PAN, UPI, mobile, और 6 और) को detect करें, child signals (S.9) को detect करें, और purpose drift (S.4) को detect करें। Detect, mask, या block करें।
/evaluatePOST0.3एक action के लिए deterministic allow / block / require_action gate, DPDP S.4–S.16 में mapped।
/emitPOST0.11–50 compliance events (consent, notice, DSR, breach) को record करें। Auto-starts regulatory timers।
/requirePOST0.3एक दिए गए workflow step के लिए required actions को list करें।
/evidencePOST2.0एक audit-grade evidence packet generate करें (DSR response, breach notification, consent audit, SDF annual report)। Pro+ plans।
/sessionPOST0एक data-principal journey के लिए एक stateful compliance session create या retrieve करें।
/timersGET0Regulatory deadline timers को list करें, status, type, या कितनी जल्दी due हैं के आधार पर filter करें।
हर DPDP route पर billing fire-and-forget by design है — एक billing hiccup कभी भी compliance decision को block नहीं करता। जब आपको एक चाहिए तो /verify को use करें एक pre-flight balance check के लिए। session और timers हमेशा free हैं।

कैसे pieces एक साथ fit होते हैं

एक typical integration एक single session को user की journey के through thread करता है। Events जो आप emit करते हैं वह session state को mutate करते हैं और statutory timers start करते हैं; scan और evaluate in-the-moment decisions करते हैं; evidence accumulated trail को read करता है जब एक auditor या regulator पूछता है।

Response envelope

हर endpoint same two-key envelope return करता है। result endpoint-specific payload को hold करता है; credits_consumed report करता है कि call की cost क्या थी।
{
  "result": { "...": "endpoint-specific" },
  "credits_consumed": 0.5
}

Authentication

सभी routes को एक Bearer token की जरूरत है — एक API key (rail_...) या एक JWT। इसे हर request पर pass करें:
-H "Authorization: Bearer YOUR_RAIL_API_KEY"

एक पूरा walkthrough

नीचे का flow एक loan-application journey को end to end track करता है। यह curl use करता है; Python SDK हर call को client.dpdp.* के रूप में mirror करता है।
1

एक session खोलें

एक session events, scans, और timers को एक data-principal journey से tie करता है। config.purpose required है।
curl -X POST https://api.responsibleailabs.ai/railscore/v1/compliance/dpdp/session \
  -H "Authorization: Bearer YOUR_RAIL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "action": "create",
    "config": { "purpose": "loan_advisory", "entity_type": "data_fiduciary" }
  }'
Response एक session_id return करता है जिसे आप later calls पर reuse करते हैं।
2

Notice और consent को record करें

emit उन events को write करता है जो बाद में prove करते हैं कि आपने अपने notice (S.5) और consent (S.6) obligations को meet किया।
curl -X POST https://api.responsibleailabs.ai/railscore/v1/compliance/dpdp/emit \
  -H "Authorization: Bearer YOUR_RAIL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "session_id": "sess_1a2b3c",
    "events": [
      { "type": "notice.shown", "data": { "user_id": "u_42" } },
      { "type": "consent.granted", "data": { "user_id": "u_42", "purpose": "loan_advisory" } }
    ]
  }'
3

Content को Indian PII के लिए scan करें

Store या send करने से पहले model output को scan करें। pii_action को detect, mask, या block कर सकता है।
curl -X POST https://api.responsibleailabs.ai/railscore/v1/compliance/dpdp/scan \
  -H "Authorization: Bearer YOUR_RAIL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "content": "Applicant PAN ABCDE1234F, mobile 9876543210.",
    "config": { "pii_action": "mask", "purpose": "loan_advisory" }
  }'
4

Decision को gate करें

evaluate action के लिए एक deterministic verdict return करता है जो आप लेने वाले हैं।
curl -X POST https://api.responsibleailabs.ai/railscore/v1/compliance/dpdp/evaluate \
  -H "Authorization: Bearer YOUR_RAIL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "action": "make_decision",
    "context": { "user_id": "u_42", "purpose": "loan_advisory" },
    "session_id": "sess_1a2b3c"
  }'
एक verdict का require_action आपको बताता है कि outstanding obligations के लिए /require को call करें।
5

Deadlines को track करें और evidence produce करें

जब एक data principal एक right exercise करता है या एक breach होता है, तब emit statutory timer start करता है; timers list करता है कि क्या approaching है; evidence audit packet को assemble करता है।
# एक rights request S.13 response clock को start करता है
curl -X POST https://api.responsibleailabs.ai/railscore/v1/compliance/dpdp/emit \
  -H "Authorization: Bearer YOUR_RAIL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "events": [ { "type": "dsr.received", "data": { "user_id": "u_42", "request_id": "r_9" } } ] }'

# अगले 30 दिनों में क्या due है?
curl "https://api.responsibleailabs.ai/railscore/v1/compliance/dpdp/timers?status=active&approaching_days=30" \
  -H "Authorization: Bearer YOUR_RAIL_API_KEY"

Errors

DPDP routes standard HTTP status codes को use करते हैं। Validation problems 400 return करते हैं एक error message के साथ; evidence एक plan पर जो Pro से नीचे है 403 return करता है code: TIER_INSUFFICIENT के साथ।
{ "error": "Evidence generation requires Pro+ tier.", "code": "TIER_INSUFFICIENT" }
DPDP suite कभी भी raw content या detected PII values को log नहीं करता — केवल analytics के लिए एक truncated, non-identifying snippet। Aadhaar, PAN, और अन्य identifiers को mask या drop किया जाता है इससे पहले कि कुछ भी written हो।

अगला कहां जाएं

India DPDP guide

Suite के पीछे की concepts: obligations, lifecycle, और कौन सी endpoint Act के किस section में map होता है।

Python SDK: DPDP

हर endpoint एक typed client.dpdp.* method के रूप में, plus client-side PII scanning और system audit।

Scan endpoint

Indian PII detection, child signals, और purpose drift detail में।

Evidence endpoint

Audit-grade packets DSR, breach, consent, और SDF reporting के लिए।