Skip to content
ownlisted
ResearchCoverageMethodologyAboutPress
DATA · MAY 3, 2026
  • Research
  • Coverage
  • About
Schema · Public reference

The canonical provider record, every field, every source.

Every public field on an OwnListed provider profile carries the same four-piece source-provenance contract: source name, last-checked ISO date, confidence tier, and display permission. This page documents the canonical record shape, the provenance shape, the change-record shape, and the source- registry shape — with three illustrative example records.

Free to cite with attribution. License inquiries: press@ownlisted.com. Pair with the dataset catalog at /data-platform.

Canonical provider record

Field · type · source family · refresh cadence · example.

Each field is anchored on a specific source family. Some fields are nullable because the source family does not always cover the row — e.g. only Florida HVAC providers carry a FL DBPR license number; only NPI-holding providers carry an NPPES taxonomy.

fieldtypesource familynullablerefreshexample
iduuidOwnListed graphnostable01h…
vertical_slugstringOwnListed graphnostabledermatologists
namestringSource family per matchnoper source cadenceSmith Family Medicine
address_linestringCMS NPPES / FL DBPRyesper source cadence123 Main St, Suite 4
citystringCMS NPPES / FL DBPRyesper source cadenceTampa
statestring (2-letter)CMS NPPES / FL DBPRyesper source cadenceFL
zipstring (5- or 9-digit)CMS NPPES / FL DBPRyesper source cadence33602
phonestring (E.164)Per match — typically Google Business listing where presentyesmonthly+1 813 555 0100
websitestring (URL)Per matchyesmonthlyhttps://example-clinic.com
npistring (10-digit)CMS NPPESyesmonthly1234567890
primary_taxonomystring (HIPAA taxonomy code)CMS NPPESyesmonthly207R00000X
pecos_enrollmentenum: "ENROLLED" | "NOT_ENROLLED" | "UNKNOWN"CMS PECOSyesmonthlyENROLLED
state_license_numberstringFL DBPR / state boardyesweekly (FL)CGC1500001
state_license_statusenum: "ACTIVE" | "NULL" | "VOLUNTARY_INACTIVE" | "EXPIRED"FL DBPR / state boardyesweekly (FL)ACTIVE
state_license_expirationISO dateFL DBPR / state boardyesweekly (FL)2026-08-31
cms_certification_numberstring (CCN)CMS Care Compareyesquarterly100000
google_ratingfloat (0–5)Google Business listing where indexedyesmonthly4.7
google_review_countintGoogle Business listing where indexedyesmonthly128
Provenance shape

One per (provider, source, field) — the §95 contract.

The same four pieces of metadata stamped on every public field render visibly via the ProvenanceCard on every profile, the canonical Source:CMS NPPES·Checked May 2026 chip on every cited field, and the per-source detail pages at /sources/[slug].

// Per-field provenance row — one row per (provider_id, source, field).
// This is the wire shape the §95 source-citation contract emits.
{
  "provider_id": "01h7n…",
  "source": "CMS NPPES",      // matches the SOURCES registry slug
  "field": "primary_taxonomy",
  "value": "207N00000X",
  "last_checked": "2026-04-30",  // ISO date the pipeline last reconciled
  "confidence": "high",          // §95 tier: high | medium | low
  "display_permission": "public · attribution required",
  "evidence_url": null            // optional: source-side detail page
}
Historical change record

Versioned at the field level, not the row level.

We version the value, not the surrounding metadata. A renamed clinic gets a new name change record; a license expiration update gets a new state_license_expirationchange record. The change feed is what lets a downstream consumer audit when a provider field flipped — useful for agent freshness checks (§161) + B2B enrichment workflows (§153).

