DigiLocker
Identity & KYCConsent-based document & identity verification (Aadhaar/PAN/DL) via DigiLocker. Generate a candidate consent link; verified documents + eKYC return to the case.
Generate a consent link, let the individual sign in to DigiLocker and share their Aadhaar, PAN or driving licence, and receive digitally signed, issuer-verified documents and eKYC data back into your workflow. No uploads, no OCR, no forgery risk.
Endpoint
Request parameters
This API takes no request body.
Example request
curl -X POST https://app.emver.io/api/sandbox/v1/digilocker \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{}'
import requests
response = requests.post(
"https://app.emver.io/api/sandbox/v1/digilocker",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Accept": "application/json",
},
json={},
timeout=60,
)
response.raise_for_status()
data = response.json()
const response = await fetch("https://app.emver.io/api/sandbox/v1/digilocker", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
"Accept": "application/json",
},
body: JSON.stringify({}),
});
const data = await response.json();
$response = Http::withToken('YOUR_API_KEY')
->acceptJson()
->post('https://app.emver.io/api/sandbox/v1/digilocker', {});
$data = $response->json();
Replace YOUR_API_KEY and the placeholder values. Use the switch above to see production URLs.
Response
The response body for this API is delivered at the end of the flow; see the console for a live example.
Error · 4xx / 5xx
{
"status": INTEGER,
"message": STRING
}
See Errors & status codes for what each status means and which calls are billed.
About this API
DigiLocker is the Government of India's document wallet, and documents pulled from it are issued directly by the issuing authority. The DigiLocker Verification API turns that into a two-step flow: you request a consent link, the person completes the authorisation on their phone, and the verified documents plus eKYC details arrive in your case or via webhook.
It replaces the weakest link in onboarding, the photographed document, with an authoritative copy. It is the recommended path when you need the document itself, not just a validation of the number printed on it.
Typical uses
- Paperless employee onboarding. Collect verified Aadhaar and PAN without a single upload.
- Digital account opening. Fully online KYC for lending, wallets and investment accounts.
- Gig partner activation. Driving licence and identity in one consent step.
- Tenant and property onboarding. Identity documents shared securely with the landlord or platform.
Questions
- How long does the flow take?
- It depends on the person. Most complete the DigiLocker authorisation in under two minutes from receiving the link. Your integration polls the status or listens for the webhook rather than waiting on the request.
- What if the person does not have a DigiLocker account?
- DigiLocker lets them create one with their Aadhaar-linked mobile during the same flow, so coverage is effectively everyone with Aadhaar.
- Which documents can be requested?
- Aadhaar (eKYC), PAN and driving licence are supported today. The documents arrive digitally signed by the issuer.
- Is this a redirect or an embedded flow?
- You receive a hosted consent link. Send it through any channel or open it from your own app; the person is returned to a completion screen and your system is notified.