Dubai DHA License Verification Scraper: Bulk Search and Monitor avatar

Dubai DHA License Verification Scraper: Bulk Search and Monitor

Pricing

from $3.00 / 1,000 professional records

Go to Apify Store
Dubai DHA License Verification Scraper: Bulk Search and Monitor

Dubai DHA License Verification Scraper: Bulk Search and Monitor

Verify Dubai Health Authority (DHA) healthcare professional licenses in seconds. Search the full 103,935+ professional registry in bulk by category, specialty, facility, nationality, area, or language, and monitor a roster on schedule for real status changes only. No login. $4 per 1,000 records.

Pricing

from $3.00 / 1,000 professional records

Rating

0.0

(0)

Developer

GetAScraper

GetAScraper

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

9 days ago

Last modified

Share

🩺 Dubai DHA License Verification Scraper: Bulk Search and Monitor

Know a DHA license status the moment it changes, not the moment someone asks
Verify Dubai Health Authority (DHA) healthcare professional licenses, search the full public registry of 103,000+ professionals in bulk, and monitor a roster on a schedule so you only see what actually changed. No login required.
⚑ Instant, not days
A manual Primary Source Verification check can take days and cost per lookup. This Actor checks live in seconds.
πŸ“‹ A whole roster, one run
Search the registry in bulk by category, specialty, facility, nationality, or area, not one professional at a time.
πŸ”” Only real changes, on schedule
Roster monitor mode reports new or changed license status since the last check, not a full re-dump every time.
πŸ”“ No login required
Reads DHA's own public verification tool, the same anonymous lookup anyone can use in a browser.

Point this Actor at a DHA Unique ID, a license number, or a set of registry filters, and pull structured license data, from a single check to a scheduled watch over a whole roster.

πŸ” What does this Actor do?

The Dubai Health Authority (DHA) keeps the public register of every healthcare professional licensed to practice in Dubai, over 103,000 doctors, nurses, dentists, pharmacists, and allied health workers. A license can lapse, get suspended, or simply expire without renewal after someone is already hired, placed, or insured.

This Actor checks that registry for you, in three ways. Look up one professional by their DHA Unique ID or license number. Search the whole registry in bulk with filters like category, specialty, facility, nationality, or area. Or turn on Roster monitor mode and let it re-check a saved roster on a schedule, only reporting professionals who are new or whose license status genuinely changed since the last check.

πŸ’‘ Who uses this?

  • I run a healthcare staffing agency placing nurses and doctors in Dubai. I placed someone months ago. I need to know the day their license status changes, not the day a client asks me about it.
  • I handle credentialing for a hospital or clinic. Re-verifying a roster of dozens of professionals one manual check at a time doesn't scale. I need the whole list checked in one pass.
  • I work in insurance or compliance. A cancelled or expired license on staff is a liability I need to catch immediately, not discover during an audit.
  • I run a background-check or verification service. My clients expect fast, structured license data, not a multi-day manual verification turnaround for every single check.

πŸš€ How to use

STEP 1
Pick a mode
Single lookup, a bulk directory search, or Roster monitor for scheduled re-checks.
STEP 2
Get the full license record
Status, facility, license number, issue and expiry dates for every license a professional has held.
STEP 3
Schedule it and watch for change
Name a monitor state and run it on a schedule. Later runs report only what's new or changed.

πŸ“₯ Input

FieldTypeRequiredDescription
modeenumNolookup for one professional, directorySearch for a bulk registry search, or watchlist for scheduled roster re-verification that only reports genuine changes. Default: lookup.
querystringNoUsed in Single lookup mode. A DHA Unique ID (for example 73567070) or a full license number (for example 73567070-002).
searchStringstringNoUsed in Directory search mode. Free-text match against professional names.
categoryarray (enum)NoUsed in Directory search mode. One or more of Physician, Dentist, Nurse and Midwife, Allied Health, or TCIM practitioners.
licenseTypearray (enum)NoUsed in Directory search mode. One or more of Full-time License, Part-time License, Registered Only, or Trainee License.
genderarray (enum)NoUsed in Directory search mode. Female, Male, or both.
specialityarray of stringsNoUsed in Directory search mode. One specialty per line, matched against the registry's own values, for example Pharmacist or Registered Nurse.
facilityNamearray of stringsNoUsed in Directory search mode. One facility name per line.
nationalityarray of stringsNoUsed in Directory search mode. One nationality per line.
areaarray of stringsNoUsed in Directory search mode. One Dubai area per line.
languagearray (enum)NoUsed in Directory search mode. One or more of 79 languages a professional speaks, taken live from the registry's own filter list. Filtering to Hindi alone, for example, narrows the full 103,935-professional registry to 4,362.
dhaUniqueIdsarray of stringsNoUsed in Roster monitor mode. One DHA Unique ID or license number per line, the roster to check.
maxItemsintegerNoUsed in Directory search mode. Maximum registry records returned per run. Default: 20.
fetchDetailsbooleanNoUsed in Directory search mode. Also fetch each result's full license record (license number, status, dates), not just the directory summary. Default: false.
maxRosterSizeintegerNoUsed in Roster monitor mode. Maximum roster entries processed per run. Default: 20.
stateNamestringNoUsed only in Roster monitor mode. Names the saved history this run compares against. Use a different name per distinct roster so separate schedules never mix up their history. Default: default.
onlyNewOrChangedbooleanNoUsed only in Roster monitor mode. When on, only new or genuinely changed professionals are output. When off, every roster entry is output every run with a change label attached. Default: true.
proxyConfigurationproxyNoKeep the datacenter default; it reaches the DHA registry without issue.

