Dociya
India · feature-flagged

DigiLocker

A verified-source connector to India's DigiLocker (via Setu) — pulls government-issued documents (Aadhaar, PAN, driving licence…) straight into the household's wallet, stamped with verified provenance.

Caution
Gated per-household by an operator flag — off by default. Connecting without it set returns 400.

Connect DigiLocker

POST/digilocker/connect

Opens a Setu authorization request. The client opens authorizationUrl in a web-auth session, then exchanges the callback via POST /digilocker/confirm.

curl -X POST https://api.dociya.com/digilocker/connect \
  -H "Authorization: Bearer $DOCIYA_ACCESS_TOKEN"

Get connection status

GET/digilocker/status

Status is one of disconnected, pending, connected, revoked.

curl https://api.dociya.com/digilocker/status \
  -H "Authorization: Bearer $DOCIYA_ACCESS_TOKEN"

Sync documents

POST/digilocker/sync

Pulls new documents from the connected account. Deduplicates by file hash — re-syncing an already-pulled catalog returns synced: 0, not duplicate documents.

curl -X POST https://api.dociya.com/digilocker/sync \
  -H "Authorization: Bearer $DOCIYA_ACCESS_TOKEN"

Also on this resource

POST /digilocker/confirmExchange the callback query. The server re-verifies against Setu's own status endpoint rather than trusting the callback alone.
POST /digilocker/disconnectLocal revoke only — already-synced documents stay in the wallet. Disconnecting never touches previously pulled data.
Note
Every DigiLocker-issued document carries provenance: "digilocker-issued" on its WalletCard, with issuerVerifiedName set — distinct from anything the household scanned or uploaded themselves.