Passer au contenu principal
La suite India DPDP opérationnalise la Loi de protection des données personnelles (DPDP), 2023 pour les systèmes d’IA. Là où une vérification de conformité ponctuelle répond « ce texte est-il conforme maintenant ? », la suite DPDP couvre l’intégralité du cycle de vie du parcours d’un sujet des données : détecter les données personnelles indiennes, gater les décisions contre les obligations de la Loi, enregistrer les événements qui prouvent la conformité, suivre les délais statutaires et produire des preuves de qualité audit à la demande. Les sept points de terminaison se trouvent tous sous un même chemin de base et retournent la même enveloppe, vous pouvez donc les adopter progressivement — commencez par scan, ajoutez session et emit quand vous avez besoin du suivi état, et utilisez evidence au moment de l’audit.
https://api.responsibleailabs.ai/railscore/v1/compliance/dpdp

Deux façons d’exécuter DPDP

RAIL livre la même capacité DPDP sur deux chemins avec des garanties de flux de données opposées. Cette page documente l’API hébergée.

Hébergée (cette API)

Votre application envoie le contenu à api.responsibleailabs.ai. Multi-locataire, portée à l’organisation, facturée par appel. Tout sur cette page s’exécute ici.

Auto-hébergée Enterprise

L’agent RAIL s’exécute à l’intérieur de votre propre VPC ou environnement cloisonné ; le contenu ne quitte jamais votre infrastructure. Les mêmes sept points de terminaison y sont mirrés pour les déploiements single-locataire et licenciés.

Les sept points de terminaison

Point de terminaisonMéthodeCréditsCe qu’il fait
/scanPOST0.5Détecter les PII indiens (Aadhaar avec somme de contrôle Verhoeff, PAN, UPI, mobile et 6 autres), signaux d’enfants (S.9) et dérives d’objectif (S.4). Détecter, masquer ou bloquer.
/evaluatePOST0.3Porte déterministe allow / block / require_action pour une action, mappée aux sections S.4–S.16 de la DPDP.
/emitPOST0.1Enregistrer 1–50 événements de conformité (consentement, notification, DSR, violation). Démarre automatiquement les minuteurs réglementaires.
/requirePOST0.3Lister les actions requises pour une étape de flux de travail donné.
/evidencePOST2.0Générer un paquet de preuve de qualité audit (réponse DSR, notification de violation, audit de consentement, rapport annuel du FDS). Plans Pro+.
/sessionPOST0Créer ou récupérer une session de conformité état pour un parcours de sujet des données.
/timersGET0Lister les minuteurs de délai réglementaires, filtrés par statut, type ou proximité.
La facturation sur chaque route DPDP est fire-and-forget par conception — un problème de facturation ne bloque jamais une décision de conformité. Utilisez /verify pour une vérification de solde pré-vol quand vous en avez besoin. session et timers sont toujours gratuits.

Comment les pièces s’assemblent

Une intégration typique enfile une seule session à travers le parcours utilisateur. Les événements que vous emit mutent l’état de la session et démarrent les minuteurs statutaires ; scan et evaluate prennent des décisions à un moment donné ; evidence lit la piste accumulée quand un auditeur ou un régulateur demande.

Enveloppe de réponse

Chaque point de terminaison retourne la même enveloppe à deux clés. result contient la charge utile spécifique au point de terminaison ; credits_consumed rapporte le coût de l’appel.
{
  "result": { "...": "endpoint-specific" },
  "credits_consumed": 0.5
}

Authentification

Tous les chemins requièrent un jeton Bearer — une clé API (rail_...) ou un JWT. Passez-le sur chaque requête :
-H "Authorization: Bearer YOUR_RAIL_API_KEY"

Une procédure pas à pas complète

Le flux ci-dessous suit un parcours de demande de prêt de bout en bout. Il utilise curl ; le SDK Python reflète chaque appel comme client.dpdp.*.
1

Ouvrir une session

Une session lie les événements, les scans et les minuteurs à un parcours d’un seul sujet des données. config.purpose est requis.
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" }
  }'
La réponse retourne un session_id que vous réutilisez sur les appels ultérieurs.
2

Enregistrer la notification et le consentement

emit écrit les événements qui prouvent ensuite que vous avez satisfait vos obligations de notification (S.5) et de consentement (S.6).
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

Scanner le contenu pour les PII indiens

Avant de stocker ou d’envoyer la sortie du modèle, scannez-la. pii_action peut detect, mask ou 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

Gater la décision

evaluate retourne un verdict déterministe pour l’action que vous êtes sur le point de prendre.
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"
  }'
Un verdict de require_action vous dit d’appeler /require pour les obligations en attente.
5

Suivre les délais et produire des preuves

Quand un sujet des données exerce un droit ou qu’une violation survient, emit démarre le minuteur statutory ; timers liste ce qui approche ; evidence assemble le paquet d’audit.
# Une demande de droits démarre l'horloge de réponse S.13
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" } } ] }'

# Qu'est-ce qui est dû dans les 30 prochains jours ?
curl "https://api.responsibleailabs.ai/railscore/v1/compliance/dpdp/timers?status=active&approaching_days=30" \
  -H "Authorization: Bearer YOUR_RAIL_API_KEY"

Erreurs

Les routes DPDP utilisent les codes de statut HTTP standard. Les problèmes de validation retournent 400 avec un message error ; evidence sur un plan inférieur à Pro retourne 403 avec code: TIER_INSUFFICIENT.
{ "error": "Evidence generation requires Pro+ tier.", "code": "TIER_INSUFFICIENT" }
La suite DPDP ne journalise jamais le contenu brut ou les valeurs PII détectées — seulement un fragment court et non-identifiant pour l’analytique. Aadhaar, PAN et autres identifiants sont masqués ou supprimés avant que quoi que ce soit ne soit écrit.

Où aller ensuite

Guide India DPDP

Les concepts derrière la suite : obligations, cycle de vie et quel point de terminaison correspond à quelle section de la Loi.

Python SDK : DPDP

Chaque point de terminaison comme une méthode typée client.dpdp.*, plus le scanning PII côté client et l’audit système.

Point de terminaison Scan

Détection PII indienne, signaux d’enfants et dérive d’objectif en détail.

Point de terminaison Evidence

Paquets de qualité audit pour DSR, violation, consentement et rapports FDS.