ClearNPI replaces stitching together CMS's raw NPPES files, individual state medical board sites, and the HHS exclusion list by hand. I built the FastAPI backend, the data ingestion pipeline, and the Next.js marketing site with a live interactive API demo.
8.4M+
Providers indexed (NPPES)
100/day
Free tier, no card required
Weekly
NPPES + OIG data sync
Request & Data-Sync Architecture
clearnpi.io (Next.js)→
X-API-Key auth→
FastAPI (Railway)→
Redis cache / rate limit→
Postgres + PostGIS (Supabase)
CMS NPPES · OIG LEIE · state boards→
GitHub Actions (weekly/monthly sync)→
Playwright/Scrapy ingest→
Postgres upsert
Tech Stack
Backend & Data
FastAPIPythonSQLAlchemy 2.0 async
AlembicPostgreSQLPostGIS
pg_trgmRedisPlaywrightScrapy
Frontend
Next.js 15TypeScriptTailwind CSS
Framer MotionAuth.js
Platform, Billing & Ops
RailwayVercelDocker
StripeGitHub Actionspytest
Business Angle
Solves a compliance-mandated problem, not a nice-to-have
OIG exclusion screening is legally required before billing federal healthcare programs — this creates a recurring, non-discretionary reason for customers to keep calling the API rather than a one-time lookup.
Product-led growth funnel with a self-serve free tier
100 free requests/day with no credit card required lets developers integrate and validate the API before any sales conversation, converting into usage-based Basic/Pro/Enterprise tiers as call volume grows.
Low-COGS data moat from free public sources
Aggregates and normalizes CMS NPPES, OIG LEIE, and NUCC taxonomy data — each free to acquire — into one clean schema, so the product's value is the integration and uptime, not the raw data cost.
Scope sequencing to protect runway
50-state license scraping and PostGIS geo-radius search were deliberately deferred past initial launch (CA-only license coverage shipped first), with the buy-vs-build tradeoff for bulk license data documented for when call volume justifies the engineering spend.
Margin protection via caching and rate limits
Redis-backed caching and per-tier rate limiting (free/basic/pro/enterprise) keep infrastructure cost predictable against a per-call pricing model.