πŸ“Š Data table

FieldTypeDescription
dhaUniqueIdstringThe professional's DHA Unique ID, for example 73567070.
namestring | absentProfessional's registered name.
nationalitystring | absentAs published on the registry.
categoryOrSpecialitystring | absentDirectory-level category or specialty label, present on Directory search results.
facilityNamestring | absentDirectory-level current facility, present on Directory search results.
licenseCountnumber | absentNumber of licenses on file, present on Directory search results.
detailFetchedbooleanWhether the full license record below was fetched for this row.
licensesarray | absentEvery license/experience entry on file: profession, status, facility, license number, issue date, expiry date, duration, and whether it's the current position.
currentStatusstring | absentStatus of the professional's current or most recent license, for example Fully Active or Cancelled.
matchedQuerystring | absentThe lookup or roster entry that produced this row.
sourceUrlstringThe DHA registry page this data comes from.
scrapedAtstringWhen this row was checked.
changeTypestring | absentOnly present in Roster monitor mode: NEW, UPDATED, or UNCHANGED.

You can download the dataset in JSON, HTML, CSV, or Excel from the Output tab of any run.

πŸ“€ Sample output

{
"dhaUniqueId": "73567070",
"name": "Aabida Bashir",
"nationality": "India",
"detailFetched": true,
"licenses": [
{
"isCurrent": true,
"profession": "Pharmacist",
"status": "Fully Active",
"startDate": "11 June 2026",
"endDate": "11 June 2027",
"durationText": "3 Months"
},
{
"isCurrent": false,
"profession": "Pharmacist",
"status": "Cancelled",
"facilityName": "Life Vision Pharmacy L L C",
"licenseNumber": "73567070-002",
"startDate": "19 November 2024",
"endDate": "11 June 2026",
"durationText": "1 years",
"location": "Dubai, UAE"
}
],
"currentStatus": "Fully Active",
"matchedQuery": "73567070",
"sourceUrl": "https://services.dha.gov.ae/sheryan/wps/portal/home/medical-directory/professional-details?dhaUniqueId=73567070",
"scrapedAt": "2026-09-30T13:27:46.206Z"
}

πŸ’° Pricing

Pricing is pay per result: you're charged for the professional records actually written to your dataset, not for the run itself. An empty run that finds no matches or no changes costs nothing. There are no monthly subscriptions or minimum commitments.

Free plan runs are limited in items per run, runs per day, and a short wait between runs. These limits do not apply to paid plans.

⭐ Enjoying DHA License Verification Scraper?

⭐ ⭐ ⭐ ⭐ ⭐
One run just told you exactly what changed on your roster since last time.
A 5-star rating takes 10 seconds and helps other agencies and credentialing teams find this Actor. Your feedback also tells us what to build next.
β˜…Β Β Rate this Actor on Apify

✨ Tips

  • Look up by DHA Unique ID or license number when you have it. Either works: a license number is automatically reduced to its DHA Unique ID before the lookup.
  • Give every monitored roster its own state name. Use a different stateName per client or roster so scheduled runs never mix up their change history.
  • Leave fetchDetails off for a fast directory browse. Turn it on only when you actually need license numbers, status, and dates for every result, since it adds time per record.
  • Turn onlyNewOrChanged off for a full audit snapshot. Every roster entry is output on every run with its change label attached, useful for a point-in-time compliance record.
  • Schedule Roster monitor mode on the Apify Scheduler. Each run after the first reports only what actually moved.

❓ FAQ

Does this Actor need a login or a DHA account?

No. It reads DHA's own public verification and registry pages, the same anonymous lookup anyone can use in a browser without signing in.

How does Roster monitor mode know what changed?

Give it a stateName and run it on a schedule with the same roster. Each run compares the current license status, facility, license number, and dates against what was saved last time, and labels every professional NEW, UPDATED, or UNCHANGED.

What counts as a "change"?

A genuine difference in name, nationality, current status, or license history. Re-checking the same, unchanged record never counts as a change.

How fresh is the data?

Every run reads the DHA registry live at the moment it runs. Results reflect what the public registry shows right then.

This Actor reads publicly available verification and registry pages, the same pages DHA makes available to anyone without a login. It is an independent tool, not affiliated with or endorsed by the Dubai Health Authority. You are responsible for complying with DHA's terms of use and applicable law. For questions or custom fields, contact the author at devanshtiwari365@gmail.com.

πŸ”— Other actors