Centers for Medicare and Medicaid Services Patient API
Beneficiary (Patient) resources.
Beneficiary (Patient) resources.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/centers-for-medicare-and-medicaid-services-patient-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: Cms Patient API
version: '1.0'
description: 'Operations tagged patient across 2 of this provider''s published API definitions: cms-bcda-openapi.yml, cms-patient-api-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.bluebutton.cms.gov/v2/fhir
description: Blue Button 2.0 production FHIR server
- url: https://sandbox.bluebutton.cms.gov/v2/fhir
description: Blue Button 2.0 sandbox FHIR server
tags:
- name: patient
paths:
/api/v1/Patient/$export:
get:
tags:
- patient
summary: Start FHIR STU3 data export job for the specified group identifier and resource type(s)
description: "Initiates a job to collect data from the Beneficiary FHIR Data API for your ACO. \n\nIf used when specifying `_since`: all claims data which has been updated since the specified date will be returned for beneficiaries which have been attributed to the ACO since before the specified date.\n\n"
operationId: bulkPatientRequest
parameters:
- name: _type
in: query
description: Resource types requested
style: form
explode: false
schema:
type: array
items:
type: string
x-go-name: ResourceType
x-go-name: ResourceType
- name: _since
in: query
description: Only include resource versions that were created at or after the given instant in time. Format of string must align with the FHIR Instant datatype (i.e., `2020-02-13T08:00:00.000-05:00`)
schema:
type: string
x-go-name: DateTime
x-go-name: DateTime
- name: Prefer
in: header
required: true
schema:
type: string
enum:
- respond-async
responses:
'202':
description: 'A data export job has been started successfully. '
headers:
Content-Location:
description: Returns a URI to the jobs status endpoint, along with the job id. `/jobs/<jobId>`
schema:
type: string
content: {}
'400':
description: Malformed request
content:
application/fhir+json:
schema:
$ref: '#/components/schemas/OperationOutcomeResponse'
'401':
description: Unauthorized. The provided credentials are invalid for the requested resource.
content: {}
'429':
description: Too many requests. A bulk export job of this resource type is already in progress for the ACO.
content: {}
'500':
description: 'Internal Server Error. '
content:
application/fhir+json:
schema:
$ref: '#/components/schemas/OperationOutcomeResponse'
security:
- bearer_token: []
/api/v2/Patient/$export:
get:
tags:
- patient
summary: Start FHIR R4 data export job for the specified group identifier and resource type(s)
description: "Initiates a job to collect data from the Beneficiary FHIR Data API for your ACO. \n\nIf used when specifying `_since`: all claims data which has been updated since the specified date will be returned for beneficiaries which have been attributed to the ACO since before the specified date.\n\n"
operationId: bulkPatientRequestv2
parameters:
- name: _type
in: query
description: Resource types requested
style: form
explode: false
schema:
type: array
items:
type: string
x-go-name: ResourceType
x-go-name: ResourceType
- name: _since
in: query
description: Only include resource versions that were created at or after the given instant in time. Format of string must align with the FHIR Instant datatype (i.e., `2020-02-13T08:00:00.000-05:00`)
schema:
type: string
x-go-name: DateTime
x-go-name: DateTime
- name: Prefer
in: header
required: true
schema:
type: string
enum:
- respond-async
responses:
'202':
description: 'A data export job has been started successfully. '
headers:
Content-Location:
description: Returns a URI to the jobs status endpoint, along with the job id. `/jobs/<jobId>`
schema:
type: string
content: {}
'400':
description: Malformed request
content:
application/fhir+json:
schema:
$ref: '#/components/schemas/OperationOutcomeResponse'
'401':
description: Unauthorized. The provided credentials are invalid for the requested resource.
content: {}
'429':
description: Too many requests. A bulk export job of this resource type is already in progress for the ACO.
content: {}
'500':
description: 'Internal Server Error. '
content:
application/fhir+json:
schema:
$ref: '#/components/schemas/OperationOutcomeResponse'
security:
- bearer_token: []
/Patient:
get:
operationId: searchPatient
summary: Search Patient
description: Returns the authenticated Medicare beneficiary as a FHIR Patient resource.
tags:
- patient
responses:
'200':
description: A FHIR Bundle of Patient resources.
content:
application/fhir+json:
schema:
$ref: '#/components/schemas/FHIRBundle'
'401':
$ref: '#/components/responses/Unauthorized'
security:
- oauth2: []
servers:
- url: https://api.bluebutton.cms.gov/v2/fhir
description: Blue Button 2.0 production FHIR server
- url: https://sandbox.bluebutton.cms.gov/v2/fhir
description: Blue Button 2.0 sandbox FHIR server
/Patient/{id}:
get:
operationId: readPatient
summary: Read Patient
description: Returns a single Patient resource by ID.
tags:
- patient
parameters:
- name: id
in: path
required: true
description: FHIR Patient resource ID.
schema:
type: string
responses:
'200':
description: A FHIR Patient resource.
content:
application/fhir+json:
schema:
$ref: '#/components/schemas/FHIRResource'
'404':
$ref: '#/components/responses/NotFound'
security:
- oauth2: []
servers:
- url: https://api.bluebutton.cms.gov/v2/fhir
description: Blue Button 2.0 production FHIR server
- url: https://sandbox.bluebutton.cms.gov/v2/fhir
description: Blue Button 2.0 sandbox FHIR server
components:
schemas:
OperationOutcomeResponse:
type: object
properties:
Issue:
type: object
required:
- Severity
- Code
- Diagnostics
properties:
Severity:
description: 'Severity of the outcome: fatal | error | warning | information'
type: string
Code:
description: Error or warning code
type: string
Diagnostics:
description: Additional diagnostic information about the issue
type: string
x-go-package: github.com/CMSgov/bcda-app/bcda/models
FHIRBundle:
type: object
description: A FHIR R4 Bundle resource wrapping a collection of resources.
properties:
resourceType:
type: string
const: Bundle
type:
type: string
total:
type: integer
entry:
type: array
items:
type: object
additionalProperties: true
additionalProperties: true
FHIRResource:
type: object
description: A generic FHIR R4 resource.
properties:
resourceType:
type: string
id:
type: string
additionalProperties: true
responses:
Unauthorized:
description: Authentication credentials are missing or invalid.
content:
application/fhir+json:
schema:
$ref: '#/components/schemas/FHIRResource'
NotFound:
description: The requested resource was not found.
content:
application/fhir+json:
schema:
$ref: '#/components/schemas/FHIRResource'
securitySchemes:
basic_auth:
type: http
scheme: basic
bearer_token:
type: apiKey
description: The Group and Patient endpoints require a Bearer Token. 1) Put your credentials in Basic Authentication, 2) Request a bearer token from /auth/token, 3) Put "Bearer {TOKEN}" in this field (no quotes) using the bearer token retrieved in step 2
name: Authorization
in: header
oauth2:
type: oauth2
description: OAuth 2.0 authorization code flow used by Medicare beneficiaries to grant access to a third-party application.
flows:
authorizationCode:
authorizationUrl: https://api.bluebutton.cms.gov/v2/o/authorize/
tokenUrl: https://api.bluebutton.cms.gov/v2/o/token/
scopes:
patient/Patient.read: Read beneficiary Patient resource.
patient/Coverage.read: Read beneficiary Coverage resources.
patient/ExplanationOfBenefit.read: Read beneficiary claims.
externalDocs:
description: CMS Blue Button 2.0 API Documentation
url: https://bluebutton.cms.gov/api-documentation/
x-refined-from:
- cms-bcda-openapi.yml
- cms-patient-api-openapi.yml