Centers for Medicare & Medicaid Services Data API1.0.0OAS3
What's new
Coming Soon: Data.CMS.gov will publish its Public API Open Data Catalog using the new DCAT-US v3.0 standard at [/data.json], beginning in late September 2026. The legacy DCAT-US 1.1 catalog endpoint will continue to be available during the transition period and will move to: [/v1-1-data.json].
DCAT-US v3.0 is the federal metadata standard for open data catalogs and replaces the legacy DCAT-US 1.1 standard. This update aligns with requirements established under the Office of Management and Budget (OMB) Memorandum M-25-05 and supports the goals of the Evidence Act and government-wide open data policies by improving the consistency, interoperability, and discoverability of CMS data assets.
More details will be provided once the new standard is launched.
API documentation
Explore the documentation and examples to integrate with our Public API Open Data Catalog.
Our FAQ contains answers to common questions.
API integrations
Our API responses are in a JSON format. To integrate your endpoint requests with the data.cms.gov Public API, follow these steps:
- Find your Dataset & its Unique Identifier
- Search for your dataset and visit its 'overview' page. Click on ‘Access API’ and then on the ‘API Docs for the Dataset’ link.
- Integrate your Dataset Endpoint Paths
- Dataset API endpoints have this structure: data.cms.gov/data-api/v1/dataset/{{dataset_id}}/data. Use this URL with your dataset ID obtained from Step 1.
- Integrate your API Endpoint Requests
- The system uses the JSONAPI query syntax.
- The simplest, most common filter is a key-value filter: ?filter[field_name]=value&filter[field_other]=value.
- Examples
Exact match search on 1 column
To filter ‘‘Medicare Fee-For-Service Public Provider Enrollment’ Dataset, by column ‘PROVIDER_TYPE_DESC’, use the following request: data.cms.gov/data-api/v1/dataset/2457ea29-fc82-48b0-86ec-3b0755de7515/data?filter[PROVIDER_TYPE_DESC]=PRACTITIONER%20-%20GENERAL%20PRACTICE
- ‘Contains’ search on 1 column
To filter the ‘Medicare Fee-For-Service Public Provider Enrollment’ Dataset and find all rows that contain ‘SUPPLIER’ in the ‘PROVIDER_TYPE_DESC’ column, the request is:
data.cms.gov/data-api/v1/dataset/2457ea29-fc82-48b0-86ec-3b0755de7515/data?filter[example][condition][path]=PROVIDER_TYPE_DESC&filter[example][condition][operator]=CONTAINS&filter[example][condition][value]=SUPPLIER Combination search on 2 columns To filter the ‘Medicare Fee-For-Service Public Provider Enrollment’ Dataset and find all rows that contain ‘PRACTITIONER’ in the ‘PROVIDER_TYPE_DESC’ column where the 'STATE_CD' is 'MD', the request is: data.cms.gov/data-api/v1/dataset/2457ea29-fc82-48b0-86ec-3b0755de7515/data?filter[filter-1][condition][path]=PROVIDER_TYPE_DESC&filter[filter-1][condition][operator]=CONTAINS&filter[filter-1][condition][value]=PRACTITIONER&filter[filter-2][condition][path]=STATE_CD&filter[filter-2][condition][operator]==&filter[filter-2][condition][value]=MD
Refer to the Drupal documentation for more information on filtering API requests.
- Examples
- Integrate your API Endpoint Requests to support paging
- API Responses are paged and support a max page size of 5000 rows. Use the size & offset query parameters to page through the data, as shown below:
- 1st example: this request returns the first 50 rows of a dataset: data.cms.gov/data-api/v1/dataset/2457ea29-fc82-48b0-86ec-3b0755de7515/data?size=50&offset=0
- 2nd example: this request returns the next 50 rows (51 - 100):
data.cms.gov/data-api/v1/dataset/2457ea29-fc82-48b0-86ec-3b0755de7515/data?size=50&offset=50
- API Responses are paged and support a max page size of 5000 rows. Use the size & offset query parameters to page through the data, as shown below:
Additional information
The Application Programming Interface (API) offers access to the Centers for Medicare & Medicaid Services public data allowing you to interactively analyze our datasets in real-time. Our APIs are organized around REST and have predictable resource-oriented URLs, accept form-encoded requests and returns JSON & JSON:API encoded responses and uses standard HTTP response codes.

