Aadhaar Masking
Documents & BiometricsAutomatically mask the first eight digits on Aadhaar images and PDFs.
Upload an Aadhaar image or PDF and receive a copy with the first eight digits masked, as regulations require before storage. Keep only the compliant version and stop unmasked Aadhaar copies from ever landing in your systems.
Endpoint
Request parameters
| Field | Type | Description |
|---|---|---|
aadhaar_image_or_p_d_f
required
|
string | Aadhaar image or PDF |
Example request
curl -X POST https://app.emver.io/api/sandbox/v1/aadhaar-masking \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"aadhaar_image_or_p_d_f": "string"
}'
import requests
response = requests.post(
"https://app.emver.io/api/sandbox/v1/aadhaar-masking",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Accept": "application/json",
},
json={
"aadhaar_image_or_p_d_f": "string"
},
timeout=60,
)
response.raise_for_status()
data = response.json()
const response = await fetch("https://app.emver.io/api/sandbox/v1/aadhaar-masking", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
"Accept": "application/json",
},
body: JSON.stringify({
"aadhaar_image_or_p_d_f": "string"
}),
});
const data = await response.json();
$response = Http::withToken('YOUR_API_KEY')
->acceptJson()
->post('https://app.emver.io/api/sandbox/v1/aadhaar-masking', {
"aadhaar_image_or_p_d_f": "string"
});
$data = $response->json();
Replace YOUR_API_KEY and the placeholder values. Use the switch above to see production URLs.
Response
Structure · 200
{
"status": INTEGER,
"message": STRING,
"data": {
"masked_document": STRING,
"number_detected": STRING,
"confidence_flag": STRING
}
}
Example · 200
{
"status": 200,
"message": "string",
"data": {
"masked_document": "string",
"number_detected": "string",
"confidence_flag": "string"
}
}
Error · 4xx / 5xx
{
"status": INTEGER,
"message": STRING
}
See Errors & status codes for what each status means and which calls are billed.
About this API
Storing unmasked Aadhaar copies is a compliance risk. The Aadhaar Masking API detects the number on the document, in any orientation and on both sides, and returns a masked copy ready for storage, with a confidence flag when manual review is advisable.
Use it at every intake point, from candidate uploads to email attachments, so the compliant version is the only version.
Typical uses
- Candidate document uploads. Mask before the file is attached to the case.
- Email and WhatsApp intake. Clean attachments received over messaging channels.
- Archive remediation. Mask legacy copies already in storage.
- Account opening. Compliant KYC document handling.
Questions
- Is the unmasked copy retained?
- No. The original is processed and purged; only the masked output is returned.
- Does it work on photocopies and photos?
- Yes. Scans, photocopies, phone photos and PDFs are supported.