// Historical change record — emitted on every source-driven update.
// We version the value, not the surrounding metadata. A renamed clinic
// gets a new "name" change record; a license expiration update gets a
// new "state_license_expiration" change record. The change_id is
// monotonic per provider_id + field.
{
  "change_id": "ch_01h7n…",
  "provider_id": "01h7n…",
  "field": "state_license_status",
  "previous_value": "ACTIVE",
  "new_value": "EXPIRED",
  "source": "FL DBPR CILB",
  "observed_at": "2026-05-04T08:12:00Z",
  "snapshot_id": "fl-dbpr-2026-05-04",
  "confidence": "high"
}
Source registry shape

One row per registered public-record source.

Every cited source sits in the registry with refresh cadence, fields used, limitations, and what-it-is-not. The public detail page lives at /sources; the index of all entries lives at /sources.

// Source registry row — one per registered public-record source.
// Mirrors src/lib/brand/sources-registry.ts. Public detail page lives
// at /sources/[slug].
{
  "slug": "fl-dbpr",
  "displayName": "Florida DBPR CILB master file",
  "shortName": "FL DBPR",
  "authority": "Florida Department of Business and Professional Regulation",
  "tier": "tier2-profile-enrichment",   // tier1-research-only | tier2-profile-enrichment | pending-manual | first-party-research
  "status": "live",                      // live | research-only | pending-records-request | deferred
  "family": "trades",
  "officialUrl": "https://www.myfloridalicense.com/...",
  "tosNotes": "Florida Sunshine Law: public record …",
  "attributionRequirement": "Cite as 'FL DBPR CILB master file, [snapshot date]'.",
  "refreshCadence": "weekly",
  "fieldsUsed": ["state_license_number", "state_license_status", "state_license_expiration", "license_classification", "issue_date"],
  "limitations": "License status reflects DBPR's last public publication; …",
  "whatItIsNot": "DBPR data is not a quality stamp. …",
  "displayPolicy": {
    "publicFields": ["state_license_number", "state_license_status", "state_license_expiration"],
    "writeLockedFields": ["complaint_history"]
  }
}
Example records (illustrative)

Three example shapes — none are real customers.

Each example carries an explicit "example": trueattribute so a downstream reader can never confuse an illustrative shape with a real provider record. The cross-vertical example also carries "synthesized": true.

Example 1 — healthcare provider (NPPES + PECOS)

// Example record — dermatology provider, NPPES + PECOS cross-referenced.
// "example": true marks this row as illustrative, not a real customer.
{
  "example": true,
  "id": "01h7n…provider…dermatology",
  "vertical_slug": "dermatologists",
  "name": "Sample Dermatology Group",
  "address_line": "200 Gulf Blvd, Suite 410",
  "city": "Tampa",
  "state": "FL",
  "zip": "33606",
  "npi": "1234567890",
  "primary_taxonomy": "207N00000X",
  "primary_taxonomy_label": "Dermatology",
  "pecos_enrollment": "ENROLLED",
  "fields": {
    "npi": {
      "value": "1234567890",
      "source": "CMS NPPES",
      "last_checked": "2026-04-30",
      "confidence": "high",
      "display_permission": "public · attribution required"
    },
    "primary_taxonomy": {
      "value": "207N00000X",
      "source": "CMS NPPES",
      "last_checked": "2026-04-30",
      "confidence": "high",
      "display_permission": "public · attribution required"
    },
    "pecos_enrollment": {
      "value": "ENROLLED",
      "source": "CMS PECOS",
      "last_checked": "2026-04-30",
      "confidence": "high",
      "display_permission": "public · attribution required"
    }
  }
}

Example 2 — Florida contractor (FL DBPR)

