Doctor Registration Verification
Identity & KYCVerify a medical practitioner's registration with the national or state medical council.
Confirm that a doctor is registered, with which council, under which number and since when, before you list them on a platform, credential them for a hospital or accept their prescriptions.
Endpoint
POST
https://app.emver.io/api/sandbox/v1/doctor-verification
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Accept: application/json
Request parameters
| Field | Type | Description |
|---|---|---|
registration_number
required
|
string | Registration number |
council
required
|
string | Medical council |
name
optional
|
string | Doctor's name |
Example request
cURL
curl -X POST https://app.emver.io/api/sandbox/v1/doctor-verification \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"registration_number": "string",
"council": "string",
"name": "string"
}'
import requests
response = requests.post(
"https://app.emver.io/api/sandbox/v1/doctor-verification",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Accept": "application/json",
},
json={
"registration_number": "string",
"council": "string",
"name": "string"
},
timeout=60,
)
response.raise_for_status()
data = response.json()
const response = await fetch("https://app.emver.io/api/sandbox/v1/doctor-verification", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
"Accept": "application/json",
},
body: JSON.stringify({
"registration_number": "string",
"council": "string",
"name": "string"
}),
});
const data = await response.json();
$response = Http::withToken('YOUR_API_KEY')
->acceptJson()
->post('https://app.emver.io/api/sandbox/v1/doctor-verification', {
"registration_number": "string",
"council": "string",
"name": "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": {
"registered_name": STRING,
"qualification": STRING,
"registration_year": STRING,
"council": STRING,
"status": STRING
}
}
Example · 200
{
"status": 200,
"message": "string",
"data": {
"registered_name": "string",
"qualification": "string",
"registration_year": "string",
"council": "string",
"status": "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
Send the registration number and the council (or the doctor's name and state) and receive the registered name, qualification, year of registration and current status from the medical register.
Typical uses
- Hospital credentialing. Verify every consultant before privileges are granted.
- Telemedicine and pharmacy platforms. List only registered practitioners; validate prescribers.
Questions
- Which councils are covered?
- The national register and state medical councils that publish their registers. Dental, AYUSH and nursing councils are separate checks.