US HealthCare.gov Plan & Network Directory Finder avatar

US HealthCare.gov Plan & Network Directory Finder

Pricing

$4.50 / 1,000 unique issuer / plan / network records

Go to Apify Store
US HealthCare.gov Plan & Network Directory Finder

US HealthCare.gov Plan & Network Directory Finder

Find 2026 individual Marketplace plans, issuers and official provider-directory links in 30 supported states. Includes source versions and URL reachability; no clinician or specialty matching.

Pricing

$4.50 / 1,000 unique issuer / plan / network records

Rating

0.0

(0)

Developer

AFK Digital

AFK Digital

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share

Find 2026 individual Marketplace issuers, base plans, network names and official provider-directory links from a versioned snapshot of CMS public-use files. Filter by state, county, plan type, medical or standalone dental coverage, issuer, or network. Export the resulting Apify Dataset as JSON or CSV.

Price: $0.0045 per unique issuer / base-plan / network record — $4.50 per 1,000 records. There is no Actor-start event fee. A record remains a billable result when its source directory URL is unreachable: the plan/network identification and the URL diagnostic are still delivered.

This release does not list individual clinicians, identify therapists, classify behavioral-health networks, confirm a provider's participation, or test appointment availability. Finding an issuer's directory URL is not evidence of any of those things.

Supported data and geography

  • Plan year: 2026 only. Requests for other years fail; the Actor never substitutes a different year.
  • Market: Individual plans identified in the CMS Plan Attributes file as Both or On the Exchange. Includes medical and standalone dental plans; excludes SHOP and off-exchange-only records.
  • States: AK, AL, AR, AZ, DE, FL, HI, IA, IN, KS, LA, MI, MO, MS, MT, NC, ND, NE, NH, OH, OK, OR, SC, SD, TN, TX, UT, WI, WV, WY.
  • County search: a five-digit county FIPS or exact county name within the selected state. County-level matches can include a plan serving only part of that county; such records have partial_county: true.
  • Limited ZIP search: only ZIPs explicitly listed in CMS partial-county service areas are supported. ZIP results include those explicit service-area matches only. They are not a complete list of plans serving a ZIP; full-county and statewide service areas are omitted from ZIP searches. An unsupported ZIP produces a clear error. Use county search for broader coverage. If both ZIP and county are supplied, their source mapping must agree.
  • The separate state-based-exchange PUFs are outside this release. Coverage is not nationwide.

Snapshot 2026-2544b68fd0e4ff4d contains 4,690 unique records: 4,038 medical and 652 dental. The restricted ZIP index contains 159 explicit ZIPs in Michigan, Oregon and Texas only. Customer-service phone is null in 44 source-derived records. These are snapshot counts, not a claim of complete national plan coverage.

The CMS source page labels the core 2026 PUF release August 4, 2026. The public catalog marks the Plan Attributes, Network, Service Area and dental Landscape files modified August 10, 2026, and medical Landscape modified August 26, 2026. These dates have different meanings and are recorded separately. The source manifest identifies the exact downloaded files and their SHA-256 hashes.

The snapshot excludes issuer 58944, Mending Health of Oklahoma, following the CMS notice that it stopped accepting 2026 enrollments on August 25, 2026. This exclusion does not determine coverage for existing members. Other results are source-reported plan records, not a guarantee that a plan is currently open for enrollment.

AFK MESH processed output derived from CMS source files. This is not an official CMS dataset and is not endorsed by CMS. Confirm current enrollment and provider participation with the Marketplace, issuer and relevant provider.

Quick start

  1. Set state and optionally county.
  2. Select coverage and planType.
  3. Set maxResults and a dollar cap with maxCostUsd.
  4. Run the Actor and open its Dataset. Use the JSON or CSV output links.
  5. Open the SUMMARY and SOURCE_MANIFEST records for cost limits, geographic scope, source freshness and provenance.

Florida: medical plans in Miami-Dade

{
"planYear": 2026,
"state": "FL",
"county": "12086",
"coverage": "medical",
"planType": "all",
"maxResults": 20,
"maxCostUsd": 0.09,
"validateNetworkUrls": true,
"networkTimeoutSecs": 8,
"checkSourceFreshness": true
}

Texas: Community Health Choice in Harris County

