📰 IT Security NachrichtenSony FE 8-14 mm F3.5: Fisheye mit Zirkular-Diagonal-Zoom im Test(10.09.2026 um 16:26 Uhr)
📰 IT Security NachrichtenKI-Modell für den Mond: Open-Source-Projekt soll Wasser-Eis finden(10.09.2026 um 16:46 Uhr)
📰 IT Security NachrichtenKirby and the World Beyond: Neues 3D-Abenteuer startet Anfang 2027(10.09.2026 um 17:07 Uhr)
📰 IT Security NachrichtenSchluss mit dem Gestank: Diese Saugroboter bringen eine echte Lösung(10.09.2026 um 17:50 Uhr)
📰 IT Security NachrichteniPhone Duo & MacBook Neo: Apple kopiert Microsoft(10.09.2026 um 18:10 Uhr)
📰 IT Security NachrichtenEuropäische Starlink-Alternative soll um hunderte Satelliten wachsen(10.09.2026 um 18:30 Uhr)
📰 IT Security NachrichtenApple-Schock: iPhone 17 Pro eingestellt, andere Preise stark erhöht(10.09.2026 um 19:07 Uhr)
📰 IT Security NachrichtenVibe Key & Pixbar: Ulanzi zeigt die Zukunft eures Schreibtischs(10.09.2026 um 19:30 Uhr)
📰 IT Security NachrichtenLuna: Diese 11 neuen Spiele verschenkt Amazon im September 2026(10.09.2026 um 20:30 Uhr)
📰 IT Security NachrichtenSony FE 8-14 mm F3.5: Fisheye mit Zirkular-Diagonal-Zoom im Test(10.09.2026 um 16:26 Uhr)
📰 IT Security NachrichtenKI-Modell für den Mond: Open-Source-Projekt soll Wasser-Eis finden(10.09.2026 um 16:46 Uhr)
📰 IT Security NachrichtenKirby and the World Beyond: Neues 3D-Abenteuer startet Anfang 2027(10.09.2026 um 17:07 Uhr)
📰 IT Security NachrichtenSchluss mit dem Gestank: Diese Saugroboter bringen eine echte Lösung(10.09.2026 um 17:50 Uhr)
📰 IT Security NachrichteniPhone Duo & MacBook Neo: Apple kopiert Microsoft(10.09.2026 um 18:10 Uhr)
📰 IT Security NachrichtenEuropäische Starlink-Alternative soll um hunderte Satelliten wachsen(10.09.2026 um 18:30 Uhr)
📰 IT Security NachrichtenApple-Schock: iPhone 17 Pro eingestellt, andere Preise stark erhöht(10.09.2026 um 19:07 Uhr)
📰 IT Security NachrichtenVibe Key & Pixbar: Ulanzi zeigt die Zukunft eures Schreibtischs(10.09.2026 um 19:30 Uhr)
📰 IT Security NachrichtenLuna: Diese 11 neuen Spiele verschenkt Amazon im September 2026(10.09.2026 um 20:30 Uhr)

🔧 Programmierung 🕛 vor 2 Monaten 4 Min Lesezeit
0

Build a Healthcare Lead List From the Public NPI Registry (NPPES API)

↗ Quelle (dev.to)
🗣️ Stimme:
📑 Inhaltsübersicht

If you run a marketing agency that serves dentists, dermatologists, med spas, or any medical vertical, you've probably paid way too much for a lead list — and half the rows were stale. Here's the thing almost nobody outside the data world knows: there is a free, official, public registry of every healthcare provider in the United States, and it has a clean API.



It's called NPPES — the National Plan and Provider Enumeration System — and it backs the NPI Registry that CMS (Medicare/Medicaid) maintains. Every provider who bills insurance has an NPI (National Provider Identifier), and the registry is public record.






The free NPPES API



No key, no signup. You hit one endpoint:




CODE
https://npiregistry.cms.hhs.gov/api/?version=2.1






It supports filtering by taxonomy (specialty), city, state, and more. Here's a Node example pulling every dentist in Austin, TX:




CODE
import got from 'got';

