Vitals.com Doctor [$1.99/1k] Scraper · NPI, Specialty & Reviews avatar

Vitals.com Doctor [$1.99/1k] Scraper · NPI, Specialty & Reviews

Pricing

from $1.99 / 1,000 results

Go to Apify Store
Vitals.com Doctor [$1.99/1k] Scraper · NPI, Specialty & Reviews

Vitals.com Doctor [$1.99/1k] Scraper · NPI, Specialty & Reviews

[$1.99/1k] Scrape Vitals.com US doctor & dentist profiles — by specialty/location browse or individual profile URLs. Returns name, NPI, specialty, education, licenses, practice locations, phone, ratings & review counts, languages, insurance and bio in clean JSON/CSV. Pure HTTP, no browser

Pricing

from $1.99 / 1,000 results

Rating

5.0

(1)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

4 days ago

Last modified

Share

Vitals.com Doctor Scraper — NPI, Specialty, Reviews & More

Scrape Vitals.com — US doctor & dentist profiles — browse by specialty/location or pass individual profile URLs. Every provider comes back in one clean schema with name, NPI, specialty, education, medical licenses, practice locations, phone, ratings + review counts, languages, insurance and bio. Pure HTTP, no browser.

How it works

Why use this scraper

  • Provider-grade data — name, degree, National Provider Identifier (NPI), primary + all specialties, years of experience, gender, languages.
  • Education & licensing — medical school / residency / fellowship history, and state licenses (type, state, expiry, status).
  • Practice locations — practice name, address, city/state/zip, phone, lat/long for every office.
  • Ratings & reviews — Vitals rating score, number of ratings, review count, plus telehealth, insurance, Medicare/Medicaid flags.
  • Pure HTTP, no browser — reads Vitals' embedded __INITIAL_STATE__ directly. Fast and cheap.

Overview

Vitals embeds the full provider record in each profile page as a JSON island. The actor classifies each URL (browse / provider), walks specialty/location browse pages (~60 per page, ?page=N), fans out to each provider, and normalises everything into a consistent row. Ideal for healthcare data teams, recruiters, medical-device/pharma sales, and provider-directory builders.

Supported inputs

Input URL shapeExample
Specialty browsevitals.com/cardiologists
Specialty + locationvitals.com/cardiologists/ny/new-york
Individual providervitals.com/doctors/{slug} (or /dentists/{slug})

Tip: browse a specialty + city on vitals.com, then copy the URL from your browser's address bar — it drops straight into startUrls.

Use cases

  • Healthcare data teams — build / enrich provider directories keyed on NPI.
  • Medical-device & pharma sales — target specialists by specialty, location, affiliation.
  • Recruiters — source physicians by specialty, experience, location, languages.
  • Market research — analyse provider density, ratings, and acceptance of new patients by region.

How it works

  1. You provide one or more Vitals URLs (browse or provider).
  2. The actor classifies each URL and walks browse pages with ?page=N pagination.
  3. Each provider's __INITIAL_STATE__ is parsed for the full structured record.
  4. Rows are normalised to one schema and streamed to your dataset — JSON or CSV.

Input configuration

FieldTypeDefaultDescription
startUrlsarrayvitals.com URLs (browse or provider)
flattenbooleantrueFlatten nested fields for CSV-friendly output
maxItemsinteger10000Hard cap on rows collected
maxConcurrencyinteger6Parallel profile fetches

Output samples

Flattened (flatten: true, default):

{
"portal": "vitals",
"npi": "1568632859",
"fullName": "Dmitriy N. Feldman",
"degree": "MD",
"gender": "M",
"yearsOfExperience": 24,
"primarySpecialty": "Cardiovascular Disease",
"specialties_json": "[{\"name\":\"Cardiovascular Disease\",\"title\":\"Cardiologist\"}]",
"city": "New York",
"state": "NY",
"phone": "(212) 555-0143",
"ratingScore": 4.9,
"reviewCount": 27,
"education_json": "[{\"type\":\"Fellowship\",\"institution\":\"…\",\"year\":\"2016\"}]",
"licenses_json": "[{\"type\":\"Medical Doctor\",\"state\":\"New York\",\"status\":\"Active\"}]",
"languages_json": "[\"English\"]",
"isTelehealth": true,
"acceptsNewPatients": true
}

Key output fields

FieldDescription
npi, providerId, entityId, vitalsGuidIdentity (incl. National Provider Identifier)
fullName, firstName, lastName, suffix, degreeName
gender, yearsOfExperienceDemographics
primarySpecialty, specialties[], expertise[]Specialties
education[]School / residency / fellowship (type, institution, year)
licenses[]State licenses (type, state, expiry, status)
practiceLocations[]Practice name, address, city/state/zip, phone, lat/long
phonePrimary phone
city, state, postcode, latitude, longitudeLocation
ratingScore, numberOfRatings, reviewCount, vitalsScoreRatings
languages[], acceptsNewPatients, isTelehealthAccess
hospitals[], insurances[], isMedicare, isMedicaidAffiliations / coverage
bio, photoUrl, videoUrlProfile media

FAQ

Does it include the NPI? Yes — the National Provider Identifier is on every provider row, plus state license details.

Can I scrape dentists too? Yes — /dentists/... browse and /dentists/{slug} profiles work the same as doctors.

How many providers per browse page? Around 60, and the actor paginates with ?page=N until maxItems.

Support

Found a bug or need a field added? Open an issue on the actor's Apify Console page.

Explore more scrapers

Full portfolio: apify.com/memo23

⚠️ Disclaimer

This scraper accesses only publicly available data. Use the extracted data in compliance with Vitals.com's Terms of Use, US privacy laws (including state regulations), and all applicable laws. You are responsible for how you use scraped data — particularly personal information (provider names, contact details). This actor is not affiliated with, endorsed by, or connected to Vitals, WebMD, or Internet Brands.

SEO Keywords

vitals scraper, vitals.com scraper, doctor directory scraper, physician data scraper, NPI scraper, US healthcare provider data, doctor reviews scraper, medical provider scraper, healthcare lead generation, physician directory api, doctor contact data, dentist scraper, provider npi lookup, healthcare data extraction, medical sales leads