US HealthCare.gov Plan & Network Directory Finder
Pricing
$4.50 / 1,000 unique issuer / plan / network records
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
Maintained by CommunityActor 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
BothorOn 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
- Set
stateand optionallycounty. - Select
coverageandplanType. - Set
maxResultsand a dollar cap withmaxCostUsd. - Run the Actor and open its Dataset. Use the JSON or CSV output links.
- Open the
SUMMARYandSOURCE_MANIFESTrecords 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
| Input | Default | Meaning |
|---|---|---|
planYear | 2026 | Only the validated year is supported. |
state | FL in Console | Required two-letter state code from the supported list. |
county | omitted | Exact county name or five-digit FIPS in the selected state. |
zip | omitted | Five-character ZIP, restricted to explicit partial-county CMS service-area entries. |
planType | all | HMO, PPO, EPO, POS, Indemnity, or all; the CMS PlanType field. |
coverage | medical | medical, dental, or all. |
issuerId | omitted | Exact five-digit issuer ID. |
networkId | omitted | Exact network ID. IDs are issuer-scoped; combine with issuerId when needed. |
networkName | omitted | Case-insensitive substring of the source network name. |
maxResults | 100 | Maximum unique records, 1–10,000. |
maxCostUsd | 1 | Maximum result-event charges, 0–100 USD. Zero returns no paid records. |
validateNetworkUrls | true | Bounded HTTP reachability checks on each distinct source URL. |
networkTimeoutSecs | 8 | Total per-URL time budget, 2–15 seconds, including DNS, redirects and retries. |
checkSourceFreshness | true | Compare 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.
| Field | Meaning |
|---|---|
plan_year | Source plan year. |
issuer_id, issuer_name | CMS issuer identifier and source marketing name. |
state | Two-letter source state. |
network_name, network_id | Network PUF name and issuer-scoped ID. |
network_url | Original issuer-reported directory URL from the Network PUF. |
plan_id | Base-plan StandardComponentId, not a variant ID. |
medical_or_dental_flag | Normalized medical or dental. |
customer_service_phone | Unique source toll-free number, otherwise unique local number; null if unavailable or unresolved. |
source_file | Source filenames used for the record. |
source_url | Official Network PUF download URL; the manifest contains all contributing source URLs. |
updated_at | Latest catalog modification timestamp among sources used for the record; not the HTTP check time. |
source_version | Immutable snapshot identifier. |
record_key | Deterministic unique output/billing identity. |
plan_type, plan_name, plan_variant_ids | Additional source plan attributes. |
matched_counties, matched_zip | Geography matched by the query. A state-only query leaves matched_counties empty. |
geography_match_type, partial_county | Geographic match precision and partial-county indicator. |
network_url_status, network_url_http_status | HTTP reachability result and response code, when available. |
network_url_final, network_url_checked_at | Final inspected URL and UTC check time. |
directory_scope | Always issuer_network_directory_link. |
provider_participation_verified | Always 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:
| Status | Interpretation |
|---|---|
reachable | An HTTP success response was obtained. This does not inspect directory content or verify any clinician. |
http_error | An HTTP error such as 404/410 or a persistent server error. |
access_restricted | Access was denied or rate limited; this does not establish a broken directory. |
timeout | The bounded check did not finish in time. |
dns_error, network_error | Name resolution or transport check failed. |
unsafe_url, invalid_url | The URL cannot be safely checked or is malformed. |
missing | No source URL is available. |
not_checked | Reachability 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 records | Result-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=truehttps://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
- CMS Marketplace Public Use Files
- Official HealthCare.gov public-data catalog
- 2026 Plan Attributes CSV
- 2026 Network CSV
- 2026 Service Area CSV
- 2026 Individual Medical Landscape
- 2026 Individual Dental Landscape
- CMS Marketplace API access guidance
- Apify pay-per-event documentation
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.