Get a key
Developer docs · free tier · private beta

One /v1 contract. API, SDK, and MCP.

The developer front door for the Verzi Health API. Every answer comes with a receipt: the verbatim CMS source, its version, and the date of service. Live for Medicare DME. Date-of-service LCD and policy article text, verbatim from CMS. Versions back to October 2015.

curl · no key needed for the archive
# Which version of LCD L33718 was in force on a date of service? $ curl "https://api.verzi.health/v1/archive/docs/lcd:33718/as-of?date=2024-01-15" # Provider dossier by NPI (free-tier key) $ curl -H "X-API-Key: $KEY" "https://api.verzi.health/v1/provider/1234567893"

Why developers build on Verzi

The API your team was about to build internally, plus the one thing nobody builds twice: a hash-pinned history of what the rules said on a date.

Signed, with a receipt

A signed answer covers one claim line as of its date of service: provider standing, coding edits, and the fee cell, each with a replayable receipt, plus the documentation rule where approved (E0601 and K0606 today). See how a signed answer works.

fact + source + version + sha256

The source archive

Archived versions of LCDs, articles, and coverage documents back to October 2015, where CMS kept them.

vs. "the rule changed, we lost the old one"

Provenance you can audit

Every claim cites its source. /sources lists every dataset with license and refresh history. Every signed answer and every archive answer carries the source document, version, and sha256.

vs. methodology black boxes

Not PHI, no BAA required

All data is provider-, facility-, or population-level, from public primary sources. Full disclosure statement.

vs. HIPAA evaluation overhead

Integrate in any language

Standard REST + an X-API-Key header. Or use the TypeScript SDK, or point an agent at the MCP server.

Pythonrequests
import requests KEY = "vh_live_xxx" resp = requests.get( "https://api.verzi.health/v1/provider/1234567893", headers={"X-API-Key": KEY}, ) provider = resp.json()
TypeScriptdesign partners
// SDK available to design partners on request: // verzi.health/design-partners. Once you have access: import { createVerziClient } from "@verzihealth/sdk"; const verzi = createVerziClient({ apiKey: KEY }); const { data } = await verzi.GET("/rules/warrant", { params: { query: { hcpcs: "E0601", as_of: "2021-06-15", npi: "1234567890", state: "UT" } }, });
cURLshell
# OIG exclusion screening curl -H "X-API-Key: $KEY" \ "https://api.verzi.health/v1/exclusions/check/1234567890" # Version history of a policy document (public) curl "https://api.verzi.health/v1/archive/docs/lcd:33718/versions"

Free current-state. Paid signed answer.

During the private beta, access to a signed answer is granted per account.

Free

Current-state and catalog

Use your work email: we email a code to confirm it, then show your key. Free email providers are not supported. No credit card.

  • Archive version listings and as-of resolution
  • The source catalog, licenses, and refresh history
  • API key with X-API-Key header authentication

Trust by transparency

Most healthcare data platforms keep their methodology proprietary. We publish ours.

Live status

/platform/stats

Row counts, source counts, last pipeline run, last refresh status.

View live
Catalog

/sources

Every dataset we ingest, with source agency, license, refresh cadence, and last-loaded timestamp.

View catalog
Refresh history

/sources/{id}/history

Per-source audit log. Every load attempt, success or failure, timing, row counts, error message.

View example
Source archive

archive.verzi.health

Every archived version of a policy document, with effective dates, hashes, and the version in force on a date.

Open the archive
OpenAPI

/docs

Interactive reference with request builders for every endpoint.

Explore

Ready to start building?

Free tier, no credit card, and the first call is a public one.

Get your API key