OrbTop

India NMC Doctor Registry Scraper

LEAD GENERATIONBUSINESS

India NMC Doctor Registry Scraper

Scrape doctor records from the Indian Medical Register maintained by the National Medical Commission (NMC) of India. Returns 1.4M+ registered doctors with registration number, State Medical Council, qualification, university, permanent address, and year of registration — the authoritative government source, not a directory aggregator pretending to be one.


India NMC Doctor Registry Scraper Features

  • Pulls records straight from the NMC's own REST API. No HTML parsing, no rendered browsers.
  • Filters by doctor name, year of registration, State Medical Council, or registration number.
  • Enumerates the full 1.4M+ registry when you need it. A safety cap catches accidental unfiltered runs.
  • Returns 17 fields per doctor, including the SMC metadata you'd otherwise have to look up separately.
  • Handles the NMC's incomplete TLS chain and DataTables-shaped pagination envelope without any configuration on your end.

Who Needs This Data?

  • Healthcare credentialing teams — Verify a doctor's registration against the authoritative source before onboarding.
  • Medical recruiters — Build targeted outreach lists filtered by state, specialty year, or qualifying university.
  • Pharmaceutical sales ops — Segment India's prescribing physician universe by SMC and qualification.
  • Insurance and claims verification — Confirm a provider's registration status is active before paying out.
  • Health policy researchers — Aggregate registration trends by state, university, or decade.
  • Legal and compliance due diligence — Run identity checks against the government registry rather than a third-party aggregator.

How India NMC Doctor Registry Scraper Works

  1. You supply a filter — a name substring, a year, a State Medical Council ID, a registration number, or nothing at all.
  2. The scraper queries the NMC's paginated listing API in batches of 500 records.
  3. For each hit, it issues a follow-up detail fetch to pull the full record — qualification, university, permanent address, additional qualifications.
  4. Records are streamed to the dataset as they arrive. If a detail lookup fails, the listing data is still saved so nothing is dropped silently.

Input

{
  "maxItems": 50,
  "name": "Sharma",
  "year": 2020,
  "smc_id": 6,
  "registration_no": "",
  "allow_full_enumeration": false
}
Field Type Default Description
maxItems integer 50 Maximum records to return across the full crawl.
name string "" Case-insensitive substring match against the doctor's full name. "Sharma" alone returns ~20k records.
year integer Calendar year of registration. The registry goes back to 1925.
smc_id integer Numeric ID of the State Medical Council (see table below).
registration_no string "" Exact registration number. Usually returns a single record.
allow_full_enumeration boolean false Required to exceed 1,000 records when no filter is provided. Keeps accidental billion-record runs in check.

Common State Medical Council IDs

ID Council
1 Andhra Pradesh Medical Council
4 Bihar Medical Council
6 Delhi Medical Council
8 Gujarat Medical Council
13 Karnataka Medical Council
16 Maharashtra Medical Council
21 Tamil Nadu Medical Council
23 Uttar Pradesh Medical Council
25 West Bengal Medical Council

Use the NMC portal's dropdown for the full list of 30+ councils.


India NMC Doctor Registry Scraper Output Fields

{
  "doctor_id": "12437767",
  "registration_number": "10087",
  "doctor_name": "AYUSHI SHARMA",
  "father_name": "Shri Rakesh Sharma",
  "state_medical_council": "Uttarakhand Medical Council",
  "smc_id": 24,
  "qualification": "MBBS",
  "qualification_year": "2020",
  "university": "U.HNB, Uttarakhand Medical Education",
  "additional_qualifications": [],
  "year_of_registration": 2020,
  "date_of_registration": "03/07/2020",
  "permanent_address": "Sharma House, Vishesh Township, Kamaluaganja, P.O - Katghariya, Haldwani, Distt - Nainital.",
  "uprn_number": "",
  "date_of_birth": "16/01/1996",
  "profile_url": "https://www.nmc.org.in/information-desk/indian-medical-register/#doctorId=12437767&regNo=10087",
  "scraped_at": "2026-04-23T12:19:07.018Z"
}
Field Type Description
doctor_id string Internal NMC doctor identifier. Used internally for detail lookups; included for your own joins.
registration_number string Registration number issued by the State Medical Council.
doctor_name string Full name (first + middle + last, whitespace-normalized).
father_name string Father's or husband's name as listed on the source record. Frequently empty for pre-1971 entries.
state_medical_council string Name of the SMC that issued the registration.
smc_id number Numeric ID of the issuing council.
qualification string Primary medical degree.
qualification_year string Year the primary qualification was earned. Kept as a string because older records contain free-form values.
university string Qualifying university name.
additional_qualifications array Up to three extra qualifications, each formatted as `degree
year_of_registration number Calendar year the doctor entered the IMR.
date_of_registration string Full registration date in DD/MM/YYYY. May be blank on very old records.
permanent_address string Permanent correspondence address as reported to the SMC.
uprn_number string Unique Permanent Registration Number when issued.
date_of_birth string Date of birth in DD/MM/YYYY. Often blank on older records; sentinel value 01/01/1900 is normalized to empty.
profile_url string Deep link back to the IMR portal with the doctor ID preserved for manual lookup.
scraped_at string ISO-8601 timestamp of when the record was scraped.

FAQ

Is this the official National Medical Commission registry?

Yes. India NMC Doctor Registry Scraper reads directly from the NMC's public REST API at nmc.org.in/MCIRest/. The same endpoints back the registry portal's DataTables UI.

How many doctors are in the registry?

1,421,853 as of April 2026. The count grows as State Medical Councils post new registrations. The oldest record on file is from 1925.

Do I need a proxy?

No. India NMC Doctor Registry Scraper runs without a proxy. The NMC API is public and has no rate limiting worth naming.

What's the deal with the allow_full_enumeration flag?

A safety fuse. Without a filter the scraper is pointed at 1.4M+ records, which is usually more than you intended. When no filter is provided and this flag is false, the run caps at 1,000 records.

Why is qualification_year a string instead of a number?

Older records contain free-form values like "" or non-numeric text. Keeping it as a string means you get the raw value intact. Cast it downstream if needed.

What happens when a detail fetch fails?

The record is still saved using the fields available from the listing response — name, registration number, SMC, year. You lose the richer detail fields but never drop a record silently.

Can I enumerate one SMC at a time?

Yes. Set smc_id to the target council's ID and leave other filters blank. A single SMC returns anywhere from a few thousand to several hundred thousand records depending on the state.

How fast is it?

Sequential pagination at ~500 records per listing page plus one POST per detail fetch, with a 150 ms courtesy delay. In practice, a 10-record test run completes in under 25 seconds on Apify's default 512 MB worker.


Need More Features?

Open an issue in the OrbLabs support tracker and describe what you need.

Why Use India NMC Doctor Registry Scraper?

  • Authoritative source — Reads the government registry, not a commercial aggregator's cached copy.
  • Structured output — 17 flat fields per record, no nested objects to flatten downstream.
  • Handles the quirks — TLS chain, DataTables envelope, and two-phase detail fetch are all invisible to you.
  • Safe by default — Unfiltered runs cap at 1,000 records unless you explicitly opt in to full enumeration.