// Example record — Florida HVAC contractor, FL DBPR-anchored.
// "example": true marks this row as illustrative, not a real customer.
{
  "example": true,
  "id": "01h7n…provider…hvac-fl",
  "vertical_slug": "hvac",
  "name": "Sample HVAC Sample LLC",
  "address_line": "500 Bay Shore Dr",
  "city": "Sarasota",
  "state": "FL",
  "zip": "34236",
  "state_license_number": "CAC1500001",
  "state_license_status": "ACTIVE",
  "state_license_expiration": "2026-08-31",
  "fields": {
    "state_license_number": {
      "value": "CAC1500001",
      "source": "FL DBPR CILB",
      "last_checked": "2026-04-30",
      "confidence": "high",
      "display_permission": "public · attribution required"
    },
    "state_license_status": {
      "value": "ACTIVE",
      "source": "FL DBPR CILB",
      "last_checked": "2026-04-30",
      "confidence": "high",
      "display_permission": "public · attribution required"
    },
    "state_license_expiration": {
      "value": "2026-08-31",
      "source": "FL DBPR CILB",
      "last_checked": "2026-04-30",
      "confidence": "high",
      "display_permission": "public · attribution required"
    }
  }
}

Example 3 — synthesized cross-vertical (CMS Care Compare)

// Example record — synthesized cross-vertical example (no real provider).
// Shows a profile carrying both a CMS Care Compare CCN AND a state license.
// "example": true and "synthesized": true mark this row clearly.
{
  "example": true,
  "synthesized": true,
  "id": "01h7n…provider…cross",
  "vertical_slug": "nursing-homes",
  "name": "Sample Care Center (synthesized)",
  "city": "Phoenix",
  "state": "AZ",
  "cms_certification_number": "030001",
  "fields": {
    "cms_certification_number": {
      "value": "030001",
      "source": "CMS Care Compare",
      "last_checked": "2026-03-31",
      "confidence": "high",
      "display_permission": "public · attribution required"
    },
    "overall_star_rating": {
      "value": "4",
      "source": "CMS Care Compare",
      "last_checked": "2026-03-31",
      "confidence": "high",
      "display_permission": "public · attribution required"
    }
  }
}
What this schema does not capture

Five honest limitations.

  • Restricted-source fields

    The schema does not include fields sourced from restricted-distribution registries (state bars, NMLS Consumer Access, ABMS / CertiFacts). We cite these sources publicly when relevant but never republish their rows. See §125 RESTRICTED_SOURCES.

  • Quality-stamp scoring

    There is no `is_verified`, `is_recommended`, or `quality_score` field. Source-cited is not the same as pre-vetted; the schema reflects that doctrine.

  • Patient or customer data

    The schema is provider-level only. We do not collect, store, or expose patient records, claim records, or end-consumer behavioral data.

  • Real-time wire freshness

    Refresh cadence is per source family — weekly for FL DBPR, monthly for CMS NPPES + Google ratings, quarterly for CMS Care Compare. The `last_checked` field always reflects the actual reconciliation date, not the snapshot date.

  • API access today

    The schema describes the canonical record shape that flows through the OwnListed graph. A paid query API does not exist today; B2B access ships as static CSV/JSON downloads from /research/data/ + scoping via press@ownlisted.com.

See also
  • /data-platform → Dataset catalog, B2B export concepts, sample-export request CTA.
  • /sources → The source library — every dataset OwnListed cites.
  • /data-provenance → The provider graph + ProvenanceCard examples.
  • /methodology → Sourcing methodology + corrections policy.
  • /editorial-policy → Doctrine + claim ceiling.
  • /llms.txt → Machine-readable doctrine for AI agents.
ownlisted

An independent research organization studying the local economy.


RESEARCH

  • Research hub
  • All studies
  • Data platform
  • Press kit

NETWORK

  • Coverage
  • Healthcare graph
  • Trades graph
  • Indexed coverage

ABOUT

  • Mission
  • Methodology
  • Editorial policy
  • Corrections log
  • Trust & security
  • Press kit
  • Contact

SUBSCRIBE

The monthly research digest. One email, first of each month. Unsubscribe anytime.


© 2026 OWNLISTED RESEARCH · DATA SNAPSHOT MAY 3, 2026 · BUILT WITH CARE

  • X
  • LINKEDIN
  • PRESS