{
"planYear": 2026,
"state": "TX",
"county": "Harris",
"issuerId": "11718",
"coverage": "medical",
"planType": "HMO",
"maxResults": 10,
"maxCostUsd": 0.045
}

Inputs

InputDefaultMeaning
planYear2026Only the validated year is supported.
stateFL in ConsoleRequired two-letter state code from the supported list.
countyomittedExact county name or five-digit FIPS in the selected state.
zipomittedFive-character ZIP, restricted to explicit partial-county CMS service-area entries.
planTypeallHMO, PPO, EPO, POS, Indemnity, or all; the CMS PlanType field.
coveragemedicalmedical, dental, or all.
issuerIdomittedExact five-digit issuer ID.
networkIdomittedExact network ID. IDs are issuer-scoped; combine with issuerId when needed.
networkNameomittedCase-insensitive substring of the source network name.
maxResults100Maximum unique records, 1–10,000.
maxCostUsd1Maximum result-event charges, 0–100 USD. Zero returns no paid records.
validateNetworkUrlstrueBounded HTTP reachability checks on each distinct source URL.
networkTimeoutSecs8Total per-URL time budget, 2–15 seconds, including DNS, redirects and retries.
checkSourceFreshnesstrueCompare source release timestamps with the current official catalog.

Identifiers and ZIPs are strings to preserve leading zeros. Unknown input fields are rejected. A provider-specialty or behavioral-health filter is not supported.

Output fields

One Dataset row represents a unique plan_year + state + issuer_id + plan_id + network_id. plan_id is the CMS 14-character StandardComponentId. CSR variants are aggregated into plan_variant_ids, so variants do not create duplicate paid rows. Different networks for the same issuer remain separate.

FieldMeaning
plan_yearSource plan year.
issuer_id, issuer_nameCMS issuer identifier and source marketing name.
stateTwo-letter source state.
network_name, network_idNetwork PUF name and issuer-scoped ID.
network_urlOriginal issuer-reported directory URL from the Network PUF.
plan_idBase-plan StandardComponentId, not a variant ID.
medical_or_dental_flagNormalized medical or dental.
customer_service_phoneUnique source toll-free number, otherwise unique local number; null if unavailable or unresolved.
source_fileSource filenames used for the record.
source_urlOfficial Network PUF download URL; the manifest contains all contributing source URLs.
updated_atLatest catalog modification timestamp among sources used for the record; not the HTTP check time.
source_versionImmutable snapshot identifier.
record_keyDeterministic unique output/billing identity.
plan_type, plan_name, plan_variant_idsAdditional source plan attributes.
matched_counties, matched_zipGeography matched by the query. A state-only query leaves matched_counties empty.
geography_match_type, partial_countyGeographic match precision and partial-county indicator.
network_url_status, network_url_http_statusHTTP reachability result and response code, when available.
network_url_final, network_url_checked_atFinal inspected URL and UTC check time.
directory_scopeAlways issuer_network_directory_link.
provider_participation_verifiedAlways false in this release.

Missing source fields are JSON null, never invented or filled from unrelated issuers. CSV represents missing values as empty cells. Phones come from medical/dental Landscape files joined by state, issuer and base-plan ID. TTY values are not substituted for customer-service phone numbers.

Source-verified example

The following values are from the 2026 CMS files for Miami-Dade, Florida:

{
"plan_year": 2026,
"issuer_id": "16842",
"issuer_name": "Florida Blue (BlueCross BlueShield FL)",
"state": "FL",
"network_name": "BlueSelect",
"network_id": "FLN002",
"network_url": "https://providersearch.floridablue.com/visitor/ffm/#/?ffmPlanCode=FFMBSC",
"plan_id": "16842FL0120001",
"medical_or_dental_flag": "medical",
"customer_service_phone": "1-800-352-2583",
"source_url": "https://data.healthcare.gov/datafile/py2026/network_PUF.csv",
"directory_scope": "issuer_network_directory_link",
"provider_participation_verified": false
}

This abbreviated example does not assert that the URL is reachable now. Every full runtime record also includes source filenames, source version, update timestamp and the requested URL diagnostic.

Directory URL checks

The Actor checks distinct public HTTP(S) URLs with bounded concurrency, redirects, timeouts and at most one retry for transient errors. It blocks private/local destinations, unsafe schemes and credential-bearing URLs. It does not use paid proxies, authentication, CAPTCHA solving or access-control bypasses.

