Florida MQA Provider License Scraper
parseforge/florida-mqa-scraper
AutomationLead generationOther
Scrapes Florida health care provider license records from the MQA public lookup by last name, first name, and city. Returns each practitioner as a flat row with license number, status, and profession. Optionally fetches detail pages for expiration and issue dates.
- Total users
- 2
- Monthly active
- 1
- Total runs
- 116
- Bookmarked
- 0
- Rating
- Not rated yet
- Last modified
- 12 days ago
Overview
Florida MQA Provider License Scraper
Scrape Florida health care provider licenses from the MQA public lookup by name or city, up to a million per run. Every record includes license number, status, profession, and optional expiration and issue dates. Export to CSV, JSON, Excel, or XML.
The Florida Medical Quality Assurance (MQA) services portal holds the license records for every health care practitioner in the state, but the public search returns one page of results at a time with no bulk export. This Actor reads the MQA lookup directly, runs through every matching provider, and returns a clean dataset you can filter and analyze offline. No API key, no browser extension, no manual copy and paste.
| Who uses it | What they scrape Florida MQA for |
|---|---|
| Medical recruiters | Build a list of active Florida practitioners by specialty and city for outreach. |
| Compliance officers | Verify that every provider in a practice or network holds a current, unencumbered Florida license. |
| Healthcare data analysts | Assemble a statewide census of licensed professionals for workforce planning and market research. |
| Legal and credentialing teams | Check license issue and expiration dates across a large roster before a deadline. |
What it does
This Actor collects Florida health care provider license records from the MQA public lookup by last name, first name, or city, and returns each practitioner as a flat row.
- ๐ Name search: supply a last name, or a last name and first name, to return every matching practitioner.
- ๐๏ธ City filter: narrow results to a single Florida city so you only see providers in one market.
- ๐ Detail pages: toggle Fetch detail pages on to pull license expiration dates, issue dates, and other fields from each provider's verification page.
- โฑ๏ธ Rate-limited crawling: the Actor respects the MQA site's response times so your run completes without blocks.
Results export to CSV, JSON, Excel, or XML, or straight from the API.
What you can do with Florida MQA data
๐ Credential a new hire class.
A hospital credentialing team runs the Actor with the last names of fifty incoming residents, toggles detail pages on, and confirms every license is active before orientation.
๐ Map providers in a metro area.
A health plan analyst scrapes all practitioners in Miami, filters by profession, and builds a network adequacy report for a state filing.
๐ Monitor license renewals.
A compliance officer runs the Actor weekly for a fixed list of last names, compares expiration dates to the prior run, and flags any provider whose license lapsed.
๐ Size a Florida market.
A healthcare consultant scrapes every licensed dentist in the state, groups by county, and estimates the addressable market for a new practice management product.
Why choose this scraper
| What you get | |
|---|---|
| No manual searching | One run replaces hours of clicking through the MQA public portal page by page. |
| Fixed schema | Every record lands in the same columns, ready for Excel, a database, or a BI tool. |
| Detail-page enrichment | Flip one switch to add license issue and expiration dates that the search results page hides. |
| Runs at scale | Collect up to a million practitioners in a single run, limited only by what the MQA search returns. |
How it compares
No other Store actor targets Florida MQA the same way, so the honest comparison is with the alternatives teams actually weigh.
| Florida MQA Provider License Scraper | Build it in-house | By hand | |
|---|---|---|---|
| Setup | Run it now, zero config | Days of engineering | None, but hours per pull |
| When Florida MQA changes | Maintained for you | You fix it | You re-learn the page |
| Proxies, retries, anti-bot | Built in | Your problem | Browser only |
| Output | Fixed JSON schema, CSV/Excel export | Whatever you build | Copy-paste |
| Cost | Pay per result | Engineering time | Analyst hours |
Configure the run
Drive the Actor from a last name, optional first name, and optional city, alone or together, and the detail-page toggle runs as each provider is read so only the fields you need reach your dataset. The Input tab lists every parameter.
A first run with the defaults:
{
"lastName": "Smith",
"maxItems": 10
}
A larger pull:
{
"lastName": "Smith",
"maxItems": 200
}
Pricing
Pay-per-result: $0.008 per result collected. You pay only for the results written to your dataset.
| Results collected | Approximate cost |
|---|---|
| 100 results | $0.80 |
| 1,000 results | $8.00 |
| 10,000 results | $80.00 |
New Apify accounts start with $5 in free credit.
Free users
Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.
Run it
- Create a free Apify account with $5 in credit.
- Open the Florida MQA Provider License Scraper.
- Set your inputs and any filters, then click Start.
- Export the results as CSV, Excel, JSON, or XML from the Dataset tab.
Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.
Use with AI agents (MCP)
Give an AI agent live access to Florida MQA through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:
claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/florida-mqa-scraper"
Then prompt it in plain language to run the scraper and read back the results.
Troubleshooting
Why am I getting no results?
The MQA search is exact on last name. Try a shorter or more common last name, remove the first name and city filters, and run again. If the name is uncommon, check the spelling against a known license record.
Why are some fields empty in my output?
Fields like license issue date and expiration date only populate when Fetch detail pages is enabled. If it is on and fields are still empty, the MQA record itself may not have those dates filled in.
The run stopped before collecting all practitioners.
Check the Maximum practitioners setting. If it is lower than the number of matches, the Actor stops when it hits that cap. Raise the limit and rerun.
Why does the run take so long with detail pages on?
Each detail page is a separate HTTP request with a polite delay. For large searches, consider running without detail pages first, then re-running only the subset you need with detail pages enabled.
I searched a city but got practitioners from other places.
The MQA search returns practitioners whose mailing address or practice location matches the city. Some providers list a city that differs from where they practice. Filter the output by the address fields after the run if you need stricter geography.
FAQ
| Question | Answer |
|---|---|
| What is the Florida MQA? | The Florida Medical Quality Assurance (MQA) division of the Department of Health maintains the official license records for health care practitioners in the state. Its public lookup is the authoritative source for license status, number, and expiration. |
| Which professions does this Actor cover? | It returns any practitioner the MQA public search returns: physicians, nurses, dentists, pharmacists, therapists, and dozens of other licensed professions. The profession name appears in the output so you can filter after the run. |
| Do I need a Florida IP address to run this? | No. The Actor runs on Apify's infrastructure and accesses the public MQA site like any browser. No Florida residency or VPN is required. |
| Can I search by license number instead of name? | The MQA public lookup is driven by name and city. If you have a list of license numbers, you can cross-reference them against the output after the run, but the Actor itself searches by last name, first name, and city. |
| How long does a run take? | It depends on how many practitioners match your search and whether you enable detail pages. A small city search with detail pages off finishes in seconds; a statewide last-name search with detail pages on can take longer because the Actor visits each verification page politely. |
| What does the Fetch detail pages toggle do? | When enabled, the Actor clicks into each practitioner's license verification page and extracts additional fields such as license issue date and expiration date. When disabled, it collects only the fields visible on the search results page, which is faster. |
| Is this Actor affiliated with the Florida Department of Health? | No. This is an independent tool that reads publicly available data from the MQA website. It is not endorsed by or connected to the Florida Department of Health. |
| Can I schedule this Actor to run automatically? | Yes. Use Apify's scheduler to run it daily, weekly, or on any cron schedule. A common pattern is a weekly run for a fixed last-name list to catch license expirations early. |
| What output formats are supported? | The dataset exports to CSV, JSON, Excel, XML, and several other formats from the Apify platform. You can also push results directly to a webhook or cloud storage. |
| Does the Actor handle CAPTCHAs or blocks? | The MQA public lookup does not typically present CAPTCHAs. The Actor uses reasonable delays between requests to avoid triggering any rate limits. |
Related actors
Browse the full ParseForge collection for more scrapers.
๐ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.
โ ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Florida Department of Health. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.
Input
| Field | Type | What it does | Default |
|---|---|---|---|
| lastName | string | Provider last name (or partial). | Smith |
| firstName | string | Provider first name (optional). | not set |
| city | string | FL city (optional). | not set |
| fetchDetails | boolean | Visit each license verification page for additional fields (license expiration/issue dates). | true |
| maxItems | integer | Maximum number of practitioners to collect per run. | 10 |
Pricing
from $6.00 per 1,000 results
| Charged for | What it is | Price each |
|---|---|---|
| Health care provider record | Charged once per Florida health care provider record returned (search-result level: license number, name, profession, status, dates, address). | $0.006 to $0.008 |
| Detail page enrichment | Charged additionally when fetchDetails=true to enrich the record with qualifications, discipline-on-file, public-complaint, and full address. | $0.00375 to $0.005 |
Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.
API
One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.
curl -X POST "https://api.apify.com/v2/acts/parseforge~florida-mqa-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"helloWorld": 123
}' Examples
Input that runs as-is.
{
"helloWorld": 123
} Reviews
No reviews yet. Be the first.
Issues
We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.
Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.
Related scrapers
Run Florida MQA Provider License Scraper on Apify All scrapers