async function searchProviders({ taxonomy, city, state, limit = 200 }) {
const results = [];
// API caps each call at 200 results; page with skip
for (let skip = 0; skip < limit; skip += 200) {
const { results: page } = await got('https://npiregistry.cms.hhs.gov/api/', {
searchParams: {
version: '2.1',
taxonomy_description: taxonomy, // e.g. "Dentist"
city,
state,
limit: 200,
skip,
},
}).json();

if (!page || page.length === 0) break;

for (const p of page) {
const addr = (p.addresses || []).find(a => a.address_purpose === 'LOCATION') || {};
results.push({
npi: p.number,
providerName: p.basic?.organization_name ||
`${p.basic?.first_name ?? ''} ${p.basic?.last_name ?? ''}`.trim(),
specialty: (p.taxonomies?.find(t => t.primary) || {}).desc,
phone: addr.telephone_number,
fullAddress: `${addr.address_1 ?? ''}, ${addr.city ?? ''}, ${addr.state ?? ''} ${addr.postal_code ?? ''}`,
});
}
}
return results;
}

const leads = await searchProviders({ taxonomy: 'Dentist', city: 'Austin', state: 'TX' });
console.log(leads.length, 'providers');






In a few seconds you have name, NPI, specialty, phone, and full address for every dentist in a city — straight from the source of truth, updated as providers re-enumerate with CMS.






The missing piece: email enrichment



The registry gives you a phone and address but no email — that's the gap that makes the raw API only half useful for cold outreach. The fix is a second pass: for each provider, find their practice website (Google/Bing the name + city, or use the listed org URL), then crawl the site's contact and about pages to extract emails, additional phone numbers, social links, and even the tech stack.



That enrichment loop is where the value is. A practice's info@ or front-desk email plus a verified website turns a registry row into an actual lead.






What a finished lead looks like



After the registry pull + website enrichment, each row carries:





  • npi, providerName, providerType (individual vs organization)


  • specialty, credential, licenseNumber, licenseState


  • fullAddress, phone, fax


  • website, email / emails (all discovered), websitePhones


  • socialLinks (Facebook, Instagram), techStack, contactPageUrl



The techStack field is a sneaky-good qualifier for agencies: a dentist still on a 2014 template website is a far warmer lead for a web-redesign or paid-ads pitch than one already running a modern stack.






A note on doing this responsibly



The NPI registry is public business-contact data — practice addresses and front-desk lines, not patient data, and nothing HIPAA-covered. Still: respect CAN-SPAM, honor unsubscribes, and target the practice, not individuals' personal info. This is B2B outreach to businesses, full stop.



If you'd rather not build and maintain the registry pagination + website-enrichment crawler yourself, I packaged the whole pipeline into a Healthcare Provider Leads actor — you give it a specialty, city, and state, toggle enrichEmails, optionally set onlyWithEmail, and it returns the enriched rows above, one per provider. But the NPPES API is free and public, so even the DIY version above will get an agency a clean, current vertical list today.

Vollständiger Original-Bericht
Ausführliche Details, Code-Beispiele & Hersteller-Stellungnahme auf dev.to.
↗ Original-Artikel auf dev.to lesen
Wie bewertest du diesen Beitrag?
1 Klick Feedback
Teilen mit Netzwerk & Team:

Community-Analysen & Experten-Meinungen 0

Verfasse deine eigene Analyse, teile Workarounds oder diskutiere diesen Vorfall im Blog.
Noch keine Community-Analyse verfasst. Markiere einen Textabschnitt oder klicke oben auf Eigene Analyse verfassen“!
Community Pulse: Relevanz-Einschätzung
1 Klick Experten-Votum
🔴 Akute Relevanz 0%
🟡 In Evaluierung 0%
🟢 Keine Auswirkung 0%
Spannende Innovation 0%
Verwandte Story-Cluster & Quellen (Vektor-KI)
Port 8095 Engine
1 Quelle
Sony FE 8-14 mm F3.5: Fisheye mit Zirkular-Diagonal-Zoom im Test
1 Quelle
KI-Modell für den Mond: Open-Source-Projekt soll Wasser-Eis finden
1 Quelle
Kirby and the World Beyond: Neues 3D-Abenteuer startet Anfang 2027
Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten Build a Healthcare Lead List From the Public NPI Registry (NPPES API)

Thematisch verwandte Begriffe: Build, Healthcare, Lead, List · 6 Treffer

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...