Typical diagnostic values:

StatusInterpretation
reachableAn HTTP success response was obtained. This does not inspect directory content or verify any clinician.
http_errorAn HTTP error such as 404/410 or a persistent server error.
access_restrictedAccess was denied or rate limited; this does not establish a broken directory.
timeoutThe bounded check did not finish in time.
dns_error, network_errorName resolution or transport check failed.
unsafe_url, invalid_urlThe URL cannot be safely checked or is malformed.
missingNo source URL is available.
not_checkedReachability checks were disabled.

Original source URLs are preserved even when checks fail. A redirect or HTTP 200 can lead to a generic landing page or a JavaScript application; it is not content validation. Failure from the cloud environment may differ from what a person sees in their browser.

Pricing and cost control

The only paid event is Apify's automatically charged default-Dataset-item event, priced at $0.0045. There is no additional Actor-start fee and no separate provider-lookup charge.

Delivered unique recordsResult-event charge
1$0.0045
10$0.045
100$0.45
1,000$4.50

The output limit is the smallest of maxResults, floor(maxCostUsd / 0.0045), and the number allowed by the Apify run charge cap. For example, $0.0135 permits three records; $0.01349 permits two. A smaller budget may return fewer records than requested. No-match and invalid-input runs produce no paid result rows.

Deduplication applies within a run and its resumed default Dataset. Starting a new run delivers and charges for its own results. Existing acknowledged rows are skipped on resume. The Actor stops on uncertain Dataset acknowledgement instead of blindly resending a batch.

The SUMMARY includes selected and delivered counts, estimated result-event cost and the stop reason. Apify's billing record is authoritative. Owners testing their own Actor may see platform resource usage rather than the same invoice a customer receives.

Data versioning and freshness

The Docker image bundles a compact, immutable source snapshot. It does not download and parse the large XLSX source files on every run. Each run saves SOURCE_MANIFEST with source URLs, file hashes, retrieval times, release metadata and snapshot checksums. Snapshot integrity and year consistency are checked before output.

With checkSourceFreshness: true, the Actor makes a bounded request to the official catalog and reports whether its published source timestamps differ. A new release is reported; it is not silently adopted. This comparison cannot detect publisher corrections that keep the same catalog timestamp. A source refresh requires rebuilding and validating a new snapshot.

The Actor uses public PUF downloads and does not require a CMS Marketplace API key. The current Marketplace API has separate access conditions. Its public example/test key is not embedded or used for production geography.

JSON and CSV exports

After a run succeeds, use the output links in Apify Console or the Dataset API:

https://api.apify.com/v2/datasets/DATASET_ID/items?format=json&clean=true
https://api.apify.com/v2/datasets/DATASET_ID/items?format=csv&clean=true&fields=plan_year,issuer_id,issuer_name,state,network_name,network_url,plan_id,medical_or_dental_flag,customer_service_phone,source_file,source_url,updated_at,market_coverage,network_id,phone_source_file,plan_name,plan_type,plan_variant_ids,qhp_type,record_key,service_area_id,source_version,matched_counties,matched_zip,geography_match_type,partial_county,directory_scope,provider_participation_verified,network_url_status,network_url_http_status,network_url_final,network_url_checked_at,network_url_error,actor_version,source_freshness_status

The CSV output link specifies all release fields so a zero-result Dataset returns an empty CSV without a missing-columns export error.

Apply the access permissions of your Dataset; do not put API tokens in public links. Run metadata is in the default key-value store's SUMMARY and SOURCE_MANIFEST records.

Sources

Development and maintenance

Runtime: Python 3.13, Apify SDK 4.1.0 and HTTPX 0.28.1. Source snapshot generation additionally uses lxml 6.0.2.

Run python -m unittest discover -s tests -v in the project environment. The snapshot builder reads the preserved official files and metadata in research/; its output is data/snapshot.json.gz and data/source_manifest.json. Credentials and original research files are excluded from the Docker/source upload.

Release checks cover year rejection, exact joins, state/county validation, restricted ZIP behavior, multiple networks per issuer, variant deduplication, null phones, HTTP failures, redirect safety, retries, spending limits and Dataset acknowledgement. Release evidence includes real Florida and Texas county runs, rather than relying solely on fixtures.

Actor code version: 1.0.0. Permanent project identifier: NEWAPI13.