merge: BCDA v3 (P52, PR #1140) into main — the checkout now lives on main
The live checkout sat on feat/bcda-v3, so everything merged to main
today (UI fixes, Traefik theme change) only reached the running
services by hand-copied files. It now tracks main; this brings the
branch's 18 commits (BCDA v3 client, crosswalk-driven flatteners,
vendored upstream, institutional provider universe, sandbox notebook)
along with it.
Conflicts:
- .gitea/workflows/{harden,rebuild-all}.yml: regenerated with
gen_config.py from the merged stack.toml + backends/gitea.py — bcda
joins the per-image build → scan → push Harden job, pinned trivy/crane.
- tests/dev/test_gen_config_deploy.py: both sides fixed the GIT_* env
leak; kept main's shared _clean_env() (also used by the detector run).
- uv.lock auto-merged; `uv lock --locked` passes, a relock changes no
version, and trivy finds 0 vulnerabilities in the merged lock.
Two bcda tests needed fixing on the merged tree:
- test_completed_jobs used dated fixtures against completed_jobs()'s
default 24 h window, so it failed a day after it was written; it
now asks for max_age_hours=None (it tests ordering + version filter).
- test_ui_metrics matched whole Prometheus lines; the OTel exporter
(0.66, from the CVE bump) adds otel_scope_* labels to every series,
so it now matches on the labels the stack owns.
Full suite on the merged tree: 15,856 passed before those two fixes;
tests/bcda 426/426 after.
This commit is contained in:
@@ -32,3 +32,10 @@ assets/
|
||||
cloud/
|
||||
mirrors/
|
||||
.claude/
|
||||
# Streamlit server config COPYed by bcda.Dockerfile (repo-root context).
|
||||
!infra/images/bcda/
|
||||
!infra/images/bcda/**
|
||||
# Favicon COPYed by bcda.Dockerfile; dir entries first so BuildKit can descend.
|
||||
!assets/
|
||||
!assets/icons/
|
||||
!assets/icons/fav32.png
|
||||
|
||||
44
.gitea/workflows/bcda-vendor.yml
Normal file
44
.gitea/workflows/bcda-vendor.yml
Normal file
@@ -0,0 +1,44 @@
|
||||
# DO NOT EDIT — generated by gen_config.py from stack.toml
|
||||
# Re-generate: uv run python dev/scripts/gen_config.py
|
||||
|
||||
name: BCDA Vendor
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
- cron: "30 5 * * 1"
|
||||
|
||||
jobs:
|
||||
bcda-vendor:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: https://github.com/actions/checkout@v4
|
||||
|
||||
- name: Set up uv
|
||||
run: curl -LsSf https://astral.sh/uv/install.sh | sh
|
||||
env:
|
||||
UV_INSTALL_DIR: /usr/local/bin
|
||||
|
||||
- name: Verify the vendored tree matches the manifest
|
||||
run: uv run --no-project python dev/scripts/vendor_bcda_app.py --verify
|
||||
|
||||
- name: Check CMSgov/bcda-app and bcda.cms.gov for drift
|
||||
run: uv run --no-project python dev/scripts/vendor_bcda_app.py --check
|
||||
|
||||
- name: File failure issue
|
||||
if: failure()
|
||||
env:
|
||||
GITEA_TOKEN: ${{ secrets.DEPLOY_TOKEN }}
|
||||
run: |
|
||||
# Jobs that never install uv (image builds, infra checks) still
|
||||
# need it here — otherwise the filer dies with "uv: command not
|
||||
# found" and the failure is never filed.
|
||||
command -v uv >/dev/null 2>&1 || curl -LsSf https://astral.sh/uv/install.sh | sh
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
uv sync --no-dev --quiet 2>/dev/null || true
|
||||
uv run python -m api.diag.ci \
|
||||
--workflow "BCDA Vendor" --job "bcda-vendor" \
|
||||
--run "${{ github.run_number }}" \
|
||||
--sha "${{ github.sha }}" \
|
||||
--ref "${{ github.ref }}" || true
|
||||
@@ -15,6 +15,7 @@ jobs:
|
||||
zotero: ${{ steps.filter.outputs.zotero }}
|
||||
docs: ${{ steps.filter.outputs.docs }}
|
||||
api: ${{ steps.filter.outputs.api }}
|
||||
bcda: ${{ steps.filter.outputs.bcda }}
|
||||
llm: ${{ steps.filter.outputs.llm }}
|
||||
mc: ${{ steps.filter.outputs.mc }}
|
||||
steps:
|
||||
@@ -59,6 +60,7 @@ jobs:
|
||||
match zotero 'infra/images/zotero.Dockerfile' 'infra/images/zotero/*'
|
||||
match docs 'docs/*' 'infra/images/docs.Dockerfile'
|
||||
match api 'infra/images/api.Dockerfile' 'src/*' 'pyproject.toml'
|
||||
match bcda 'infra/images/bcda.Dockerfile' 'infra/images/bcda/*' 'src/*' 'pyproject.toml'
|
||||
match llm 'infra/images/llm.Dockerfile' 'src/*' 'pyproject.toml'
|
||||
match mc 'infra/rustfs/*' 'infra/images/mc.Dockerfile'
|
||||
|
||||
@@ -294,6 +296,64 @@ jobs:
|
||||
--sha "${{ github.sha }}" \
|
||||
--ref "${{ github.ref }}" || true
|
||||
|
||||
bcda:
|
||||
runs-on: ubuntu-latest
|
||||
needs: [changes]
|
||||
if: needs.changes.outputs.bcda == 'true'
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: https://github.com/actions/checkout@v4
|
||||
|
||||
- name: Install crane
|
||||
run: |
|
||||
cd /tmp
|
||||
base=https://github.com/google/go-containerregistry/releases/download/v0.22.1
|
||||
tgz=go-containerregistry_Linux_x86_64.tar.gz
|
||||
curl -fsSLO "$base/$tgz"
|
||||
curl -fsSL "$base/checksums.txt" | grep -F " $tgz" | sha256sum -c -
|
||||
tar xzf "$tgz" -C /usr/local/bin crane
|
||||
|
||||
- name: Log in to registry
|
||||
run: crane auth login git:3000 -u "${{ secrets.REGISTRY_USER }}" -p "${{ secrets.REGISTRY_TOKEN }}"
|
||||
env:
|
||||
CRANE_INSECURE: "true"
|
||||
|
||||
|
||||
- name: Install trivy
|
||||
run: curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/v0.76.0/contrib/install.sh | sh -s -- -b /usr/local/bin v0.76.0
|
||||
|
||||
- name: Scan bcda
|
||||
run: trivy image --severity HIGH,CRITICAL --exit-code 0 --format json -o bcda-scan.json local/bcda:build
|
||||
|
||||
- name: Compute short SHA
|
||||
run: echo "SHORT_SHA=$(echo $GITHUB_SHA | head -c 8)" >> "$GITHUB_ENV"
|
||||
|
||||
- name: Build bcda
|
||||
run: docker build -f infra/images/bcda.Dockerfile -t local/bcda:build .
|
||||
|
||||
- name: Push bcda
|
||||
run: |
|
||||
docker save local/bcda:build -o /tmp/bcda.tar
|
||||
crane push /tmp/bcda.tar git:3000/homelab/stack/bcda:${{ env.SHORT_SHA }} --insecure
|
||||
crane push /tmp/bcda.tar git:3000/homelab/stack/bcda:latest --insecure
|
||||
|
||||
- name: File failure issue
|
||||
if: failure()
|
||||
env:
|
||||
GITEA_TOKEN: ${{ secrets.DEPLOY_TOKEN }}
|
||||
run: |
|
||||
# Jobs that never install uv (image builds, infra checks) still
|
||||
# need it here — otherwise the filer dies with "uv: command not
|
||||
# found" and the failure is never filed.
|
||||
command -v uv >/dev/null 2>&1 || curl -LsSf https://astral.sh/uv/install.sh | sh
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
uv sync --no-dev --quiet 2>/dev/null || true
|
||||
uv run python -m api.diag.ci \
|
||||
--workflow "Deploy" --job "bcda" \
|
||||
--run "${{ github.run_number }}" \
|
||||
--sha "${{ github.sha }}" \
|
||||
--ref "${{ github.ref }}" || true
|
||||
|
||||
llm:
|
||||
runs-on: ubuntu-latest
|
||||
needs: [changes]
|
||||
@@ -412,7 +472,7 @@ jobs:
|
||||
|
||||
report:
|
||||
runs-on: ubuntu-latest
|
||||
needs: [changes, notebooks, zotero, docs, api, llm, mc]
|
||||
needs: [changes, notebooks, zotero, docs, api, bcda, llm, mc]
|
||||
if: always() && !cancelled()
|
||||
steps:
|
||||
- name: Checkout
|
||||
|
||||
@@ -101,6 +101,22 @@ jobs:
|
||||
crane push /tmp/api.tar git:3000/homelab/stack/api:hardened --insecure
|
||||
crane push /tmp/api.tar git:3000/homelab/stack/api:latest --insecure
|
||||
|
||||
- name: Build bcda
|
||||
id: build_bcda
|
||||
continue-on-error: true
|
||||
run: docker build --pull --no-cache -f infra/images/bcda.Dockerfile -t local/bcda:build .
|
||||
|
||||
- name: Scan bcda
|
||||
if: ${{ steps.build_bcda.outcome == 'success' }}
|
||||
run: trivy image --severity HIGH,CRITICAL --exit-code 0 --format json -o bcda-scan.json local/bcda:build
|
||||
|
||||
- name: Push bcda
|
||||
if: ${{ steps.build_bcda.outcome == 'success' }}
|
||||
run: |
|
||||
docker save local/bcda:build -o /tmp/bcda.tar
|
||||
crane push /tmp/bcda.tar git:3000/homelab/stack/bcda:hardened --insecure
|
||||
crane push /tmp/bcda.tar git:3000/homelab/stack/bcda:latest --insecure
|
||||
|
||||
- name: Build llm
|
||||
id: build_llm
|
||||
continue-on-error: true
|
||||
@@ -138,7 +154,7 @@ jobs:
|
||||
GITEA_TOKEN: ${{ secrets.DEPLOY_TOKEN }}
|
||||
run: |
|
||||
uv sync --no-dev
|
||||
for f in notebooks-scan.json zotero-scan.json docs-scan.json api-scan.json llm-scan.json mc-scan.json; do
|
||||
for f in notebooks-scan.json zotero-scan.json docs-scan.json api-scan.json bcda-scan.json llm-scan.json mc-scan.json; do
|
||||
if [ -f "$f" ]; then
|
||||
uv run python -m api.diag.vuln --close "$f" || \
|
||||
uv run python -m api.diag.vuln "$f" || true
|
||||
@@ -152,6 +168,7 @@ jobs:
|
||||
[ "${{ steps.build_zotero.outcome }}" = success ] || failed="$failed zotero"
|
||||
[ "${{ steps.build_docs.outcome }}" = success ] || failed="$failed docs"
|
||||
[ "${{ steps.build_api.outcome }}" = success ] || failed="$failed api"
|
||||
[ "${{ steps.build_bcda.outcome }}" = success ] || failed="$failed bcda"
|
||||
[ "${{ steps.build_llm.outcome }}" = success ] || failed="$failed llm"
|
||||
[ "${{ steps.build_mc.outcome }}" = success ] || failed="$failed mc"
|
||||
if [ -n "$failed" ]; then
|
||||
|
||||
@@ -16,6 +16,10 @@ on:
|
||||
- 'infra/images/api.Dockerfile'
|
||||
- 'src/**'
|
||||
- 'pyproject.toml'
|
||||
- 'infra/images/bcda.Dockerfile'
|
||||
- 'infra/images/bcda/**'
|
||||
- 'src/**'
|
||||
- 'pyproject.toml'
|
||||
- 'infra/images/llm.Dockerfile'
|
||||
- 'src/**'
|
||||
- 'pyproject.toml'
|
||||
@@ -33,6 +37,10 @@ on:
|
||||
- 'infra/images/api.Dockerfile'
|
||||
- 'src/**'
|
||||
- 'pyproject.toml'
|
||||
- 'infra/images/bcda.Dockerfile'
|
||||
- 'infra/images/bcda/**'
|
||||
- 'src/**'
|
||||
- 'pyproject.toml'
|
||||
- 'infra/images/llm.Dockerfile'
|
||||
- 'src/**'
|
||||
- 'pyproject.toml'
|
||||
@@ -175,6 +183,39 @@ jobs:
|
||||
--sha "${{ github.sha }}" \
|
||||
--ref "${{ github.ref }}" || true
|
||||
|
||||
bcda:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: https://github.com/actions/checkout@v4
|
||||
|
||||
- name: Hadolint bcda
|
||||
uses: https://github.com/hadolint/hadolint-action@v3.1.0
|
||||
with:
|
||||
dockerfile: infra/images/bcda.Dockerfile
|
||||
|
||||
|
||||
|
||||
- name: Build bcda
|
||||
run: docker build -f infra/images/bcda.Dockerfile -t local/bcda:build .
|
||||
|
||||
- name: File failure issue
|
||||
if: failure()
|
||||
env:
|
||||
GITEA_TOKEN: ${{ secrets.DEPLOY_TOKEN }}
|
||||
run: |
|
||||
# Jobs that never install uv (image builds, infra checks) still
|
||||
# need it here — otherwise the filer dies with "uv: command not
|
||||
# found" and the failure is never filed.
|
||||
command -v uv >/dev/null 2>&1 || curl -LsSf https://astral.sh/uv/install.sh | sh
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
uv sync --no-dev --quiet 2>/dev/null || true
|
||||
uv run python -m api.diag.ci \
|
||||
--workflow "Infra CI" --job "bcda" \
|
||||
--run "${{ github.run_number }}" \
|
||||
--sha "${{ github.sha }}" \
|
||||
--ref "${{ github.ref }}" || true
|
||||
|
||||
llm:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
@@ -74,6 +74,15 @@ jobs:
|
||||
crane push /tmp/api.tar git:3000/homelab/stack/api:${{ env.SHORT_SHA }} --insecure
|
||||
crane push /tmp/api.tar git:3000/homelab/stack/api:latest --insecure
|
||||
|
||||
- name: Build bcda
|
||||
run: docker build -f infra/images/bcda.Dockerfile -t local/bcda:build .
|
||||
|
||||
- name: Push bcda
|
||||
run: |
|
||||
docker save local/bcda:build -o /tmp/bcda.tar
|
||||
crane push /tmp/bcda.tar git:3000/homelab/stack/bcda:${{ env.SHORT_SHA }} --insecure
|
||||
crane push /tmp/bcda.tar git:3000/homelab/stack/bcda:latest --insecure
|
||||
|
||||
- name: Build llm
|
||||
run: docker build -f infra/images/llm.Dockerfile -t local/llm:build .
|
||||
|
||||
@@ -104,6 +113,9 @@ jobs:
|
||||
- name: Scan api
|
||||
run: trivy image --severity HIGH,CRITICAL --exit-code 0 --format json -o api-scan.json local/api:build
|
||||
|
||||
- name: Scan bcda
|
||||
run: trivy image --severity HIGH,CRITICAL --exit-code 0 --format json -o bcda-scan.json local/bcda:build
|
||||
|
||||
- name: Scan llm
|
||||
run: trivy image --severity HIGH,CRITICAL --exit-code 0 --format json -o llm-scan.json local/llm:build
|
||||
|
||||
@@ -115,7 +127,7 @@ jobs:
|
||||
GITEA_TOKEN: ${{ secrets.DEPLOY_TOKEN }}
|
||||
run: |
|
||||
uv sync --no-dev
|
||||
for f in notebooks-scan.json zotero-scan.json docs-scan.json api-scan.json llm-scan.json mc-scan.json; do
|
||||
for f in notebooks-scan.json zotero-scan.json docs-scan.json api-scan.json bcda-scan.json llm-scan.json mc-scan.json; do
|
||||
[ -f "$f" ] && uv run python -m api.diag.vuln "$f" || true
|
||||
done
|
||||
|
||||
|
||||
@@ -513,7 +513,8 @@ stack/
|
||||
├── dev/ Dev tooling
|
||||
│ ├── scripts/ Code generators, bootstrap, supply chain tools
|
||||
│ ├── hooks/ Git hooks (tracked, core.hooksPath = dev/hooks)
|
||||
│ ├── seeds/ Reference data (BCDA samples, CMS docs)
|
||||
│ ├── seeds/ Reference data (BCDA samples + v3 crosswalk, CMS docs)
|
||||
│ ├── vendor/ Sparse pins of upstream (CMSgov/bcda-app, bcda.cms.gov) — MANIFEST.toml
|
||||
│ └── pipelines/ CI-agnostic pipeline specs
|
||||
├── tests/ 14,010 tests at 99% coverage
|
||||
├── notebooks/ Marimo notebooks
|
||||
|
||||
351
cloud/databricks/README.md
Normal file
351
cloud/databricks/README.md
Normal file
@@ -0,0 +1,351 @@
|
||||
# BCDA manager as a Databricks App — playbook
|
||||
|
||||
The manager (`src/bcda/ui`, `stack bcda ui`) is a Streamlit app that today
|
||||
runs as a compose service behind Traefik with a local store under
|
||||
`data/bcda/` and DuckDB as its warehouse. This playbook makes the same code
|
||||
run as a **Databricks App** for a workspace user who **cannot create or
|
||||
manage catalogs**. Everything below is organised around that constraint.
|
||||
|
||||
Scaffold: `cloud/databricks/bcda-app/` (`databricks.yml`, `app.yaml`,
|
||||
`requirements.txt`, `.python-version`). Nothing in it creates a catalog,
|
||||
schema, volume or warehouse; it only *references* objects an admin
|
||||
provisioned once and asks for grants to the app's own service principal.
|
||||
|
||||
## 0 · TL;DR
|
||||
|
||||
| Topic | Decision |
|
||||
|---|---|
|
||||
| Deployment unit | A **separate bundle** (`cloud/databricks/bcda-app/databricks.yml`) with one `apps` resource. The main `bundle/` (jobs, schemas, volumes) stays admin-only: it *creates* schemas and volumes, which needs rights the app user does not have. |
|
||||
| Identity | **App service principal** for background work (pull, flatten, reconcile, load). **User authorization (on-behalf-of-user)** for the Data page, so Unity Catalog grants, row filters and column masks of the signed-in user apply. |
|
||||
| Store | A **Unity Catalog volume** reached through fsspec (`dbfs:/Volumes/<catalog>/bcda/bcda_store`). `Store` and `flatten_export` already take any fsspec URI. Local disk in an app is ephemeral. |
|
||||
| Tables | `bcda.*`, `input_layer.*` land as Delta tables in `<catalog>.bcda` through the **SQL warehouse** (`CREATE OR REPLACE TABLE … AS SELECT * FROM parquet.\`/Volumes/…\``). No DuckDB file, no replica. |
|
||||
| Reconciliation | Phase 1: run `bcda.sync` as is, over partitions copied to the app's ephemeral disk (`flat/` is 62 MB for the Large entity). Phase 2: port `_recompute` to the warehouse (the SQL is window functions + `UNION ALL BY NAME`, both supported by Databricks SQL). |
|
||||
| Heavy work | The EOB baseline (2.2 GB ndjson, 6 min on the sandbox) is CPU and network work the app runtime is "optimized for UI rendering, not data processing" for. Run it in the app first (Large size), then move it to a **Lakeflow job** the app triggers and watches (phase 3). |
|
||||
| Compute | **Medium** (2 vCPU / 6 GB, the default) for the UI; **Large** (4 vCPU / 12 GB) only while a baseline pull runs. Stopped apps cost nothing. |
|
||||
| Network | BCDA is an external API. If the workspace runs a *restricted* serverless network policy, `sandbox.bcda.cms.gov` and `api.bcda.cms.gov` must be allow-listed, plus the Databricks and PyPI domains every app needs. |
|
||||
| Python | Apps default to **3.11**; the repo requires **≥ 3.12**. The scaffold pins 3.12 through uv (`.python-version` + `pyproject`), which the platform honours for uv projects. |
|
||||
|
||||
## 1 · Platform facts the design rests on
|
||||
|
||||
Verified against the Databricks docs on 2026-10-25 (links in §9):
|
||||
|
||||
- An app is a containerised service on serverless compute. **In-memory
|
||||
state and local files do not survive a restart or redeploy.**
|
||||
- Runtime: Ubuntu 22.04, Python 3.11 in a dedicated venv, uv 0.10.2.
|
||||
Dependencies from `requirements.txt` (pip) or `pyproject.toml` (uv);
|
||||
pinned versions override pre-installed packages. No `apt`.
|
||||
- `app.yaml`: `command` (a list, **not run through a shell**; only
|
||||
`DATABRICKS_APP_PORT` is substituted) and `env` entries with `value` or
|
||||
`valueFrom: <resource key>`. Streamlit gets `STREAMLIT_SERVER_PORT`,
|
||||
`STREAMLIT_SERVER_ADDRESS=0.0.0.0`, `STREAMLIT_SERVER_HEADLESS=true`,
|
||||
`STREAMLIT_BROWSER_GATHER_USAGE_STATS=false` set for it.
|
||||
- Injected: `DATABRICKS_HOST`, `DATABRICKS_APP_NAME`,
|
||||
`DATABRICKS_WORKSPACE_ID`, `DATABRICKS_APP_PORT`,
|
||||
`DATABRICKS_CLIENT_ID` / `DATABRICKS_CLIENT_SECRET` (the app's service
|
||||
principal; the SDK picks them up). With app telemetry on:
|
||||
`OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4314`, `OTEL_SERVICE_NAME`.
|
||||
- App resources (declared on the app, exposed by `valueFrom`): SQL
|
||||
warehouse → id (Can use / Can manage); secret → decrypted value (Can
|
||||
read / write / manage); volume → `/Volumes/<catalog>/<schema>/<volume>`
|
||||
(Can read / Can read and write); job → id (Can view / Can manage run /
|
||||
Can manage); table → full name (Select / Modify); Lakebase, serving,
|
||||
Genie, experiment, function, connection, vector-search index. **Apps
|
||||
must use existing resources and can't create new ones**; adding a
|
||||
resource needs *Can manage* on both the resource and the app.
|
||||
- Two identities: the per-app **service principal** (shared by all users;
|
||||
needs explicit grants on the warehouse *and* each UC object) and
|
||||
**user authorization** (the user's SSO token forwarded as
|
||||
`X-Forwarded-Access-Token`; in Streamlit:
|
||||
`st.context.headers.get("X-Forwarded-Access-Token")`). Scopes are
|
||||
opt-in per app (`sql`, `sql:restricted-query`, `files`,
|
||||
`catalog.tables`, …; default is identity-only). A workspace admin can
|
||||
restrict or disable the allowed scopes.
|
||||
- Compute: Medium up to 2 vCPU / 6 GB (default), Large up to 4 vCPU /
|
||||
12 GB (`compute_size: MEDIUM | LARGE | XLARGE` in the bundle, XLARGE
|
||||
depending on workspace configuration); resizing keeps the old size
|
||||
until the update finishes.
|
||||
- Platform contract: listen on `0.0.0.0:$DATABRICKS_APP_PORT`, exit
|
||||
within **15 s of SIGTERM** (else SIGKILL), speak H2C (TLS is theirs),
|
||||
log to **stdout/stderr** (not local files).
|
||||
- Limits: 100 apps per workspace; app source files **≤ 10 MB each**;
|
||||
Files API individual file 500 MB (workspace files row; volumes
|
||||
undocumented on that page).
|
||||
- Sharing: `CAN_USE` / `CAN_MANAGE` on the app; users must be in the
|
||||
Databricks account.
|
||||
- Deploy: UI, `databricks apps deploy <name> --source-code-path …`
|
||||
(after `databricks sync`), Git-backed (`--git-branch`), or a bundle
|
||||
(`databricks bundle deploy` + `bundle run`). The Python
|
||||
`databricks-bundles` package pinned here (0.295.0) has **no `apps`
|
||||
module**, so the app resource is YAML.
|
||||
- Local disk size inside the container is **not documented**. Treat it as
|
||||
scratch for one job's partitions, not for the raw exports.
|
||||
|
||||
## 2 · Permissions: what the app user can and cannot do
|
||||
|
||||
The user deploying and running the app has **no `CREATE CATALOG` and does
|
||||
not own a catalog**. Unity Catalog grants are explicit — nothing is
|
||||
implied by a parent grant or by ownership of something else — so the split
|
||||
is:
|
||||
|
||||
### 2.1 Once, by a metastore/catalog admin
|
||||
|
||||
```sql
|
||||
-- an existing catalog, e.g. the dev target in stack.toml
|
||||
USE CATALOG aco_dev;
|
||||
|
||||
CREATE SCHEMA IF NOT EXISTS bcda COMMENT 'BCDA manager: store volume + bcda.* tables';
|
||||
CREATE VOLUME IF NOT EXISTS bcda.bcda_store COMMENT 'Store root: jobs/files ledgers, exports/, flat/';
|
||||
|
||||
-- secrets: scope `stack` already mapped in stack.toml [databricks.secrets]
|
||||
-- databricks secrets create-scope stack
|
||||
-- databricks secrets put-secret stack bcda-client-id
|
||||
-- databricks secrets put-secret stack bcda-client-secret
|
||||
```
|
||||
|
||||
The app's service principal does not exist until the app does. After the
|
||||
first `databricks bundle deploy`, read its id from the app's
|
||||
**Authorization** tab (or `databricks apps get bcda-manager`), then:
|
||||
|
||||
```sql
|
||||
-- <SP> = the app service principal's application id
|
||||
GRANT USE CATALOG ON CATALOG aco_dev TO `<SP>`;
|
||||
GRANT USE SCHEMA, CREATE TABLE,
|
||||
MODIFY, SELECT ON SCHEMA aco_dev.bcda TO `<SP>`;
|
||||
GRANT READ VOLUME, WRITE VOLUME ON VOLUME aco_dev.bcda.bcda_store TO `<SP>`;
|
||||
-- the connector writes input_layer.* too
|
||||
GRANT USE SCHEMA, CREATE TABLE, MODIFY, SELECT ON SCHEMA aco_dev.input_layer TO `<SP>`;
|
||||
```
|
||||
|
||||
Plus, outside SQL: `CAN USE` on the SQL warehouse, `READ` on the two
|
||||
secrets, and (phase 3) `CAN MANAGE RUN` on the ingest job. The bundle's
|
||||
`resources:` block asks for exactly these on the app and the deploy
|
||||
attaches them. Attaching a volume, table or function as a `uc_securable`
|
||||
resource also grants the app `USE CATALOG` and `USE SCHEMA` on its
|
||||
parents automatically (bundle resources reference), so of the SQL above
|
||||
only the schema-level `CREATE TABLE, MODIFY, SELECT` (and the
|
||||
`input_layer` block) still need someone who holds `MANAGE` on the schema
|
||||
or owns it.
|
||||
|
||||
For the people who will *use* the app (the Data page runs as them):
|
||||
|
||||
```sql
|
||||
GRANT USE CATALOG ON CATALOG aco_dev TO `bcda-analysts`;
|
||||
GRANT USE SCHEMA, SELECT ON SCHEMA aco_dev.bcda TO `bcda-analysts`;
|
||||
GRANT USE SCHEMA, SELECT ON SCHEMA aco_dev.input_layer TO `bcda-analysts`;
|
||||
```
|
||||
|
||||
### 2.2 What the app user needs
|
||||
|
||||
- `CAN_MANAGE` on the app (the bundle creates it as the deployer).
|
||||
- `CAN USE` on the warehouse, `READ` on the secrets, `READ VOLUME` /
|
||||
`WRITE VOLUME` on the volume: required to *attach* them as app
|
||||
resources (the platform checks *Can manage* on the resource when you
|
||||
add it in the UI; via the bundle the deployer must at least be able to
|
||||
reference them — confirm in your workspace, policies vary).
|
||||
- Nothing on the catalog beyond `USE CATALOG`.
|
||||
|
||||
### 2.3 What not to run
|
||||
|
||||
- `stack lake deploy --target databricks` / the main `bundle/`: both
|
||||
create schemas and a volume (`bundle/resources/__init__.py`), which
|
||||
needs `CREATE SCHEMA` / `CREATE VOLUME` on the catalog.
|
||||
- `dev/scripts/setup_unity_catalog.py` without an admin: it creates
|
||||
schemas (the catalog itself must already exist — the script says so).
|
||||
|
||||
## 3 · Architecture mapping
|
||||
|
||||
| Compose service today | Databricks App |
|
||||
|---|---|
|
||||
| Traefik + oauth2-proxy (Gitea SSO) | Platform SSO; share with `CAN_USE`. No Traefik route, no DNS, no cert. |
|
||||
| `./data/bcda` bind mount (`Store`, `flat/`, logs) | UC volume `aco_dev.bcda.bcda_store` via fsspec-databricks (`dbfs:/Volumes/aco_dev/bcda/bcda_store`). |
|
||||
| `BCDA_CLIENT_ID/SECRET` from `.env` | `valueFrom: secret` (scope `stack`, keys `bcda-client-id`, `bcda-client-secret`). |
|
||||
| DuckDB `aco.duckdb` + replica | Delta tables in `aco_dev.bcda` / `aco_dev.input_layer`, written and read through the SQL warehouse. |
|
||||
| `bcda.sync` DuckDB recompute over `flat/history/*` | Phase 1 unchanged on ephemeral disk; phase 2 on the warehouse. |
|
||||
| Connector pipeline (`bcda.pipe.cclf`) via `DuckDBContext` | `EnterpriseContext` (dialect `databricks`) or the transpiled SQL under `bundle/sql/` — the same expressions already generate Databricks SQL. |
|
||||
| `/metrics` on :8502 scraped by Prometheus | App telemetry: when enabled the runtime sets `OTEL_EXPORTER_OTLP_ENDPOINT`; `perf` already speaks OTLP. No second port. |
|
||||
| `data/bcda/log.jsonl` | stdout (the platform captures it); keep JSON lines. |
|
||||
| `docker compose up -d bcda` | `databricks bundle deploy && databricks bundle run bcda_manager`. |
|
||||
|
||||
### Why the store goes on a volume, not Lakebase or workspace files
|
||||
|
||||
The store is files: ndjson parts up to hundreds of MB, Parquet partitions,
|
||||
two append-only Parquet ledgers and a JSON manifest per job. Volumes are
|
||||
the governed file surface in Unity Catalog and the app can get exactly the
|
||||
`READ VOLUME`/`WRITE VOLUME` it needs on one volume. `/Volumes` is **not
|
||||
mounted** inside an app container (community reports; no official mount),
|
||||
so access goes through the Files API — `fsspec-databricks` wraps it with
|
||||
Databricks unified auth, which is what the injected service-principal
|
||||
credentials provide. It is a one-maintainer beta package (0.2.1,
|
||||
2026-10-23); pin it, and keep the Files API via `WorkspaceClient.files` as
|
||||
the fallback for the few operations the store needs (`put_file`, `open`,
|
||||
`exists`, `mkdirs`, `glob`).
|
||||
|
||||
## 4 · Code changes the playbook assumes (small, listed so they are not surprises)
|
||||
|
||||
1. **Store root from the environment.** `service.store_path()` reads
|
||||
`conf.path("storage.bcda")`, which is a local `Path`. Add
|
||||
`BCDA_STORE_URI` (any fsspec URI) that wins when set; `make_store`
|
||||
already accepts a URI and `storage_options`. `app.yaml` sets it from
|
||||
the volume resource (`valueFrom: bcda_store` gives `/Volumes/…`;
|
||||
prefix `dbfs:` in code or set the value directly).
|
||||
2. **Register the fsspec driver at import** when `BCDA_STORE_URI` starts
|
||||
with `dbfs:` (`import fsspec_databricks; fsspec_databricks.use()`).
|
||||
3. **`bcda.sync` on a remote store (phase 1).** `_root(store)` assumes a
|
||||
local path. Give `apply()` a `workdir` (ephemeral `/tmp/bcda-sync`):
|
||||
copy the needed `flat/history/<key>/*.parquet` partitions and the
|
||||
current `flat/*.parquet` down, run the DuckDB recompute there, copy
|
||||
the new current tables and the ledger back. 62 MB for the Large
|
||||
entity; keep the raw exports on the volume only.
|
||||
4. **Loader target.** `load_bcda` writes DuckDB. Add a `databricks`
|
||||
path that runs, per table, on the warehouse:
|
||||
`CREATE OR REPLACE TABLE aco_dev.bcda.<table> AS SELECT * FROM
|
||||
parquet.\`/Volumes/aco_dev/bcda/bcda_store/flat/<table>.parquet\``,
|
||||
then the connector via `EnterpriseContext`. No replica publish.
|
||||
5. **Data page through the user's token.** `replica_connect()` returns a
|
||||
DuckDB connection; on Databricks return a `databricks.sql` connection
|
||||
with `access_token=st.context.headers["X-Forwarded-Access-Token"]`
|
||||
and the warehouse id from `DATABRICKS_WAREHOUSE_ID`. The page already
|
||||
caps results (`run_query(limit=1000)`). Requested scopes: `sql`
|
||||
(or `sql:restricted-query` for read-only).
|
||||
6. **Logging to stdout** when `DATABRICKS_APP_NAME` is set
|
||||
(`bcda.log.setup` currently writes `data/bcda/log.jsonl`).
|
||||
7. **Metrics**: skip `metrics.serve()` (no second port); leave
|
||||
`STACK_TELEMETRY` to the OTLP exporter when app telemetry is on.
|
||||
8. **Graceful stop**: the runner's threads are daemon threads; long runs
|
||||
must survive a redeploy by being resumable — they are
|
||||
(`Store.resume`, `stack bcda resume`), and the Sync page re-applies
|
||||
anything downloaded but not reconciled.
|
||||
|
||||
## 5 · Optimisation notes (what actually matters on this runtime)
|
||||
|
||||
- **Keep the app a control plane.** The runtime is sized for UI. The
|
||||
baseline EOB pull is 192 files / 2.2 GB and the flattener streams in
|
||||
2,000-resource batches, so memory stays flat, but it is minutes of CPU
|
||||
and network in a 2-vCPU container with other users' sessions on it.
|
||||
Phase 3 moves `export → flatten → reconcile → load` into a Lakeflow
|
||||
job (the main bundle already builds wheel tasks for `stack` commands)
|
||||
that the app triggers with `CAN MANAGE RUN` and polls — the docs' own
|
||||
"start, then poll" pattern for long operations.
|
||||
- **Size for the phase you are in.** Medium for day-to-day; switch to
|
||||
Large for the first baseline if it runs in-app, then back. The
|
||||
Exports page's one-job-per-type default also keeps each run small.
|
||||
- **Cache what is static.** Dictionary and crosswalk frames
|
||||
(`dictionary_frames`) and `vendor_status` are per-process constants:
|
||||
wrap with `st.cache_data`. Server job lists change: `ttl=60`.
|
||||
- **One connection per session, not per widget.** Create the SQL
|
||||
connector once per session (`st.session_state`), reuse it; the user's
|
||||
forwarded token can change between sessions, so key the cache on the
|
||||
token's hash and re-read the header every run (a community thread
|
||||
reports stale headers after a logout/login in the same tab).
|
||||
- **Serverless warehouse, small, auto-stop.** `stack.toml` already says
|
||||
`SMALL`, `auto_stop_mins = 10`. All heavy SQL (reconcile phase 2,
|
||||
loads, connector) runs there, not in the app.
|
||||
- **Never pull a table into the app.** The Data page already limits
|
||||
rows; the Sync and Store pages read ledgers of a few hundred rows.
|
||||
Keep `st.dataframe` on Polars frames; avoid `collect()` on anything
|
||||
that came from the warehouse unfiltered.
|
||||
- **Startup.** Imports in `service.py` are already lazy; keep
|
||||
`metrics.serve()` and vendor verification out of the import path.
|
||||
Pre-compute nothing at boot.
|
||||
- **Egress policy dry-run first.** If the workspace enforces a
|
||||
restricted network policy, test with the policy's dry-run mode: an
|
||||
app that cannot reach `sandbox.bcda.cms.gov` fails only when a user
|
||||
presses *Start export*.
|
||||
- **Source size.** Sync only what the app imports: `src/`,
|
||||
`pyproject.toml`, `uv.lock`, `stack.toml`, `dev/seeds/bcda_v3_*.csv`
|
||||
(dictionary page), `assets/icons/fav32.png`. Not `data/`, `dev/vendor`
|
||||
(13 MB, has a 1.5 MB xlsx and gzip fixtures), `dev/seeds` as a whole
|
||||
(157 MB; two ndjson files exceed the 10 MB per-file limit), `tuva/`,
|
||||
`infra/`. The scaffold's `sync.exclude` does this.
|
||||
- **Cost.** A stopped app costs nothing; running is billed per hour of
|
||||
compute at the chosen size. Stop it outside working hours if nobody
|
||||
uses it; the store is on the volume, nothing is lost.
|
||||
|
||||
## 6 · Runbook
|
||||
|
||||
```bash
|
||||
# 0 · prerequisites (admin): §2.1 schema, volume, secrets, warehouse; you: CLI ≥ 0.229 with OAuth U2M
|
||||
databricks auth login --host https://<workspace>.cloud.databricks.com
|
||||
|
||||
# 1 · set the three ids the scaffold references
|
||||
cd cloud/databricks/bcda-app
|
||||
export BCDA_WAREHOUSE_ID=<sql warehouse id> # databricks warehouses list
|
||||
# catalog/schema/volume names are variables in databricks.yml (defaults: aco_dev / bcda / bcda_store)
|
||||
|
||||
# 2 · dependencies file (regenerate when uv.lock changes)
|
||||
(cd ../../.. && uv export --no-dev --no-hashes --extra bcda --extra aco --extra conf \
|
||||
-o cloud/databricks/bcda-app/requirements.txt && echo "fsspec-databricks==0.2.1" >> cloud/databricks/bcda-app/requirements.txt \
|
||||
&& echo "databricks-sql-connector>=4.0" >> cloud/databricks/bcda-app/requirements.txt && echo "." >> cloud/databricks/bcda-app/requirements.txt)
|
||||
|
||||
# 3 · validate, deploy (creates the app + its service principal), start
|
||||
databricks bundle validate -t dev
|
||||
databricks bundle deploy -t dev
|
||||
databricks bundle run bcda_manager -t dev
|
||||
|
||||
# 4 · UC grants to the new service principal (admin, §2.1), then user authorization scopes
|
||||
databricks apps get bcda-manager-dev | jq .service_principal_client_id
|
||||
# App → Authorization → + Add scope: sql (and files if the Data page should read the volume as the user)
|
||||
|
||||
# 5 · share
|
||||
# App → Permissions → bcda-analysts: CAN_USE (or the permissions: block in databricks.yml)
|
||||
|
||||
# 6 · first run
|
||||
# Connect → preset/production creds from secrets → Exports: baseline, one job per type (Large size for this)
|
||||
# Sync → Reconcile now → Data page queries as you (OBO)
|
||||
|
||||
# 7 · logs and health
|
||||
databricks apps logs bcda-manager-dev # or the app's Logs tab
|
||||
```
|
||||
|
||||
Redeploy = `databricks bundle deploy` again; in-flight runs die with the
|
||||
container, so finish them with `stack bcda resume <key>` from the Store
|
||||
page's key list (or wait for the next apply, which skips nothing).
|
||||
|
||||
## 7 · Phases
|
||||
|
||||
| Phase | Scope | Done when |
|
||||
|---|---|---|
|
||||
| 1 | Store on the volume, local (ephemeral) reconcile, loader to Delta via warehouse, Data page via OBO, logs to stdout | A baseline and a `_since` delta round-trip from the app; `aco_dev.bcda.sync_ledger` shows both; Data page queries succeed for a `bcda-analysts` member who has no catalog rights |
|
||||
| 2 | `bcda.sync._recompute` as warehouse SQL over `parquet.\`/Volumes/…\`` partitions; keep the same ledger and invariants | `tests/bcda/test_sync.py` scenarios pass against a warehouse (parity test), app no longer copies partitions |
|
||||
| 3 | Ingest as a Lakeflow job triggered from the Exports/Sync pages; app only polls | Baseline pull runs with the app on Medium; job run id recorded on the store job row |
|
||||
| 4 | Telemetry to app OTLP; audit records of user actions (who started what) as structured logs | Traces/logs visible under the app's telemetry |
|
||||
|
||||
## 8 · Open questions to verify in the target workspace
|
||||
|
||||
- Whether `sync.paths` / `source_code_path` may point above the bundle
|
||||
root (`../../..`) in your CLI version. If not, move
|
||||
`cloud/databricks/bcda-app/databricks.yml` to a thin wrapper at the
|
||||
repo root under another bundle name, or build a wheel and sync only
|
||||
`app.yaml` + `requirements.txt` that installs it.
|
||||
|
||||
- Allowed OAuth scopes for apps (admin setting) — if `None`, the Data
|
||||
page must run as the service principal and every analyst needs
|
||||
`CAN_USE` on the app only; UC filters then do not apply.
|
||||
- Serverless network policy mode and whether `*.bcda.cms.gov` is allowed.
|
||||
- Whether the deploying user can attach the warehouse/secret/volume
|
||||
resources without `CAN MANAGE` on them (the UI requires it; bundles may
|
||||
as well).
|
||||
- Ephemeral disk headroom for phase 1 (62 MB of partitions is safe; a
|
||||
full raw EOB export is not meant to touch local disk).
|
||||
- `fsspec-databricks` write path on your cloud (AWS is listed as
|
||||
untested by the maintainer) — fall back to `WorkspaceClient.files` if
|
||||
multipart uploads misbehave.
|
||||
|
||||
## 9 · Sources
|
||||
|
||||
- Databricks Apps key concepts — https://docs.databricks.com/aws/en/dev-tools/databricks-apps/key-concepts
|
||||
- Apps environment (runtime, env vars) — https://docs.databricks.com/aws/en/dev-tools/databricks-apps/system-env
|
||||
- Configure app execution (`app.yaml`) — https://docs.databricks.com/aws/en/dev-tools/databricks-apps/app-runtime
|
||||
- Environment variables / `valueFrom` — https://docs.databricks.com/aws/en/dev-tools/databricks-apps/environment-variables
|
||||
- Add resources to an app — https://docs.databricks.com/aws/en/dev-tools/databricks-apps/resources
|
||||
- Authorization (service principal, user authorization, scopes) — https://docs.databricks.com/aws/en/dev-tools/databricks-apps/auth
|
||||
- Compute size — https://docs.databricks.com/aws/en/dev-tools/databricks-apps/compute-size
|
||||
- Best practices — https://docs.databricks.com/aws/en/dev-tools/databricks-apps/best-practices
|
||||
- Networking / serverless network policies — https://docs.databricks.com/gcp/en/dev-tools/databricks-apps/networking , https://learn.microsoft.com/en-in/Azure/databricks/security/network/serverless-network-security/network-policies
|
||||
- Deploy — https://docs.databricks.com/aws/en/dev-tools/databricks-apps/deploy
|
||||
- Resource limits — https://docs.databricks.com/aws/en/resources/limits
|
||||
- Bundles: apps tutorial and resources reference — https://docs.databricks.com/aws/en/dev-tools/bundles/apps-tutorial , https://docs.databricks.com/aws/en/dev-tools/bundles/resources
|
||||
- Unity Catalog privileges — https://docs.databricks.com/aws/en/data-governance/unity-catalog/access-control/privileges-reference , https://docs.databricks.com/aws/en/data-governance/unity-catalog/access-control/permissions-concepts
|
||||
- Volume files / Files API — https://docs.databricks.com/aws/files/volumes , https://docs.databricks.com/api/files/v2/file
|
||||
- fsspec-databricks — https://pypi.org/project/fsspec-databricks/
|
||||
- Community reports used only as caveats: `/Volumes` not mounted in apps (https://community.databricks.com/t5/administration-architecture/how-to-access-unitycatalog-s-volume-inside-databricks-app/m-p/134845), stale `X-Forwarded-Access-Token` after re-login (https://community.databricks.com/t5/administration-architecture/x-forwarded-access-token-occasionally-return-stale-values-from-a/td-p/163074)
|
||||
1
cloud/databricks/bcda-app/.python-version
Normal file
1
cloud/databricks/bcda-app/.python-version
Normal file
@@ -0,0 +1 @@
|
||||
3.12
|
||||
27
cloud/databricks/bcda-app/app.yaml
Normal file
27
cloud/databricks/bcda-app/app.yaml
Normal file
@@ -0,0 +1,27 @@
|
||||
# Runtime manifest for the BCDA manager on Databricks Apps.
|
||||
# The platform sets STREAMLIT_SERVER_PORT/ADDRESS/HEADLESS for Streamlit, so
|
||||
# `python -m bcda.ui` needs no port argument; it passes the fhirworx theme
|
||||
# file as --theme.base itself. Commands are not run through a shell.
|
||||
command: ["python", "-m", "bcda.ui"]
|
||||
env:
|
||||
# Store root on the Unity Catalog volume (fsspec-databricks: dbfs:/Volumes/…).
|
||||
# valueFrom: bcda_store would give the bare /Volumes path; see README §4.1.
|
||||
- name: BCDA_STORE_URI
|
||||
value: "dbfs:/Volumes/aco_dev/bcda/bcda_store"
|
||||
- name: BCDA_CLIENT_ID
|
||||
valueFrom: bcda_client_id
|
||||
- name: BCDA_CLIENT_SECRET
|
||||
valueFrom: bcda_client_secret
|
||||
- name: BCDA_BASE_URL
|
||||
value: "https://sandbox.bcda.cms.gov"
|
||||
- name: DATABRICKS_WAREHOUSE_ID
|
||||
valueFrom: sql_warehouse
|
||||
- name: BCDA_TARGET_CATALOG
|
||||
value: "aco_dev"
|
||||
- name: BCDA_TARGET_SCHEMA
|
||||
value: "bcda"
|
||||
# No second port on Apps; metrics go to app telemetry (OTLP) when enabled.
|
||||
- name: STACK_TELEMETRY
|
||||
value: "false"
|
||||
- name: BCDA_METRICS_PORT
|
||||
value: "0"
|
||||
104
cloud/databricks/bcda-app/databricks.yml
Normal file
104
cloud/databricks/bcda-app/databricks.yml
Normal file
@@ -0,0 +1,104 @@
|
||||
# BCDA manager as a Databricks App — a bundle of its own.
|
||||
#
|
||||
# Deliberately separate from the repo's main bundle (bundle/, generated by
|
||||
# dev/scripts/gen_config.py), which CREATES schemas and a volume and so needs
|
||||
# catalog-level rights. This one only references objects an admin provisioned
|
||||
# once (cloud/databricks/README.md §2.1) and asks for grants to the app's
|
||||
# service principal. Deploy from this directory:
|
||||
#
|
||||
# databricks bundle validate -t dev && databricks bundle deploy -t dev && databricks bundle run bcda_manager -t dev
|
||||
bundle:
|
||||
name: bcda-manager
|
||||
|
||||
variables:
|
||||
catalog:
|
||||
description: Existing catalog (no CREATE CATALOG needed)
|
||||
default: aco_dev
|
||||
schema:
|
||||
description: Existing schema holding the store volume and bcda.* tables
|
||||
default: bcda
|
||||
volume:
|
||||
description: Existing managed volume used as the store root
|
||||
default: bcda_store
|
||||
warehouse_id:
|
||||
description: SQL warehouse the app may use
|
||||
lookup:
|
||||
warehouse: stack-sql-warehouse
|
||||
secret_scope:
|
||||
default: stack
|
||||
users_group:
|
||||
description: Group that may open the app (Data page runs as them)
|
||||
default: bcda-analysts
|
||||
|
||||
# Only what the app imports. The whole repo is far over the 10 MB per-file
|
||||
# limit (dev/seeds ndjson, uv.lock is fine) and most of it is irrelevant.
|
||||
sync:
|
||||
paths:
|
||||
- ../../..
|
||||
include:
|
||||
- ../../../src/**
|
||||
- ../../../pyproject.toml
|
||||
- ../../../uv.lock
|
||||
- ../../../stack.toml
|
||||
- ../../../README.md
|
||||
- ../../../dev/seeds/bcda_v3_*.csv
|
||||
- ../../../assets/icons/fav32.png
|
||||
- ./app.yaml
|
||||
- ./requirements.txt
|
||||
- ./.python-version
|
||||
exclude:
|
||||
- ../../../data/**
|
||||
- ../../../dev/vendor/**
|
||||
- ../../../tuva/**
|
||||
- ../../../infra/**
|
||||
- ../../../docs/**
|
||||
- ../../../notebooks/**
|
||||
- ../../../.venv/**
|
||||
|
||||
resources:
|
||||
apps:
|
||||
bcda_manager:
|
||||
name: bcda-manager-${bundle.target}
|
||||
description: "BCDA v3 manager — exports, store, _since reconciliation, load, crosswalk"
|
||||
source_code_path: ../../..
|
||||
# MEDIUM (2 vCPU / 6 GB) for the UI; switch to LARGE while a baseline
|
||||
# pull runs in-app (README §5), back afterwards.
|
||||
compute_size: MEDIUM
|
||||
resources:
|
||||
- name: sql_warehouse
|
||||
sql_warehouse:
|
||||
id: ${var.warehouse_id}
|
||||
permission: CAN_USE
|
||||
- name: bcda_client_id
|
||||
secret:
|
||||
scope: ${var.secret_scope}
|
||||
key: bcda-client-id
|
||||
permission: READ
|
||||
- name: bcda_client_secret
|
||||
secret:
|
||||
scope: ${var.secret_scope}
|
||||
key: bcda-client-secret
|
||||
permission: READ
|
||||
- name: bcda_store
|
||||
uc_securable:
|
||||
securable_type: VOLUME
|
||||
securable_full_name: ${var.catalog}.${var.schema}.${var.volume}
|
||||
permission: WRITE_VOLUME
|
||||
# The Data page queries as the signed-in user; sql:restricted-query is
|
||||
# enough for read-only browsing. Admins may restrict allowed scopes.
|
||||
user_api_scopes:
|
||||
- sql:restricted-query
|
||||
permissions:
|
||||
- group_name: ${var.users_group}
|
||||
level: CAN_USE
|
||||
|
||||
targets:
|
||||
dev:
|
||||
mode: development
|
||||
default: true
|
||||
prod:
|
||||
mode: production
|
||||
variables:
|
||||
catalog: aco
|
||||
workspace:
|
||||
root_path: /Workspace/Shared/.bundle/${bundle.name}/${bundle.target}
|
||||
7
cloud/databricks/bcda-app/requirements.txt
Normal file
7
cloud/databricks/bcda-app/requirements.txt
Normal file
@@ -0,0 +1,7 @@
|
||||
# Regenerate from the lock (README §6 step 2):
|
||||
# uv export --no-dev --no-hashes --extra bcda --extra aco --extra conf -o cloud/databricks/bcda-app/requirements.txt
|
||||
# then append the three lines below. Keep exact pins: the platform installs
|
||||
# with pip and pinned versions override its pre-installed packages.
|
||||
fsspec-databricks==0.2.1
|
||||
databricks-sql-connector>=4.0
|
||||
.
|
||||
36
compose.yml
36
compose.yml
@@ -670,6 +670,42 @@ services:
|
||||
- no-new-privileges:true
|
||||
restart: unless-stopped
|
||||
|
||||
# BCDA manager (P52): Streamlit over the bcda client, store, loader,
|
||||
# connector pipeline, crosswalk and vendored-upstream tooling. Routed at
|
||||
# bcda.fhirworx.io behind git-sso. Writes data/bcda (exports) and
|
||||
# aco.duckdb (flatten + load + input_layer) and republishes the replica,
|
||||
# so it mounts ./data read-write like the api; dev/ is mounted read-only
|
||||
# for the vendored upstream, the crosswalk seeds and the vendor script.
|
||||
# Public sandbox credentials are built in; BCDA_CLIENT_ID/SECRET override.
|
||||
bcda:
|
||||
image: ${IMAGE_PREFIX:-fhirworx}/bcda:${COMMIT_SHA:-latest}
|
||||
pull_policy: if_not_present
|
||||
build:
|
||||
context: .
|
||||
dockerfile: infra/images/bcda.Dockerfile
|
||||
container_name: bcda
|
||||
networks:
|
||||
- gateway
|
||||
- observability
|
||||
environment:
|
||||
- BCDA_CLIENT_ID=${BCDA_CLIENT_ID:-}
|
||||
- BCDA_CLIENT_SECRET=${BCDA_CLIENT_SECRET:-}
|
||||
- BCDA_BASE_URL=${BCDA_BASE_URL:-https://sandbox.bcda.cms.gov}
|
||||
# /metrics on :8502 scraped by prometheus (infra/prometheus/targets);
|
||||
# traces to the collector like api and llm.
|
||||
- STACK_TELEMETRY=true
|
||||
- BCDA_METRICS_PORT=8502
|
||||
- OTEL_SERVICE_NAME=bcda
|
||||
- OTEL_EXPORTER_OTLP_ENDPOINT=http://otel-collector:4317
|
||||
volumes:
|
||||
- ./data:/app/data
|
||||
- ./dev:/app/dev:ro
|
||||
labels:
|
||||
- "promtail=true"
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
restart: unless-stopped
|
||||
|
||||
# SSO-guarded RAG chat UI (P34). Routed at llm.fhirworx.io via Traefik's
|
||||
# git-sso middleware ($reef in infra/traefik/dynamic/services.yml). Joins
|
||||
# gateway (Traefik), storage (postgres:5432 / pgvector), and data
|
||||
|
||||
@@ -839,6 +839,49 @@ jobs:
|
||||
return (".gitea/workflows/llm-golden.yml", content)
|
||||
|
||||
|
||||
def _gen_bcda_vendor(runner: str, uv_version: str, **_kw: object) -> tuple[str, str]:
|
||||
"""Weekly drift check of the sparsely vendored BCDA upstream (P52).
|
||||
|
||||
``dev/vendor/MANIFEST.toml`` pins CMSgov/bcda-app (the v3 handler
|
||||
and its tests, request validation, the OperationOutcome writer,
|
||||
the v3 Postman collection, gzip fixtures, sandbox config) and the
|
||||
bcda.cms.gov v3 data dictionary + sample files that
|
||||
``bcda.express.v3`` is tested against. ``--check`` compares the
|
||||
pinned blob/sha256 digests with upstream and exits 1 on drift; the
|
||||
failure step files the issue. Nothing is auto-committed — a
|
||||
payload change upstream is something a human reads before the
|
||||
flattener is re-pointed (``vendor_bcda_app.py --sync`` then
|
||||
``gen_bcda_v3_crosswalk.py``). Standard library only, so it runs
|
||||
before ``uv sync``.
|
||||
"""
|
||||
content = f"""\
|
||||
{_HEADER}
|
||||
name: BCDA Vendor
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
- cron: "30 5 * * 1"
|
||||
|
||||
jobs:
|
||||
bcda-vendor:
|
||||
runs-on: {runner}
|
||||
steps:
|
||||
{_checkout_step()}
|
||||
|
||||
{_setup_uv_step(uv_version)}
|
||||
|
||||
- name: Verify the vendored tree matches the manifest
|
||||
run: uv run --no-project python dev/scripts/vendor_bcda_app.py --verify
|
||||
|
||||
- name: Check CMSgov/bcda-app and bcda.cms.gov for drift
|
||||
run: uv run --no-project python dev/scripts/vendor_bcda_app.py --check
|
||||
|
||||
{_failure_step("BCDA Vendor", "bcda-vendor")}
|
||||
"""
|
||||
return (".gitea/workflows/bcda-vendor.yml", content)
|
||||
|
||||
|
||||
def _gen_release(runner: str, uv_version: str, **_kw: object) -> tuple[str, str]:
|
||||
content = f"""\
|
||||
{_HEADER}
|
||||
@@ -907,6 +950,7 @@ def emit(
|
||||
_gen_notebooks_integration,
|
||||
_gen_zotero_sync,
|
||||
_gen_llm_golden,
|
||||
_gen_bcda_vendor,
|
||||
_gen_release,
|
||||
):
|
||||
path, content = gen_fn(**common) # type: ignore[arg-type]
|
||||
|
||||
@@ -275,6 +275,7 @@ SUBDOMAINS = [
|
||||
"traefik",
|
||||
"auth",
|
||||
"llm",
|
||||
"bcda", # BCDA manager (P52) — Streamlit behind git-sso
|
||||
]
|
||||
|
||||
|
||||
@@ -352,6 +353,26 @@ def _sync_tunnel_dns(client: httpx.Client) -> None:
|
||||
|
||||
|
||||
def main() -> None:
|
||||
# `--dns-only`: a new subdomain needs two Cloudflare writes — the tunnel's
|
||||
# remote ingress list (it overrides the wildcard in infra/cloudflared/
|
||||
# config.yml, so an unlisted hostname answers 530 at the edge) and a
|
||||
# proxied CNAME to the tunnel (otherwise NXDOMAIN). Both come from
|
||||
# SUBDOMAINS above and only need CF_API_TOKEN, not the Gitea admin
|
||||
# password, so they can run on their own after adding a service.
|
||||
if "--dns-only" in sys.argv[1:]:
|
||||
if not os.environ.get("CF_API_TOKEN"):
|
||||
print(
|
||||
"ERROR: CF_API_TOKEN not set (Zone:DNS:Edit + Account:Cloudflare Tunnel:Edit)"
|
||||
)
|
||||
sys.exit(1)
|
||||
with httpx.Client(timeout=10) as client:
|
||||
print("==> Syncing tunnel config")
|
||||
_sync_tunnel_dns(client)
|
||||
print("==> Ensuring DNS records")
|
||||
_ensure_dns(client)
|
||||
print("==> Done")
|
||||
return
|
||||
|
||||
if not ADMIN_PASS:
|
||||
print("ERROR: GITEA_ADMIN_PASSWORD not set")
|
||||
sys.exit(1)
|
||||
@@ -439,6 +460,13 @@ def _ensure_dns(client: httpx.Client) -> None:
|
||||
if not r.json().get("success"):
|
||||
err = r.json().get("errors", [{}])[0].get("message", "unknown")
|
||||
print(f" FAIL: DNS list — {err}")
|
||||
if "Authentication" in err:
|
||||
# The tunnel write above only needs Account:Cloudflare Tunnel:Edit;
|
||||
# this one needs Zone:DNS:Edit *on the fhirworx.io zone*. A token
|
||||
# scoped to another zone passes the first and fails here.
|
||||
print(
|
||||
f" hint: the token must include Zone:DNS:Edit for {DOMAIN} (zone {zone})"
|
||||
)
|
||||
return
|
||||
|
||||
existing = {rec["name"] for rec in r.json()["result"]}
|
||||
|
||||
178
dev/scripts/gen_bcda_v3_crosswalk.py
Normal file
178
dev/scripts/gen_bcda_v3_crosswalk.py
Normal file
@@ -0,0 +1,178 @@
|
||||
"""Flatten the BCDA v3 Data Dictionary into crosswalk seed CSVs.
|
||||
|
||||
Reads the vendored ``dev/vendor/bcda-site/BCDA_v3_Data_Dictionary.xlsx``
|
||||
(synced by ``vendor_bcda_app.py``) and writes three seeds that
|
||||
``stack load seed`` lands in ``reference_data``:
|
||||
|
||||
- ``dev/seeds/bcda_v3_data_dictionary.csv`` — one row per v3 field:
|
||||
resource, claim type, field name, fhirPath, IDR ``sourceColumn``,
|
||||
``ccwMapping`` (the CCW/v2 variable the ``bcda.*`` table columns are
|
||||
named after), ``cclfMapping`` (CCLF file.element), profiles. This is
|
||||
the v2→v3 crosswalk the flatteners in ``bcda.express.v3`` follow.
|
||||
- ``dev/seeds/bcda_v3_cclf_crosswalk.csv`` — the ``CCLF-BCDA v3
|
||||
Mapping`` sheet: every CCLF element with the v3 field + fhirPath that
|
||||
replaces it (``#N/A`` → empty).
|
||||
- ``dev/seeds/bcda_v3_cclf_absent.csv`` — the CCLF elements BCDA v3
|
||||
does not carry (HICNs, FIPS county, address lines, BETOS, …).
|
||||
|
||||
Idempotent; rerun after ``--sync`` moves the dictionary.
|
||||
|
||||
uv run python dev/scripts/gen_bcda_v3_crosswalk.py
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import csv
|
||||
import re
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
ROOT = Path(__file__).resolve().parents[2]
|
||||
XLSX = ROOT / "dev" / "vendor" / "bcda-site" / "BCDA_v3_Data_Dictionary.xlsx"
|
||||
SEEDS = ROOT / "dev" / "seeds"
|
||||
|
||||
_NA = {None, "", "#N/A", "None"}
|
||||
|
||||
|
||||
def _clean(v: object) -> str:
|
||||
if v in _NA:
|
||||
return ""
|
||||
return " ".join(str(v).split())
|
||||
|
||||
|
||||
def _list(v: object) -> str:
|
||||
"""``"['A', 'B']"`` → ``"A;B"`` (the sheet stores python-ish lists)."""
|
||||
s = _clean(v)
|
||||
if s.startswith("[") and s.endswith("]"):
|
||||
inner = s[1:-1]
|
||||
return ";".join(p.strip().strip("'\"") for p in inner.split(",") if p.strip())
|
||||
return s
|
||||
|
||||
|
||||
def dictionary_rows(wb) -> list[dict]:
|
||||
ws = wb["Data Dictionary"]
|
||||
rows = ws.iter_rows(values_only=True)
|
||||
header = [str(h) for h in next(rows)]
|
||||
out = []
|
||||
for r in rows:
|
||||
d = dict(zip(header, r, strict=False))
|
||||
if not _clean(d.get("Field Name")):
|
||||
continue
|
||||
out.append(
|
||||
{
|
||||
"row": _clean(d.get("Row")),
|
||||
"fhir_resource": _clean(d.get("FHIR Resource")),
|
||||
"claim_type": _list(d.get("Coverage / Claim Type")),
|
||||
"field_name": _clean(d.get("Field Name")),
|
||||
"description": _clean(d.get("Description")),
|
||||
"fhir_path": _clean(d.get("fhirPath")),
|
||||
"example": _clean(d.get("example")),
|
||||
"source_view": _clean(d.get("sourceView")),
|
||||
"source_column": _clean(d.get("sourceColumn")),
|
||||
"sources": _list(d.get("sources")),
|
||||
"reference_table": _clean(d.get("referenceTable")),
|
||||
"cclf_mapping": _list(d.get("cclfMapping")),
|
||||
"ccw_mapping": _list(d.get("ccwMapping")),
|
||||
"profiles": _list(d.get("profiles")),
|
||||
}
|
||||
)
|
||||
return out
|
||||
|
||||
|
||||
_IDENT = re.compile(r"^[A-Z0-9_]+$")
|
||||
|
||||
|
||||
def _label_name(label: object, name: object) -> tuple[str, str]:
|
||||
"""(prose label, UPPER_SNAKE variable).
|
||||
|
||||
The sheet header says ``Field Label`` then ``Field Name`` but the
|
||||
data rows carry the CCLF variable (``CLM_CNTL_NUM``) under *Label*
|
||||
and the prose under *Name* — except the CCLF0 header rows, which
|
||||
are the other way round. Normalise by shape so ``field_name`` is
|
||||
always the variable.
|
||||
"""
|
||||
a, b = _clean(label), _clean(name)
|
||||
if _IDENT.match(a) and not _IDENT.match(b):
|
||||
return b, a
|
||||
return a, b
|
||||
|
||||
|
||||
def cclf_rows(wb) -> list[dict]:
|
||||
ws = wb["CCLF-BCDA v3 Mapping"]
|
||||
rows = ws.iter_rows(values_only=True)
|
||||
next(rows)
|
||||
out = []
|
||||
for r in rows:
|
||||
if not _clean(r[0]):
|
||||
continue
|
||||
label, name = _label_name(r[2], r[3])
|
||||
out.append(
|
||||
{
|
||||
"cclf_file": _clean(r[0]),
|
||||
"element": _clean(r[1]),
|
||||
"field_label": label,
|
||||
"field_name": name,
|
||||
"start_position": _clean(r[4]),
|
||||
"end_position": _clean(r[5]),
|
||||
"data_length": _clean(r[6]),
|
||||
"format": _clean(r[7]),
|
||||
"field_description": _clean(r[8]),
|
||||
"bcda_v3_field": _clean(r[12]),
|
||||
"fhir_path": _clean(r[13]),
|
||||
}
|
||||
)
|
||||
return out
|
||||
|
||||
|
||||
def absent_rows(wb) -> list[dict]:
|
||||
ws = wb["CCLF fields absent from BCDA v3"]
|
||||
rows = ws.iter_rows(values_only=True)
|
||||
next(rows)
|
||||
out = []
|
||||
for r in rows:
|
||||
if r[1] in _NA:
|
||||
continue
|
||||
out.append(
|
||||
{
|
||||
"cclf_file": _clean(r[0]),
|
||||
"element": _clean(r[1]),
|
||||
"field_name": _clean(r[2]),
|
||||
"field_description": _clean(r[3]),
|
||||
}
|
||||
)
|
||||
return out
|
||||
|
||||
|
||||
def _write(path: Path, rows: list[dict]) -> int:
|
||||
path.parent.mkdir(parents=True, exist_ok=True)
|
||||
with path.open("w", newline="") as f:
|
||||
w = csv.DictWriter(f, fieldnames=list(rows[0].keys()))
|
||||
w.writeheader()
|
||||
w.writerows(rows)
|
||||
return len(rows)
|
||||
|
||||
|
||||
def main(xlsx: Path = XLSX, seeds: Path = SEEDS) -> dict[str, int]:
|
||||
import openpyxl
|
||||
|
||||
# data_only: the CCLF sheet is XLOOKUP formulas; we want their cached
|
||||
# results, not the formula text.
|
||||
wb = openpyxl.load_workbook(xlsx, read_only=True, data_only=True)
|
||||
counts = {
|
||||
"bcda_v3_data_dictionary": _write(
|
||||
seeds / "bcda_v3_data_dictionary.csv", dictionary_rows(wb)
|
||||
),
|
||||
"bcda_v3_cclf_crosswalk": _write(
|
||||
seeds / "bcda_v3_cclf_crosswalk.csv", cclf_rows(wb)
|
||||
),
|
||||
"bcda_v3_cclf_absent": _write(
|
||||
seeds / "bcda_v3_cclf_absent.csv", absent_rows(wb)
|
||||
),
|
||||
}
|
||||
return counts
|
||||
|
||||
|
||||
if __name__ == "__main__": # pragma: no cover
|
||||
for name, n in main().items():
|
||||
print(f"{name}: {n} rows")
|
||||
sys.exit(0)
|
||||
256
dev/scripts/vendor_bcda_app.py
Normal file
256
dev/scripts/vendor_bcda_app.py
Normal file
@@ -0,0 +1,256 @@
|
||||
"""Sparse vendoring of BCDA upstream artefacts (CMSgov/bcda-app + bcda.cms.gov).
|
||||
|
||||
The ``bcda`` module is tested against what CMS actually ships, not
|
||||
against our reading of it: the v3 handler and its tests, the request
|
||||
validation that decides which headers and parameters are legal, the
|
||||
OperationOutcome writer, the v3 Postman smoke collection, the gzip
|
||||
download fixtures, and the official v3 sample ndjson + data dictionary.
|
||||
That is a few hundred kilobytes of a 50 MB repository, so this is a
|
||||
manifest, not a submodule.
|
||||
|
||||
Manifest: ``dev/vendor/MANIFEST.toml``
|
||||
|
||||
[[source]]
|
||||
name = "bcda-app"
|
||||
kind = "github"
|
||||
repo = "CMSgov/bcda-app"
|
||||
ref = "main"
|
||||
commit = "<sha the files were last synced from>"
|
||||
files = ["swagger.json", ...]
|
||||
|
||||
[[source]]
|
||||
name = "bcda-site"
|
||||
kind = "https"
|
||||
base = "https://bcda.cms.gov/assets/downloads/"
|
||||
files = ["BCDA_v3_Data_Dictionary.xlsx", ...]
|
||||
|
||||
[sha256]
|
||||
"bcda-app/swagger.json" = "..." # local file digests
|
||||
|
||||
Usage::
|
||||
|
||||
uv run python dev/scripts/vendor_bcda_app.py --check # drift? exit 1
|
||||
uv run python dev/scripts/vendor_bcda_app.py --sync # refresh + rewrite manifest
|
||||
uv run python dev/scripts/vendor_bcda_app.py --verify # local tree matches manifest (offline)
|
||||
|
||||
``--check`` compares upstream against the manifest without touching
|
||||
the tree: for GitHub it resolves ``ref`` to a commit and diffs the blob
|
||||
shas of the listed paths against the pinned commit's tree; for plain
|
||||
HTTPS it downloads and compares sha256. The weekly ``bcda-vendor``
|
||||
workflow runs ``--check`` and files an issue on drift — a payload
|
||||
change upstream is something a human should read before the
|
||||
flattener is re-pointed, so nothing is auto-committed.
|
||||
|
||||
Standard library only: this runs on a bare runner before ``uv sync``.
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import argparse
|
||||
import hashlib
|
||||
import json
|
||||
import sys
|
||||
import tomllib
|
||||
import urllib.request
|
||||
from pathlib import Path
|
||||
|
||||
ROOT = Path(__file__).resolve().parents[2]
|
||||
VENDOR = ROOT / "dev" / "vendor"
|
||||
MANIFEST = VENDOR / "MANIFEST.toml"
|
||||
UA = {"User-Agent": "stack-vendor-bcda/1.0 (+https://git.fhirworx.io/homelab/stack)"}
|
||||
|
||||
|
||||
# ── I/O ─────────────────────────────────────────────────────────
|
||||
|
||||
|
||||
def _get(url: str, *, accept: str | None = None) -> bytes:
|
||||
headers = dict(UA)
|
||||
if accept:
|
||||
headers["Accept"] = accept
|
||||
req = urllib.request.Request(url, headers=headers)
|
||||
with urllib.request.urlopen(req, timeout=120) as resp: # noqa: S310 — https only
|
||||
return resp.read()
|
||||
|
||||
|
||||
def _sha256(data: bytes) -> str:
|
||||
return hashlib.sha256(data).hexdigest()
|
||||
|
||||
|
||||
def _git_blob_sha(data: bytes) -> str:
|
||||
"""Git's blob object id for ``data`` (what the trees API reports)."""
|
||||
header = f"blob {len(data)}\0".encode()
|
||||
return hashlib.sha1(header + data).hexdigest() # noqa: S324 — git's own id
|
||||
|
||||
|
||||
def load_manifest(path: Path | None = None) -> dict:
|
||||
return tomllib.loads((path or MANIFEST).read_text())
|
||||
|
||||
|
||||
def dump_manifest(m: dict, path: Path | None = None) -> None:
|
||||
"""Write the manifest back. Hand-rolled TOML: two array-of-table
|
||||
sources plus one flat string table — no dependency needed."""
|
||||
lines = [
|
||||
"# Sparse vendoring manifest — regenerate with",
|
||||
"# uv run python dev/scripts/vendor_bcda_app.py --sync",
|
||||
"# Check for upstream drift (no changes written) with --check.",
|
||||
"",
|
||||
]
|
||||
for src in m["source"]:
|
||||
lines.append("[[source]]")
|
||||
for key in ("name", "kind", "repo", "ref", "commit", "base", "license"):
|
||||
if key in src:
|
||||
lines.append(f'{key} = "{src[key]}"')
|
||||
lines.append("files = [")
|
||||
for f in src["files"]:
|
||||
lines.append(f' "{f}",')
|
||||
lines.append("]")
|
||||
lines.append("")
|
||||
lines.append("[sha256]")
|
||||
for key in sorted(m.get("sha256", {})):
|
||||
lines.append(f'"{key}" = "{m["sha256"][key]}"')
|
||||
lines.append("")
|
||||
(path or MANIFEST).write_text("\n".join(lines))
|
||||
|
||||
|
||||
# ── GitHub source ───────────────────────────────────────────────
|
||||
|
||||
|
||||
def _gh_json(url: str) -> dict:
|
||||
return json.loads(_get(url, accept="application/vnd.github+json"))
|
||||
|
||||
|
||||
def _gh_head_commit(repo: str, ref: str) -> str:
|
||||
return _gh_json(f"https://api.github.com/repos/{repo}/commits/{ref}")["sha"]
|
||||
|
||||
|
||||
def _gh_tree(repo: str, commit: str) -> dict[str, str]:
|
||||
"""``{path: blob_sha}`` for every blob at ``commit``."""
|
||||
data = _gh_json(
|
||||
f"https://api.github.com/repos/{repo}/git/trees/{commit}?recursive=1"
|
||||
)
|
||||
if data.get("truncated"):
|
||||
raise RuntimeError(f"{repo}@{commit}: tree listing truncated")
|
||||
return {e["path"]: e["sha"] for e in data["tree"] if e["type"] == "blob"}
|
||||
|
||||
|
||||
def _gh_raw(repo: str, commit: str, path: str) -> bytes:
|
||||
return _get(f"https://raw.githubusercontent.com/{repo}/{commit}/{path}")
|
||||
|
||||
|
||||
# ── Operations ──────────────────────────────────────────────────
|
||||
|
||||
|
||||
def verify(m: dict) -> list[str]:
|
||||
"""Offline: every manifest file exists locally with the recorded sha256."""
|
||||
problems = []
|
||||
for src in m["source"]:
|
||||
for f in src["files"]:
|
||||
key = f"{src['name']}/{f}"
|
||||
local = VENDOR / key
|
||||
if not local.exists():
|
||||
problems.append(f"missing {key}")
|
||||
continue
|
||||
want = m.get("sha256", {}).get(key)
|
||||
got = _sha256(local.read_bytes())
|
||||
if want != got:
|
||||
problems.append(f"sha256 mismatch {key}: manifest {want} local {got}")
|
||||
return problems
|
||||
|
||||
|
||||
def check(m: dict) -> list[str]:
|
||||
"""Online: what upstream changed relative to the manifest."""
|
||||
drift: list[str] = []
|
||||
for src in m["source"]:
|
||||
if src["kind"] == "github":
|
||||
head = _gh_head_commit(src["repo"], src["ref"])
|
||||
if head == src.get("commit"):
|
||||
continue
|
||||
pinned = _gh_tree(src["repo"], src["commit"])
|
||||
current = _gh_tree(src["repo"], head)
|
||||
for f in src["files"]:
|
||||
if f not in current:
|
||||
drift.append(f"{src['name']}: {f} removed upstream ({head[:12]})")
|
||||
elif pinned.get(f) != current[f]:
|
||||
drift.append(
|
||||
f"{src['name']}: {f} changed ({src['commit'][:12]} → {head[:12]})"
|
||||
)
|
||||
# v3 handler directory gaining a file we don't track is worth
|
||||
# a look too — the point of vendoring the tests is to see them.
|
||||
watched = {Path(f).parent.as_posix() for f in src["files"] if "/" in f}
|
||||
for path in current:
|
||||
parent = Path(path).parent.as_posix()
|
||||
if (
|
||||
parent in watched
|
||||
and path not in pinned
|
||||
and path not in src["files"]
|
||||
):
|
||||
drift.append(f"{src['name']}: new upstream file {path}")
|
||||
elif src["kind"] == "https":
|
||||
for f in src["files"]:
|
||||
key = f"{src['name']}/{f}"
|
||||
got = _sha256(_get(src["base"] + f))
|
||||
if got != m.get("sha256", {}).get(key):
|
||||
drift.append(f"{src['name']}: {f} changed (sha256 {got[:12]})")
|
||||
else: # pragma: no cover — manifest is ours
|
||||
raise ValueError(f"unknown source kind {src['kind']!r}")
|
||||
return drift
|
||||
|
||||
|
||||
def sync(m: dict) -> list[str]:
|
||||
"""Download every manifest file from upstream HEAD; rewrite the manifest."""
|
||||
changed: list[str] = []
|
||||
shas = dict(m.get("sha256", {}))
|
||||
for src in m["source"]:
|
||||
if src["kind"] == "github":
|
||||
commit = _gh_head_commit(src["repo"], src["ref"])
|
||||
src["commit"] = commit
|
||||
fetch = lambda f, _s=src, _c=commit: _gh_raw(_s["repo"], _c, f) # noqa: E731
|
||||
else:
|
||||
fetch = lambda f, _s=src: _get(_s["base"] + f) # noqa: E731
|
||||
for f in src["files"]:
|
||||
key = f"{src['name']}/{f}"
|
||||
data = fetch(f)
|
||||
digest = _sha256(data)
|
||||
local = VENDOR / key
|
||||
if shas.get(key) != digest or not local.exists():
|
||||
local.parent.mkdir(parents=True, exist_ok=True)
|
||||
local.write_bytes(data)
|
||||
changed.append(key)
|
||||
shas[key] = digest
|
||||
m["sha256"] = shas
|
||||
dump_manifest(m)
|
||||
return changed
|
||||
|
||||
|
||||
def main(argv: list[str] | None = None) -> int:
|
||||
ap = argparse.ArgumentParser(description=__doc__.split("\n\n")[0])
|
||||
mode = ap.add_mutually_exclusive_group(required=True)
|
||||
mode.add_argument(
|
||||
"--check", action="store_true", help="report upstream drift (exit 1)"
|
||||
)
|
||||
mode.add_argument("--sync", action="store_true", help="refresh files + manifest")
|
||||
mode.add_argument("--verify", action="store_true", help="offline tree == manifest")
|
||||
args = ap.parse_args(argv)
|
||||
m = load_manifest()
|
||||
|
||||
if args.verify:
|
||||
problems = verify(m)
|
||||
for p in problems:
|
||||
print(p)
|
||||
print("vendor tree OK" if not problems else f"{len(problems)} problem(s)")
|
||||
return 1 if problems else 0
|
||||
if args.check:
|
||||
drift = check(m)
|
||||
for d in drift:
|
||||
print(d)
|
||||
print("no upstream drift" if not drift else f"{len(drift)} upstream change(s)")
|
||||
return 1 if drift else 0
|
||||
changed = sync(m)
|
||||
for c in changed:
|
||||
print(f"updated {c}")
|
||||
print(f"synced; {len(changed)} file(s) changed")
|
||||
return 0
|
||||
|
||||
|
||||
if __name__ == "__main__": # pragma: no cover
|
||||
sys.exit(main())
|
||||
53
dev/seeds/bcda_v3_cclf_absent.csv
Normal file
53
dev/seeds/bcda_v3_cclf_absent.csv
Normal file
@@ -0,0 +1,53 @@
|
||||
cclf_file,element,field_name,field_description
|
||||
CCLF0,1,File Number Label,“File Number” This field will be left-justified and right-padded with spaces.
|
||||
CCLF0,2,Delimiter,“|”
|
||||
CCLF0,3,File Description Label,“File Description” This field will be left-justified and right-padded with spaces.
|
||||
CCLF0,4,Delimiter,“|”
|
||||
CCLF0,5,Total Records Count Label,“Total Records Count” This field will be left-justified and right-padded with spaces.
|
||||
CCLF0,6,Delimiter,“|”
|
||||
CCLF0,7,Record Length Label,“Record Length” This field will be left-justified and right-padded with spaces.
|
||||
CCLF1,4,BENE_HIC_NUM,"Legacy Beneficiary HICN field I Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards."
|
||||
CCLF1,26,BENE_EQTBL_BIC_HICN_NUM,"Legacy Beneficiary Equitable BIC HICN Number. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, MBI will be accepted on claims, and the HICN value/ Beneficiary Equitable BIC HICN Number will no longer be displayed. The Beneficiary Equitable BIC HICN Number will be blank in CCLFs generated effective January 1, 2020, onwards."
|
||||
CCLF2,4,BENE_HIC_NUM,"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards."
|
||||
CCLF2,11,BENE_EQTBL_BIC_HICN_NUM,"Legacy Beneficiary Equitable BIC HICN Number. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value/ Beneficiary Equitable BIC HICN Number will no longer be displayed. The Beneficiary Equitable BIC HICN Number will be blank in CCLFs generated effective January 1, 2020, onwards."
|
||||
CCLF3,3,BENE_HIC_NUM,"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards."
|
||||
CCLF3,5,CLM_VAL_SQNC_NUM,An arbitrary sequential number that uniquely identifies a procedure code record within the claim.
|
||||
CCLF3,8,BENE_EQTBL_BIC_HICN_NUM,"Legacy Beneficiary Equitable BIC HICN Number. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value/ Beneficiary Equitable BIC HICN Number will no longer be displayed. The Beneficiary Equitable BIC HICN Number will be blank in CCLFs generated effective January 1, 2020, onwards."
|
||||
CCLF4,3,BENE_HIC_NUM,"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards."
|
||||
CCLF4,6,CLM_VAL_SQNC_NUM,An arbitrary sequential number that uniquely identifies a procedure code record within the claim.
|
||||
CCLF4,8,BENE_EQTBL_BIC_HICN_NUM,"Legacy Beneficiary Equitable BIC HICN Number. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims and the HICN value/ Beneficiary Equitable BIC HICN Number will no longer be displayed. The Beneficiary Equitable BIC HICN Number will be blank effective January 1, 2020."
|
||||
CCLF5,4,BENE_HIC_NUM,"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The HICN field will be blank effective January 1, 2020."
|
||||
CCLF5,8,RNDRG_PRVDR_TYPE_CD,"Indicates the type of provider who provided the service associated with this line item on the claim. Provider Type Code include: 0 = Clinics, groups, associations, partnerships, or other entities 1 = Physicians or suppliers reporting as solo practitioners 2 = Suppliers (other than sole proprietorship) 3 = Institutional provider 4 = Independent laboratories 5 = Clinics (multiple specialties) 6 = Groups (single specialty) 7 = Other entities 8 = Family Practice UI = UPIN Identification N2 = National Council for Prescription Drug Programs D = National Supplier Clearinghouse BP = PIN Individual BG = PIN Group A = Online Survey, Certification and Reporting"
|
||||
CCLF5,27,BENE_EQTBL_BIC_HICN_NUM,"Legacy Beneficiary Equitable BIC HICN Number. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value/ Beneficiary Equitable BIC HICN Number will no longer be displayed. The Beneficiary Equitable BIC HICN Number will be blank effective January 1, 2020."
|
||||
CCLF5,49,HCPCS_BETOS_CD,A code representing a clinical category. The Berenson-Eggers Type of Service (BETOS) code.
|
||||
CCLF6,4,BENE_HIC_NUM,"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards."
|
||||
CCLF6,23,BENE_EQTBL_BIC_HICN_NUM,"Legacy Beneficiary Equitable BIC HICN Number. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value/ Beneficiary Equitable BIC HICN Number will no longer be displayed. The Beneficiary Equitable BIC HICN Number will be blank in CCLFs generated effective January 1, 2020, onwards."
|
||||
CCLF7,3,BENE_HIC_NUM,"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards."
|
||||
CCLF8,2,BENE_HIC_NUM,"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards."
|
||||
CCLF8,3,BENE_FIPS_STATE_CD,Identifies the state where the beneficiary receiving services resides. I H
|
||||
CCLF8,4,BENE_FIPS_CNTY_CD,Identifies the county where the beneficiary receiving services resides. I H
|
||||
CCLF8,5,BENE_ZIP_CD,The beneficiary’s ZIP code as indicated in their Medicare enrollment record. I H
|
||||
CCLF8,9,BENE_AGE,"The beneficiary’s current age, as calculated by subtracting the beneficiary’s date of birth from the current date. I H"
|
||||
CCLF8,13,BENE_RNG_BGN_DT,The date the beneficiary enrolled in Hospice. I H
|
||||
CCLF8,14,BENE_RNG_END_DT,The date the beneficiary is- enrolled in hospice. I H
|
||||
CCLF8,22,BENE_LINE_1_ADR,The first line of the street address. I
|
||||
CCLF8,23,BENE_LINE_2_ADR,The second line of the street address. I
|
||||
CCLF8,24,BENE_LINE_3_ADR,The third line of the street address. I
|
||||
CCLF8,25,BENE_LINE_4_ADR,The fourth line of the street address. I
|
||||
CCLF8,26,BENE_LINE_5_ADR,The fifth line of the street address. I
|
||||
CCLF8,27,BENE_LINE_6_ADR,The sixth line of the street address. I
|
||||
CCLF8,31,GEO_ZIP4_CD,A four-digit extension to a ZIP Code that represents a subdivision for mailing purposes of the ZIP Code. I
|
||||
CCLF9,1,HICN_MBI_XREF_IND…,"M = MBI Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards."
|
||||
CCLF9,6,BENE_RRB_NUM,"Legacy RRB number. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the Medicare Beneficiary Identifier (MBI) will be accepted on claims, and the HICN and RRB will no longer be displayed. These fields will be blank effective January 1, 2020, in CCLF files."
|
||||
CCLFA,3,BENE_HIC_NUM,"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards."
|
||||
CCLFA,16,CLM_PBP_INCLSN_AMT,The amount that would have been paid in the absence of PBP/ AIPBP Reduction. The value for the PBP/AIPBP Inclusion Amount is derived from the table and column called “CMS_VIEW_CLM_PRD.CLM_VAL_AMT” when the value code within the field called “CLM_VAL_CD” equals “Q0.”
|
||||
CCLFA,17,CLM_PBP_RDCTN_AMT,The PBP/AIPBP Reduction Amount withheld from payment to the Provider. The value for the PBP/AIPBP Reduction Amount is derived from the table and column called “CMS_VIEW_CLM_PRD.CLM_VAL_AMT” when the value code within the field called “CLM_VAL_CD” equals “Q1.”
|
||||
CCLFA,27,CLM_OPRTNL_OUTLR_AMT,Operating Outlier Amount (DSH)
|
||||
CCLFA,28,CLM_MDCR_NEW_TECH_AMT,Medicare new technology add-on payment
|
||||
CCLFA,29,CLM_ISLET_ISOLN_AMT,Islet Isolation Add-on payment amount
|
||||
CCLFA,30,CLM_SQSTRTN_RDCTN_AMT,The payment to the provider will be reduced by the amount specified by CMS.
|
||||
CCLFA,33,CLM_MIPS_PMT_AMT,Capital MIPS payment costs
|
||||
CCLFB,4,BENE_HIC_NUM,"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards."
|
||||
CCLFB,16,CLM_PBP_INCLSN_AMT,The amount that would have been paid in the absence of PBP/AIPBP Reduction. The value for the PBP/AIPBP Inclusion Amount is derived from the table and column called “CMS_VIEW_CLM_PRD.CLM_LINE_OTHR_APLD_AMT” when the value code within the field called “CLM_LINE_OTHR_APLD_CD” equals “J.”
|
||||
CCLFB,17,CLM_PBP_RDCTN_AMT,The PBP/AIPBP Reduction Amount withheld from payment to the Provider. The value for the PBP/AIPBP Reduction Amount is derived from the table and column called “CMS_VIEW_CLM_PRD.CLM_LINE_OTHR_APLD_AMT” when the value code within the field called “CLM_LINE_OTHR_APLD_CD” equals “L.”
|
||||
CCLFB,20,CLM_SQSTRTN_RDCTN_AMT,The payment to the provider will be reduced by the amount specified by CMS. Only one period has been defined by CMS for a 2% reduction that began on 04/01/2013 as part of government sequestration.
|
||||
|
294
dev/seeds/bcda_v3_cclf_crosswalk.csv
Normal file
294
dev/seeds/bcda_v3_cclf_crosswalk.csv
Normal file
@@ -0,0 +1,294 @@
|
||||
cclf_file,element,field_label,field_name,start_position,end_position,data_length,format,field_description,bcda_v3_field,fhir_path
|
||||
CCLF0,1,File Number Label,Title,1,13,13,X(13),“File Number” This field will be left-justified and right-padded with spaces.,,
|
||||
CCLF0,2,Delimiter,Delimiter,14,14,1,X(1),“|”,,
|
||||
CCLF0,3,File Description Label,Title,15,34,20,X(20),“File Description” This field will be left-justified and right-padded with spaces.,,
|
||||
CCLF0,4,Delimiter,Delimiter,35,35,1,X(1),“|”,,
|
||||
CCLF0,5,Total Records Count Label,Title,36,55,20,X(20),“Total Records Count” This field will be left-justified and right-padded with spaces.,,
|
||||
CCLF0,6,Delimiter,Delimiter,56,56,1,X(1),“|”,,
|
||||
CCLF0,7,Record Length Label,Title,57,69,13,X(13),“Record Length” This field will be left-justified and right-padded with spaces.,,
|
||||
CCLF1,1,Current Claim Unique Identifier,CUR_CLM_UNIQ_ID,1,13,13,9(13),A unique identification number assigned to the claim. I H,The claim unique ID is a unique ID for the claim within the source system.,ExplanationOfBenefit.identifier.where(type.coding.system = 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType' and type.coding.code = 'uc' ).value
|
||||
CCLF1,2,Provider OSCAR Number,PRVDR_OSCAR_NUM,14,19,6,X(06),"A facility’s Medicare/Medicaid identification number. It is also known as a Medicare/Medicaid Provider Number, or CCN. This number verifies that a provider has been Medicare certified for a particular type of service. H",Provider Number (OSCAR/CCN),ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://terminology.hl7.org/NamingSystem/CCN').value
|
||||
CCLF1,3,Medicare Beneficiary Identifier,BENE_MBI_ID,20,30,11,X(11),A Medicare Beneficiary Identifier assigned to a beneficiary I H,Medicare Beneficiary Identifier,Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').value
|
||||
CCLF1,4,Beneficiary HIC Number,BENE_HIC_NUM,31,41,11,X(11),"Legacy Beneficiary HICN field I Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards.",,
|
||||
CCLF1,5,Claim Type Code,CLM_TYPE_CD,42,43,2,9(02),Signifies the type of claim being submitted through the Medicare or Medicaid programs. H Claim type code include: 10 = HHA claim 20 = Non swing bed SNF claim 30 = Swing bed SNF claim 40 = Outpatient claim 50 = Hospice claim 60 = Inpatient claim 61 = Inpatient “Full-Encounter” claim,Claim Type Code,ExplanationOfBenefit.type.coding.where(system = 'https://bluebutton.cms.gov/fhir/CodeSystem/CLM-TYPE-CD').code
|
||||
CCLF1,6,Claim From Date,CLM_FROM_DT,44,53,10,YYYY-MM-DD,The first day on the billing statement that covers services rendered to the beneficiary. H Also known as “Statement Covers From Date.”,Claim From Date,ExplanationOfBenefit.billablePeriod.start
|
||||
CCLF1,7,Claim Thru Date,CLM_THRU_DT,54,63,10,YYYY-MM-DD,The last day on the billing statement that covers services rendered to the beneficiary. H Also known as the “Statement Covers Through Date.”,Claim Thru Date,ExplanationOfBenefit.billablePeriod.end
|
||||
CCLF1,8,Claim Bill Facility Type Code,CLM_BILL_FAC_TYPE_CD,64,64,1,X(01),"The first digit of the type of bill (TOB1) is used to identify the type of facility that provided care to the beneficiary (e.g., hospital or SNF). H Claim Facility Type Code include: 1 = Hospital 2 = SNF 3 = HHA 4 = Religious non-medical (hospital) 5 = Religious non-medical (extended care) 6 = Intermediate care 7 = Clinic or hospital-based renal dialysis facility 8 = Specialty facility or Ambulatory Surgical Center (ASC) surgery 9 = Reserved",Bill Facility Type Code,ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='typeofbill').code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-BILL-FAC-TYPE-CD').code
|
||||
CCLF1,9,Claim Bill Classificatio n Code,CLM_BILL_CLSFCTN_CD,65,65,1,X(01),"The second digit of the type of bill (TOB2) is used to indicate with greater specificity where the service was provided (e.g., a department within a hospital). H Find Claim Service Classification Code at the ResDAC website.",Claim Bill Classification Code,ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='typeofbill').code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-BILL-CLSFCTN-CD').code
|
||||
CCLF1,10,Principal Diagnosis Code,PRNCPL_DGNS_CD,66,72,7,X(07),The ICD-9/10 diagnosis code identifies the beneficiary’s principal illness or disability. H,Claim Diagnosis Code,ExplanationOfBenefit.diagnosis.diagnosis.coding.code
|
||||
CCLF1,11,Admitting Diagnosis Code,ADMTG_DGNS_CD,73,79,7,X(07),The ICD-9/10 diagnosis code identifies the illness or disability for which the beneficiary was admitted. H,Claim Diagnosis Code,ExplanationOfBenefit.diagnosis.diagnosis.coding.code
|
||||
CCLF1,12,Claim Medicare Non-Payment Reason Code,CLM_MDCR_NPMT_RSN_CD,80,81,2,X(02),Indicates the reason payment on an institutional claim is denied. Find Medicare Non-Payment Reason Code at the ResDAC website.,Claim Non Payment Reason Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_MDCR_NPMT_RSN_CD').exists()).code.coding.code
|
||||
CCLF1,13,Claim Payment Amount,CLM_PMT_AMT,82,98,17,-9(13).99,Amount that Medicare paid on the claim. H,Payment Amount,ExplanationOfBenefit.payment.amount.value
|
||||
CCLF1,14,Claim NCH Primary Payer Code,CLM_NCH_PRMRY_PYR_CD,99,99,1,X(01),"If a payer other than Medicare has primary responsibility for payment of the beneficiary’s health insurance bills, this code indicates the responsible primary payer. H If this field is blank, Medicare is the primary payer for the beneficiary. Find NCH Primary Payer Code at the ResDAC website.",The code outlining the primary payer.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_NCH_PRMRY_PYR_CD').exists()).code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-PRMRY-PYR-CD').code
|
||||
CCLF1,15,Federal Information Processing Standards (FIPS) State Code,PRVDR_FAC_FIPS_ST_CD,100,101,2,X(02),Identifies the state where the facility providing services is located.,State FIPS Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='PRVDR_FAC_FIPS_ST_CD').exists()).code
|
||||
CCLF1,16,Beneficiary Patient Status Code,BENE_PTNT_STUS_CD,102,103,2,X(02),"Indicates the patient's discharge status as of the Claim Through Date. For example, it may indicate where a patient was discharged to (e.g., home, another facility) or the circumstances of a discharge (e.g., against medical advice, or patient death). I H Find Patient Discharge Status Code at the ResDAC website.",Patient Discharge Status Code,ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='discharge-status').code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/BENE-PTNT-STUS-CD').code
|
||||
CCLF1,17,Diagnosis Related Group Code,DGNS_DRG_CD,104,107,4,X(04),Indicates the diagnostic related group to which a hospital claim belongs for prospective payment purposes. I H,Claim Diagnosis Related Group Code,ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='drg').code.coding.where(system='https://www.cms.gov/Medicare/Medicare-Fee-for-Service-Payment/AcuteInpatientPPS/MS-DRG-Classifications-and-Software').code
|
||||
CCLF1,18,Claim Outpatient Service Type Code,CLM_OP_SRVC_TYPE_CD,108,108,1,X(01),"A code reported by the provider that indicates the specific type of claim (Inpatient, Outpatient, etc.). I H Claim Outpatient Service Type Code include: 0 = Blank 1 = Emergency (The patient required immediate medical intervention because of severe life threatening or potentially disabling conditions. Generally, the patient was admitted through the emergency room) 2 = Urgent (The patient required immediate attention for the care and treatment of a physical or mental disorder. Generally, the patient was admitted to the available and suitable accommodation) 3 = Elective (The patient's condition permitted adequate time to schedule the availability of suitable accommodations) 5 = Reserved 6 = Reserved 7 = Reserved 8 = Reserved 9 = Unknown (Information not available)",Claim Outpatient Service Type Code,ExplanationOfBenefit.supportingInfo.where(code.coding.system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-OP-SRVC-TYPE-CD').code.coding.code
|
||||
CCLF1,19,Facility Provider NPI Number,FAC_PRVDR_NPI_NUM,109,118,10,X(10),Identifies the facility associated with the claim. Each facility is assigned its own unique NPI.,Provider billing NPI number,ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://hl7.org/fhir/sid/us-npi').value
|
||||
CCLF1,20,Operating Provider NPI Number,OPRTG_PRVDR_NPI_NUM,119,128,10,X(10),Identifies the operating provider associated with the claim. Each provider is assigned its own unique NPI.,Operating Physician NPI,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'otheroperating').exists()).provider.identifier.value
|
||||
CCLF1,21,Attending Provider NPI Number,ATNDG_PRVDR_NPI_NUM,129,138,10,X(10),Identifies the attending provider associated with the claim. Each provider is assigned its own unique NPI.,Attending Physician NPI,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'attending').exists()).provider.identifier.value
|
||||
CCLF1,22,Other Provider NPI Number,OTHR_PRVDR_NPI_NUM,139,148,10,X(10),Identifies the other providers associated with the claim. Each provider is assigned its own unique NPI.,Other Physician NPI,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'otheroperating').exists()).provider.identifier.value or ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'supervisor').exists()).provider.identifier.value
|
||||
CCLF1,23,Claim Adjustment Type Code,CLM_ADJSMT_TYPE_CD,149,150,2,X(02),"Indicates whether the claim is an original, cancellation, or adjustment claim. Claim Adjustment Type Code include: 0 = Original Claim 1 = Cancellation Claim 2 = Adjustment claim",Claim Adjustment Type Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_ADJSTMT_TYPE_CD').exists()).code.coding.code
|
||||
CCLF1,24,Claim Effective Date,CLM_EFCTV_DT,151,160,10,YYYY-MM-DD,Date the claim was processed and added to the NCH. Also referred to as the NCH Weekly Processing Date. H,Claim Effective Date,ExplanationOfBenefit.created
|
||||
CCLF1,25,Claim IDR Load Date,CLM_IDR_LD_DT,161,170,10,YYYY-MM-DD,When the claim was loaded into the IDR.,Claim IDR Load Date,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_IDR_LD_DT').exists()).timing
|
||||
CCLF1,26,Beneficiary Equitable BIC HICN Number,BENE_EQTBL_BIC_HICN_NUM,171,181,11,X(11),"Legacy Beneficiary Equitable BIC HICN Number. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, MBI will be accepted on claims, and the HICN value/ Beneficiary Equitable BIC HICN Number will no longer be displayed. The Beneficiary Equitable BIC HICN Number will be blank in CCLFs generated effective January 1, 2020, onwards.",,
|
||||
CCLF1,27,Claim Admission Type Code,CLM_ADMSN_TYPE_CD,182,183,2,X(2),Indicates the type and priority of inpatient services. I H Claim Admission Type Code include: 0 = Blank 1 = Emergency 2 = Urgent 3 = Elective 4 = Newborn 5 = Trauma Center 6-8 = Reserved 9 = Unknown,Claim Admission Type Code,ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='admtype').code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-ADMSN-TYPE-CD').code
|
||||
CCLF1,28,Claim Admission Source Code,CLM_ADMSN_SRC_CD,184,185,2,X(2),"Indicates the source of the beneficiary’s referral for admission or visit (e.g., a physician or another facility). Find Admission Source Code at the ResDAC website.",Source Admission Code,ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='pointoforigin').code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-ADMSN-SRC-CD').code
|
||||
CCLF1,29,Claim Bill Frequency Code,CLM_BILL_FREQ_CD,186,186,1,X(1),"The third digit of the type of bill (TOB3) code. It indicates the sequence of the claim in the beneficiary's current episode of care (e.g., interim or voided). Find Claim Frequency Code at the ResDAC website.",Bill Frequency Code,ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='typeofbill').code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-BILL-FREQ-CD').code
|
||||
CCLF1,30,Claim Query Code,CLM_QUERY_CD,187,187,1,X(1),"Indicates the type of claim record being processed with respect to payment (e.g., debit/credit indicator or interim/final indicator). Claim Query Code include: 0 = Credit adjustment 1 = Interim bill 2 = HHA benefits exhausted 3 = Final bill 4 = Discharge notice 5 = Debit adjustment",Claim Query Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_QUERY_CD').exists()).code.coding.code
|
||||
CCLF1,31,ICD Version Indicator,DGNS_PRCDR_ICD_IND,188,188,1,X(1),9 = ICD-9 0 = ICD-10 U = any value other than “9” or “0” in the source data.,Diagnosis Procedure ICD indicator,ExplanationOfBenefit.diagnosis.diagnosis.coding.system
|
||||
CCLF1,32,Total Claim Charge Amount,CLM_MDCR_INSTNL_TOT_CHRG_AMT,189,203,15,-9(11).99,"Effective with NCH Version G, the total charges for all services included on the institutional claim. This field is redundant with revenue center code 0001/total charges.",Total Charge Amount,ExplanationOfBenefit.total.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication').exists() and category.coding.where(code='CLM_SBMT_CHRG_AMT').exists() ).amount.value
|
||||
CCLF1,33,Claim Capital Indirect Medical Education Amount,CLM_MDCR_IP_PPS_CPTL_IME_AMT,204,218,15,-9(11).99,The amount of the indirect medical education (IME) (reimbursable amount for teaching hospitals only; an added amount passed by Congress to augment normal Prospective Payment System [PPS] payments for teaching hospitals to compensate them for higher patient costs resulting from medical education programs for interns and residents) portion of the PPS payment for capital. Note: Applicable for claim type = 60 and total calculated based on debit credit methodology.,Claim PPS Capital IME Amount,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_IP_PPS_CPTL_IME_AMT').exists()).amount.value
|
||||
CCLF1,34,Claim Operational Indirect Medical Education Amount,CLM_OPRTNL_IME_AMT,219,240,22,-9(18).99,The indirect medical education amount applicable to the bill. (Do not include PPS capital IME adjustment in this entry). Note: Applicable for claim type = 60 and total calculated based on debit credit methodology.,Operating Indirect Medical Education Amount,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_OPRTNL_IME_AMT').exists()).amount.value
|
||||
CCLF1,35,Claim Capital Disproportionate Amount,CLM_MDCR_IP_PPS_DSPRPRTNT_AMT,241,255,15,-9(11).99,"Effective 3/2/92, the amount of disproportionate share (rate reflecting indigent population served) portion of the PPS payment for capital. [NCH] Note: Applicable for claim type = 60 and total calculated based on debit credit methodology.",Claim PPS Capital Disproportionate Share Amount,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_IP_PPS_DSPRPRTNT_AMT').exists()).amount.value
|
||||
CCLF1,36,Claim Health Insurance Prospective Payment System Uncompens ated Care Amount,CLM_HIPPS_UNCOMPD_CARE_AMT,256,270,15,-9(11).99,"This is a payment for DSH hospitals as part of Section 3133 of ACA. It represents the uncompensated care amount of the payment. Note: Applicable for claim types = (10, 20, 30, 40, 50, 60) and total calculated based on debit credit methodology.",Claim Uncompensated Care Payment Amount,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_HIPPS_UNCOMPD_CARE_AMT').exists()).amount.value
|
||||
CCLF1,37,Claim Operational disproportionate Amount,CLM_OPRTNL_DSPRPRTNT_AMT,271,292,22,-9(18).99,The disproportionate share amount applicable to the bill. Use the amount provided by the disproportionate share field in PRICER. (Do not include any PPS capital DSH adjustment in this entry). Note: Applicable for claim type = 60 and total calculated based on debit credit methodology.,Operating Disproportionate Share Amount,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_OPRTNL_DSPRTNT_AMT').exists()).amount.value
|
||||
CCLF1,38,Claim Provider OSCAR Number,CLM_BLG_PRVDR_OSCAR_NUM,293,312,20,x(20),"A facility’s Medicare/Medicaid identification number. It is also known as a Medicare/Medicaid Provider Number, or CCN. This number verifies that a provider has been Medicare certified for a particular type of service. Notes: From January 2022 onward, for Shared Savings Program, ACO REACH, KCC, VTAPM, and PCF models, this value is sourced from the Medicare claims processing system. This field is included in addition to the Element 2 “Provider OSCAR Number” sourced from Provider Enrollment Change of Ownership System (PECOS).",Provider Number (OSCAR/CCN),ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://terminology.hl7.org/NamingSystem/CCN').value
|
||||
CCLF1,39,Claim Facility Provider NPI Number,CLM_BLG_PRVDR_NPI_NUM,313,322,10,x(10),"Identifies the facility associated with the claim. Each facility is assigned its own unique NPI. Notes: From January 2022 onward, for Shared Savings Program, ACO REACH, KCC, VTAPM, and PCF models, this value is sourced from the Medicare claims processing system. This field is included in addition to the Element 19 “Facility Provider NPI Number” sourced from PECOS.",Provider billing NPI number,ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://hl7.org/fhir/sid/us-npi').value
|
||||
CCLF1,40,Claim Operating Provider NPI Number,CLM_OPRTG_PRVDR_NPI_NUM,323,332,10,x(10),"Identifies the operating provider associated with the claim. Each provider is assigned its own unique NPI. Notes: From January 2022 onward, for Shared Savings Program, ACO REACH, KCC, VTAPM, and PCF models, this value is sourced from the Medicare claims processing system. This field is included in addition to the Element 20 “Operating Provider NPI Number” sourced from PECOS.",Operating Physician NPI,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'otheroperating').exists()).provider.identifier.value
|
||||
CCLF1,41,Claim Attending Provider NPI Number,CLM_ATNDG_PRVDR_NPI_NUM,333,342,10,x(10),"Identifies the attending provider associated with the claim. Each provider is assigned its own unique NPI. Notes: From January 2022 onward, for Shared Savings Program, ACO REACH, KCC, VTAPM, and PCF models, this value is sourced from the Medicare claims processing system. This field is included in addition to the Element 21 “Attending Provider NPI Number” sourced from PECOS.",Attending Physician NPI,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'attending').exists()).provider.identifier.value
|
||||
CCLF1,42,Claim Other Provider NPI Number,CLM_OTHR_PRVDR_NPI_NUM,343,352,10,x(10),"Identifies the other providers associated with the claim. Each provider is assigned its own unique NPI. Notes: From January 2022 onward, for Shared Savings Program, ACO REACH, KCC, VTAPM, and PCF models, this value is sourced from the Medicare claims processing system. This field is included in addition to the Element 22 “Other Provider NPI Number” sourced from PECOS.",Other Physician NPI,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'otheroperating').exists()).provider.identifier.value or ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'supervisor').exists()).provider.identifier.value
|
||||
CCLF1,43,Claim Control Number,CLM_CNTL_NUM,353,392,40,x(40),"An identifier assigned by the claim processor (i.e., MAC, Part D Plan, or Encounter Data Processing Contractor) to a claim.",Claim Control Number,ExplanationOfBenefit.identifier.where(system = 'https://bluebutton.cms.gov/identifiers/CLM-CNTL-NUM').value
|
||||
CCLF1,44,Claim Original Control Number,CLM_ORG_CNTL_NUM,393,432,40,x(40),A unique number assigned by the state’s payment system that identifies an original claim.,This field is the original identification value assigned.,ExplanationOfBenefit.related.where(relationship.coding.system = 'http://terminology.hl7.org/CodeSystem/ex-relatedclaimrelationship').reference.where(system='https://bluebutton.cms.gov/identifiers/CLM-CNTL-NUM').value
|
||||
CCLF1,45,Claim Contractor Number,CLM_CNTRCTR_NUM,433,437,5,x(5),A number assigned by CMS identifying a MAC authorized to process Medicare claims.,FI Number,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_CNTRCTR_NUM').exists()).code.coding.code
|
||||
CCLF2,1,Current Claim Unique Identifier,CUR_CLM_UNIQ_ID,1,13,13,9(13),A unique identification number assigned to the claim. I H,The claim unique ID is a unique ID for the claim within the source system.,ExplanationOfBenefit.identifier.where(type.coding.system = 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType' and type.coding.code = 'uc' ).value
|
||||
CCLF2,2,Claim Line Number,CLM_LINE_NUM,14,23,10,9(10),A sequential number that identifies a specific claim line.,Line Item Sequence Number,ExplanationOfBenefit.item.sequence
|
||||
CCLF2,3,Medicare Beneficiary Identifier,BENE_MBI_ID,24,34,11,X(11),A Medicare Beneficiary Identifier assigned to a beneficiary. I H,Medicare Beneficiary Identifier,Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').value
|
||||
CCLF2,4,Beneficiary HIC Number,BENE_HIC_NUM,35,45,11,X(11),"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards.",,
|
||||
CCLF2,5,Claim Type Code,CLM_TYPE_CD,46,47,2,9(02),Signifies the type of claim being submitted through the Medicare or Medicaid programs. H Claim type code include: 10 = HHA claim 20 = Non swing bed SNF claim 30 = Swing bed SNF claim 40 = Outpatient claim 50 = Hospice claim 60 = Inpatient claim 61 = Inpatient “Full- Encounter” claim,Claim Type Code,ExplanationOfBenefit.type.coding.where(system = 'https://bluebutton.cms.gov/fhir/CodeSystem/CLM-TYPE-CD').code
|
||||
CCLF2,6,Claim Line From Date,CLM_LINE_FROM_DT,48,57,10,YYYY-MM-DD,The date the service associated with the line item began. H,Line Item From Date,ExplanationOfBenefit.item.serviced.start
|
||||
CCLF2,7,Claim Line Thru Date,CLM_LINE_THRU_DT,58,67,10,YYYY-MM-DD,The date the service associated with the line item ended. H,Last Expense Date,ExplanationOfBenefit.item.serviced.end
|
||||
CCLF2,8,Product Revenue Center Code,CLM_LINE_PROD_REV_CTR_CD,68,71,4,X(04),"The number a provider assigns to the cost center to which a particular charge is billed (e.g., accommodations or supplies). A cost center is a division or unit within a hospital (e.g., radiology, emergency room, pathology). Find Revenue Center Code at the ResDAC website. Revenue center code 0001 represents the total of all revenue centers included on the claim.",Line Item Revenue Center Code,ExplanationOfBenefit.item.revenue.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-REV-CNTR-CD').code
|
||||
CCLF2,9,Claim Line Institutional Revenue Center Date,CLM_LINE_INSTNL_REV_CTR_DT,72,81,10,YYYY-MM-DD,The date that applies to the service associated with the Revenue Center code.,Revenue Center Date,ExplanationOfBenefit.item.servicedDate
|
||||
CCLF2,10,HCPCS Code,CLM_LINE_HCPCS_CD,82,86,5,X(05),"The HCPCS code representing the procedure, supply, product, and/or service provided to the beneficiary. Note: Health Insurance Prospective Payment System (HIPPS) code may be available when the Product Revenue Center Code is “0022” (SNF Prospective Payment System).",Line Item HCPCS Code,ExplanationOfBenefit.item.productOrService.where(coding.system='http://www.ama-assn.org/go/cpt' or coding.system='https://www.cms.gov/Medicare/Coding/HCPCSReleaseCodeSets' or coding.system='http://terminology.hl7.org/CodeSystem/data-absent-reason').coding.code
|
||||
CCLF2,11,Beneficiary Equitable BIC HICN Number,BENE_EQTBL_BIC_HICN_NUM,87,97,11,X(11),"Legacy Beneficiary Equitable BIC HICN Number. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value/ Beneficiary Equitable BIC HICN Number will no longer be displayed. The Beneficiary Equitable BIC HICN Number will be blank in CCLFs generated effective January 1, 2020, onwards.",,
|
||||
CCLF2,12,Provider OSCAR Number,PRVDR_OSCAR_NUM,98,103,6,X(6),"A facility’s Medicare/Medicaid identification number, also known as a Medicare/Medicaid Provider Number, or CCN. This number verifies that a provider has been Medicare certified for a particular type of services. H",Provider Number (OSCAR/CCN),ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://terminology.hl7.org/NamingSystem/CCN').value
|
||||
CCLF2,13,Claim From Date,CLM_FROM_DT,104,113,10,YYYY-MM-DD,The first day on the billing statement that covers services rendered to the beneficiary. H Also known as the “Statement Covers From Date.”,Claim From Date,ExplanationOfBenefit.billablePeriod.start
|
||||
CCLF2,14,Claim Thru Date,CLM_THRU_DT,114,123,10,YYYY-MM-DD,The last day on the billing statement that covers services rendered to the beneficiary. H Also known as the “Statement Covers Through Date.”,Claim Thru Date,ExplanationOfBenefit.billablePeriod.end
|
||||
CCLF2,15,Claim Line Service Unit Quantity,CLM_LINE_SRVC_UNIT_QTY,124,147,24,-9(18).9999,"Count of total units, at the line-item level, associated with services needing unit reporting (e.g., anesthesia time units and blood units). H",Line Item Service Unit Quantity,ExplanationOfBenefit.item.quantity.value
|
||||
CCLF2,16,Claim Line Covered Paid Amount,CLM_LINE_CVRD_PD_AMT,148,164,17,-9(13).99,The amount Medicare reimbursed the provider for covered services associated with the claim-line. H,Claim Line Covered Paid Amount,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_CVRD_PD_AMT')).amount.value
|
||||
CCLF2,17,HCPCS First Modifier Code,HCPCS_1_MDFR_CD,165,166,2,X(2),The first code to modify the HCPCS procedure code associated with the claim-line. This provides more specific procedure identification for the line- item service. H,HCPCS Modifier Code 1,ExplanationOfBenefit.item.modifier[0].coding.code
|
||||
CCLF2,18,HCPCS Second Modifier Code,HCPCS_2_MDFR_CD,167,168,2,X(2),The second code to modify the HCPCS procedure code associated with the claim-line. This provides more specific procedure identification for the line- item service. H,HCPCS Modifier Code 2,ExplanationOfBenefit.item.modifier[1].coding.code
|
||||
CCLF2,19,HCPCS Third Modifier Code,HCPCS_3_MDFR_CD,169,170,2,X(2),The third code to modify the HCPCS procedure code associated with the claim-line. This provides more specific procedure identification for the line- item service. H,HCPCS Modifier Code 3,ExplanationOfBenefit.item.modifier[2].coding.code
|
||||
CCLF2,20,HCPCS Fourth Modifier Code,HCPCS_4_MDFR_CD,171,172,2,X(2),The fourth code to modify the HCPCS procedure code associated with the claim-line. This provides more specific procedure identification for the line- item service. H,HCPCS Modifier Code 4,ExplanationOfBenefit.item.modifier[3].coding.code
|
||||
CCLF2,21,HCPCS Fifth Modifier Code,HCPCS_5_MDFR_CD,173,174,2,X(2),The fifth code to modify the HCPCS procedure code associated with the claim-line. This provides more specific procedure identification for the line- item service. H,HCPCS Modifier Code 5,ExplanationOfBenefit.item.modifier[4].coding.code
|
||||
CCLF2,22,Claim Revenue APC HIPPS Code,CLM_REV_APC_HIPPS_CD,175,179,5,X(5),APC group for outpatient claim type,Line Item APC / HIPPS Code,ExplanationOfBenefit.item.productOrService.coding.where(system='https://www.cms.gov/Medicare/Medicare-Fee-for-Service-Payment/ProspMedicareFeeSvcPmtGen/HIPPSCodes').code
|
||||
CCLF2,23,Claim Facility Provider OSCAR Number,CLM_FAC_PRVDR_OSCAR_NUM,180,199,20,X(20),"A facility’s Medicare/Medicaid identification number, also known as a Medicare/Medicaid Provider Number, or CCN. This number verifies that a provider has been Medicare certified for a particular type of services. Notes: From January 2022 onward, for Shared Savings Program, ACO REACH, KCC, VTAPM, and PCF models, this value is sourced from the Medicare claims processing system. This field is included in addition to the Element 12 “Provider OSCAR Number” sourced from PECOS.",Provider Number (OSCAR/CCN),ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://terminology.hl7.org/NamingSystem/CCN').value
|
||||
CCLF3,1,Current Claim Unique Identifier,CUR_CLM_UNIQ_ID,1,13,13,9(13),A unique identification number assigned to the claim. I H,The claim unique ID is a unique ID for the claim within the source system.,ExplanationOfBenefit.identifier.where(type.coding.system = 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType' and type.coding.code = 'uc' ).value
|
||||
CCLF3,2,Medicare Beneficiary Identifier,BENE_MBI_ID,14,24,11,X(11),A Medicare Beneficiary Identifier assigned to a beneficiary. I H,Medicare Beneficiary Identifier,Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').value
|
||||
CCLF3,3,Beneficiary HIC Number,BENE_HIC_NUM,25,35,11,X(11),"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards.",,
|
||||
CCLF3,4,Claim Type Code,CLM_TYPE_CD,36,37,2,9(02),Signifies the type of claim being submitted through the Medicare or Medicaid programs. H Claim type code are: 10 = HHA claim 20 = Non swing bed SNF claim 30 = Swing bed SNF claim 40 = Outpatient claim 50 = Hospice claim 60 = Inpatient claim 61 = Inpatient “Full- Encounter” claim,Claim Type Code,ExplanationOfBenefit.type.coding.where(system = 'https://bluebutton.cms.gov/fhir/CodeSystem/CLM-TYPE-CD').code
|
||||
CCLF3,5,Claim Value Sequence Number,CLM_VAL_SQNC_NUM,38,39,2,9(2),An arbitrary sequential number that uniquely identifies a procedure code record within the claim.,,
|
||||
CCLF3,6,Procedure Code,CLM_PRCDR_CD,40,46,7,X(07),The ICD-9/10 code that indicates the procedure performed during the period covered by the claim. H,Claim Procedure Code,ExplanationOfBenefit.procedure.procedure.coding.code
|
||||
CCLF3,7,Procedure Performed Date,CLM_PRCDR_PRFRM_DT,47,56,10,YYYY-MM-DD,The date the indicated procedure was performed. H,Procedure Performed Date,ExplanationOfBenefit.procedure.date
|
||||
CCLF3,8,Beneficiary Equitable BIC HICN Number,BENE_EQTBL_BIC_HICN_NUM,57,67,11,X(11),"Legacy Beneficiary Equitable BIC HICN Number. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value/ Beneficiary Equitable BIC HICN Number will no longer be displayed. The Beneficiary Equitable BIC HICN Number will be blank in CCLFs generated effective January 1, 2020, onwards.",,
|
||||
CCLF3,9,Provider OSCAR Number,PRVDR_OSCAR_NUM,68,73,6,X(6),"A facility’s Medicare/Medicaid identification number. It is also known as a Medicare/Medicaid Provider Number, or CCN. This number verifies that a provider has been Medicare certified for a particular type of services. H",Provider Number (OSCAR/CCN),ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://terminology.hl7.org/NamingSystem/CCN').value
|
||||
CCLF3,10,Claim From Date,CLM_FROM_DT,74,83,10,YYYY-MM-DD,The first day on the billing statement that covers services rendered to the beneficiary. H Also known as “Statement Covers From Date.”,Claim From Date,ExplanationOfBenefit.billablePeriod.start
|
||||
CCLF3,11,Claim Thru Date,CLM_THRU_DT,84,93,10,YYYY-MM-DD,The last day on the billing statement that covers services rendered to the beneficiary. H Also known as the “Statement Covers Through Date.”,Claim Thru Date,ExplanationOfBenefit.billablePeriod.end
|
||||
CCLF3,12,ICD Version Indicator,DGNS_PRCDR_ICD_IND,94,94,1,X(1),9 = ICD-9 0 = ICD-10 U = any value other than “9” or “0” in the source data.,Diagnosis Procedure ICD indicator,ExplanationOfBenefit.procedure.procedure.coding.system
|
||||
CCLF3,13,Claim Provider OSCAR Number,CLM_BLG_PRVDR_OSCAR_NUM,95,114,20,X(20),"A facility’s Medicare/Medicaid identification number, also known as a Medicare/Medicaid Provider Number, or CCN. This number verifies that a provider has been Medicare certified for a particular type of services. Notes: From January 2022 onward, for Shared Savings Program, ACO REACH, KCC, VTAPM, and PCF models, this value is sourced from the Medicare claims processing system. This field is included in addition to the Element 9 “Provider OSCAR Number” sourced from PECOS.",Provider Number (OSCAR/CCN),ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://terminology.hl7.org/NamingSystem/CCN').value
|
||||
CCLF4,1,Current Claim Unique Identifier,CUR_CLM_UNIQ_ID,1,13,13,9(13),A unique identification number assigned to the claim. I H,The claim unique ID is a unique ID for the claim within the source system.,ExplanationOfBenefit.identifier.where(type.coding.system = 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType' and type.coding.code = 'uc' ).value
|
||||
CCLF4,2,Medicare Beneficiary Identifier,BENE_MBI_ID,14,24,11,X(11),A Medicare Beneficiary Identifier assigned to a beneficiary. I H,Medicare Beneficiary Identifier,Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').value
|
||||
CCLF4,3,Beneficiary HIC Number,BENE_HIC_NUM,25,35,11,X(11),"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards.",,
|
||||
CCLF4,4,Claim Type Code,CLM_TYPE_CD,36,37,2,9(02),Signifies the type of claim being submitted through the Medicare or Medicaid programs. H Claim type code include: 10 = HHA claim 20 = Non swing bed SNF claim 30 = Swing bed SNF claim 40 = Outpatient claim 50 = Hospice claim 60 = Inpatient claim 61 = Inpatient “Full- Encounter” claim,Claim Type Code,ExplanationOfBenefit.type.coding.where(system = 'https://bluebutton.cms.gov/fhir/CodeSystem/CLM-TYPE-CD').code
|
||||
CCLF4,5,Claim Product Type Code,CLM_PROD_TYPE_CD,38,38,1,X(01),Code classifying the diagnosis category. H Category codes include: E = Accident diagnosis code 1 = First diagnosis E code D = Other diagnosis code,Diagnosis Prod Type Code,ExplanationOfBenefit.diagnosis.type.coding
|
||||
CCLF4,6,Claim Value Sequence Number,CLM_VAL_SQNC_NUM,39,40,2,9(2),An arbitrary sequential number that uniquely identifies a procedure code record within the claim.,,
|
||||
CCLF4,7,Diagnosis Code,CLM_DGNS_CD,41,47,7,X(07),The ICD-9/10 diagnosis code identifying the beneficiary’s illness or disability. I H,Claim Diagnosis Code,ExplanationOfBenefit.diagnosis.diagnosis.coding.code
|
||||
CCLF4,8,Beneficiary Equitable BIC HICN Number,BENE_EQTBL_BIC_HICN_NUM,48,58,11,X(11),"Legacy Beneficiary Equitable BIC HICN Number. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims and the HICN value/ Beneficiary Equitable BIC HICN Number will no longer be displayed. The Beneficiary Equitable BIC HICN Number will be blank effective January 1, 2020.",,
|
||||
CCLF4,9,Provider OSCAR Number,PRVDR_OSCAR_NUM,59,64,6,X(6),"The OSCAR is a facility’s Medicare/Medicaid identification number. It is also known as a Medicare/Medicaid Provider Number, or CCN. This number verifies that a provider has been Medicare certified for a particular type of services. H",Provider Number (OSCAR/CCN),ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://terminology.hl7.org/NamingSystem/CCN').value
|
||||
CCLF4,10,Claim From Date,CLM_FROM_DT,65,74,10,YYYY-MM-DD,The first day on the billing statement that covers services rendered to the beneficiary. H Also known as the “Statement Covers From Date.”,Claim From Date,ExplanationOfBenefit.billablePeriod.start
|
||||
CCLF4,11,Claim Thru Date,CLM_THRU_DT,75,84,10,YYYY-MM-DD,The last day on the billing statement that covers services rendered to the beneficiary. H Also known as the “Statement Covers Through Date.”,Claim Thru Date,ExplanationOfBenefit.billablePeriod.end
|
||||
CCLF4,12,Claim Present- on-Admission Indicator,CLM_POA_IND,85,91,7,X(7),Indicates whether a patient had the condition listed on the claim line at the time of admission to the facility. I H Find Present-on-Admission values at the ResDAC website.,Claim Present on Admission Indicator,ExplanationOfBenefit.diagnosis.onAdmission.coding
|
||||
CCLF4,13,ICD Version Indicator,DGNS_PRCDR_ICD_IND,92,92,1,X(1),9 = ICD-9 0 = ICD-10 U = any value other than “9” or “0” in the source data.,Diagnosis Procedure ICD indicator,ExplanationOfBenefit.diagnosis.diagnosis.coding.system
|
||||
CCLF4,14,Claim Provider OSCAR Number,CLM_BLG_PRVDR_OSCAR_NUM,93,112,20,X(20),"A facility’s Medicare/Medicaid identification number, also known as a Medicare/Medicaid Provider Number, or CCN. This number verifies that a provider has been Medicare certified for a particular type of services. Notes: From January 2022 onward, for Shared Savings Program, ACO REACH, KCC, VTAPM, and PCF models, this value is sourced from the Medicare claims processing system. This field is included in addition to the Element 9 “Provider OSCAR Number” sourced from PECOS.",Provider Number (OSCAR/CCN),ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://terminology.hl7.org/NamingSystem/CCN').value
|
||||
CCLF5,1,Current Claim Unique Identifier,CUR_CLM_UNIQ_ID,1,13,13,9(13),A unique identification number assigned to the claim. I H,The claim unique ID is a unique ID for the claim within the source system.,ExplanationOfBenefit.identifier.where(type.coding.system = 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType' and type.coding.code = 'uc' ).value
|
||||
CCLF5,2,Claim Line Number,CLM_LINE_NUM,14,23,10,9(10),A sequential number that identifies a specific claim line within a given claim.,Line Item Sequence Number,ExplanationOfBenefit.item.sequence
|
||||
CCLF5,3,Medicare Beneficiary Identifier,BENE_MBI_ID,24,34,11,X(11),A Medicare Beneficiary Identifier assigned to a beneficiary. I H,Medicare Beneficiary Identifier,Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').value
|
||||
CCLF5,4,Beneficiary HIC Number,BENE_HIC_NUM,35,45,11,X(11),"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The HICN field will be blank effective January 1, 2020.",,
|
||||
CCLF5,5,Claim Type Code,CLM_TYPE_CD,46,47,2,9(02),Signifies the type of claim being submitted through the Medicare or Medicaid programs. H Claim type code include: 71 = RIC O local carrier non-DMEPOS claim 72 = RIC O local carrier DMEPOS claim,Claim Type Code,ExplanationOfBenefit.type.coding.where(system = 'https://bluebutton.cms.gov/fhir/CodeSystem/CLM-TYPE-CD').code
|
||||
CCLF5,6,Claim From Date,CLM_FROM_DT,48,57,10,YYYY-MM-DD,The first day on the billing statement that covers services rendered to the beneficiary. H Also known as the “Statement Covers From Date.”,Claim From Date,ExplanationOfBenefit.billablePeriod.start
|
||||
CCLF5,7,Claim Thru Date,CLM_THRU_DT,58,67,10,YYYY-MM-DD,The last day on the billing statement that covers services rendered to the beneficiary. H Also known as the “Statement Covers Through Date.”,Claim Thru Date,ExplanationOfBenefit.billablePeriod.end
|
||||
CCLF5,8,Rendering Provider Type Code,RNDRG_PRVDR_TYPE_CD,68,70,3,X(03),"Indicates the type of provider who provided the service associated with this line item on the claim. Provider Type Code include: 0 = Clinics, groups, associations, partnerships, or other entities 1 = Physicians or suppliers reporting as solo practitioners 2 = Suppliers (other than sole proprietorship) 3 = Institutional provider 4 = Independent laboratories 5 = Clinics (multiple specialties) 6 = Groups (single specialty) 7 = Other entities 8 = Family Practice UI = UPIN Identification N2 = National Council for Prescription Drug Programs D = National Supplier Clearinghouse BP = PIN Individual BG = PIN Group A = Online Survey, Certification and Reporting",,
|
||||
CCLF5,9,Rendering Provider FIPS State Code,RNDRG_PRVDR_FIPS_ST_CD,71,72,2,X(02),Identifies the state that the provider providing the service is located in.,State FIPS Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='RNDRG_PRVDR_FIPS_ST_CD').exists()).code
|
||||
CCLF5,10,Claim-Line Provider Specialty Code,CLM_PRVDR_SPCLTY_CD,73,74,2,X(02),Indicates the CMS specialty code associated with the provider of services. CMS used this number to price the service on the line-item. Find Provider Specialty Code at CMS.gov or the Research Data Assistance Center.,Provider Speciality Code,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-PRVDR-SPCLTY-CD').value.code
|
||||
CCLF5,11,Claim Federal Type Service Code,CLM_FED_TYPE_SRVC_CD,75,75,1,X(01),"Indicates the type of service (e.g., consultation, surgery) provided to the beneficiary. Types of Service Code are defined in the Medicare Carrier Manual. Find Types of Service Code at the ResDAC website.",CMS Service Type Code,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-FED-TYPE-SRVC-CD').value.code
|
||||
CCLF5,12,Claim Place of Service Code,CLM_POS_CD,76,77,2,X(02),"Indicates the place where the indicated service was provided (e.g., ambulance, school). Places of service are defined in the Medicare Carrier Manual. Find Place of Service Code at the ResDAC website.",Place Of Service Code,ExplanationOfBenefit.item.location.coding.where(system='https://www.cms.gov/Medicare/Coding/place-of-service-codes/Place_of_Service_Code_Set').code
|
||||
CCLF5,13,Claim Line From Date,CLM_LINE_FROM_DT,78,87,10,YYYY-MM-DD,The date the service associated with the line item began.,Line Item From Date,ExplanationOfBenefit.item.serviced.start
|
||||
CCLF5,14,Claim Line Thru Date,CLM_LINE_THRU_DT,88,97,10,YYYY-MM-DD,The date the service associated with the line item ended.,Last Expense Date,ExplanationOfBenefit.item.serviced.end
|
||||
CCLF5,15,HCPCS Code,CLM_LINE_HCPCS_CD,98,102,5,X(05),"The HCPCS code representing the procedure, supply, product, and/or service provided to the beneficiary. I H",Line Item HCPCS Code,ExplanationOfBenefit.item.productOrService.where(coding.system='http://www.ama-assn.org/go/cpt' or coding.system='https://www.cms.gov/Medicare/Coding/HCPCSReleaseCodeSets' or coding.system='http://terminology.hl7.org/CodeSystem/data-absent-reason').coding.code
|
||||
CCLF5,16,Claim Line NCH Payment Amount,CLM_LINE_CVRD_PD_AMT,103,117,15,X(15),The amount of payment made by Medicare on behalf of the beneficiary for the indicated service after deductible and coinsurance amounts have been paid.,Claim Line Covered Paid Amount,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_CVRD_PD_AMT')).amount.value
|
||||
CCLF5,17,Claim Primary Payer Code,CLM_LINE_PRMRY_PYR_CD,118,118,1,X(01),"If a payer other than Medicare has primary responsibility for payment of the service indicated on the claim line, this code indicates the primary payer. This field is also known as the Line Beneficiary Primary Payer Code. I H If this field is blank, Medicare is the primary payer for the beneficiary. Find Primary Payer Code at the ResDAC website.",Line Primary Payer Code,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-PRMRY-PYR-CD').value.code
|
||||
CCLF5,18,Diagnosis Code,CLM_LINE_DGNS_CD,119,125,7,X(07),The ICD-9/10 diagnosis code identifying the beneficiary’s principal illness or disability. I H,Line Item Diagnosis Code,ExplanationOfBenefit.item.select(%root.diagnosis[diagnosisSequence-1].diagnosis.coding.code)
|
||||
CCLF5,19,Claim Provider Tax Number,CLM_RNDRG_PRVDR_TAX_NUM,126,135,10,X(10),The SSN or Employee Identification Number (EIN) of the provider of the indicated service. This number identifies who receives payment for the indicated service. I,Provider Tax Number,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-PRVDR-TAX-NUM').value
|
||||
CCLF5,20,Rendering Provider NPI Number,RNDRG_PRVDR_NPI_NUM,136,145,10,X(10),A number that identifies the provider rendering the indicated service on the claim line. Each provider is assigned its own unique NPI.,Rendering Provider NPI Number - Line Level,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'rendering').exists()).provider.identifier.value
|
||||
CCLF5,21,Claim Carrier Payment Denial Code,CLM_CARR_PMT_DNL_CD,146,147,2,X(02),"Indicates to whom payment was made (e.g., physician, beneficiary), or if the claim was denied. Find Carrier Payment Denial Code at the ResDAC website. Additionally, the following code may be available: G = MSP Cost Avoided - Secondary Claims Investigation H = MSP Cost Avoided - Self Reports J = MSP Cost Avoided - 411.25 T = MSP Cost Avoided - IEQ contractor (eff. 7/96) X = MSP Cost Avoided - generic Y = MSP Cost Avoided - IRS/SSA data match project",Claim Payment Denial Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_CARR_PMT_DNL_CD').exists()).code.coding.code
|
||||
CCLF5,22,Claim-Line Processing Indicator Code,CLM_PRCSG_IND_CD,148,149,2,X(02),"Indicates if the service indicated on the claim line was allowed or the reason it was denied. Find Processing Indicator Code at the ResDAC website. Additionally, the following code may be available: G = MSP Cost Avoided - Secondary Claims Investigation H = MSP Cost Avoided - Self Reports J = MSP Cost Avoided - 411.25 19 = MSP Cost Avoided - Worker's Compensation Set Aside 41 = MSP Cost Avoided - Next Generation Desktop",Processing Indicator Code,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-PRCSG-IND-CD').value.code
|
||||
CCLF5,23,Claim Adjustment Type Code,CLM_ADJSMT_TYPE_CD,150,151,2,X(02),"Indicates whether the claim is an original, cancellation, or adjustment claim. Claim Adjustment Type Code include: 0 = Original Claim 1 = Cancellation Claim 2 = Adjustment claim",Claim Adjustment Type Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_ADJSTMT_TYPE_CD').exists()).code.coding.code
|
||||
CCLF5,24,Claim Effective Date,CLM_EFCTV_DT,152,161,10,YYYY-MM-DD,The date the claim was processed and added to the NCH. This is also referred to as the NCH Weekly Processing Date.,Claim Effective Date,ExplanationOfBenefit.created
|
||||
CCLF5,25,Claim IDR Load Date,CLM_IDR_LD_DT,162,171,10,YYYY-MM-DD,When the claim was loaded into the IDR.,Claim IDR Load Date,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_IDR_LD_DT').exists()).timing
|
||||
CCLF5,26,Claim Control Number,CLM_CNTL_NUM,172,211,40,X(40),A unique number assigned to a claim by the Medicare carrier. This number allows CMS to associate each line item with its respective claim.,Claim Control Number,ExplanationOfBenefit.identifier.where(system = 'https://bluebutton.cms.gov/identifiers/CLM-CNTL-NUM').value
|
||||
CCLF5,27,Beneficiary Equitable BIC HICN Number,BENE_EQTBL_BIC_HICN_NUM,212,222,11,X(11),"Legacy Beneficiary Equitable BIC HICN Number. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value/ Beneficiary Equitable BIC HICN Number will no longer be displayed. The Beneficiary Equitable BIC HICN Number will be blank effective January 1, 2020.",,
|
||||
CCLF5,28,Claim Line Allowed Charges Amount,CLM_LINE_ALOWD_CHRG_AMT,223,239,17,X(17),The amount Medicare approved for payment to the provider.,Line Item Allowed Charge Amount,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_ALOWD_CHRG_AMT')).amount.value
|
||||
CCLF5,29,Claim Line Service Unit Quantity,CLM_LINE_SRVC_UNIT_QTY,240,263,24,-9(18).9999,"Count of total units, at the line-item level, associated with services needing unit reporting (e.g., anesthesia time units and blood units).",Line Item Service Unit Quantity,ExplanationOfBenefit.item.quantity.value
|
||||
CCLF5,30,HCPCS First Modifier Code,HCPCS_1_MDFR_CD,264,265,2,X(2),The first code to modify the HCPCS procedure code associated with the claim- line. This provides more specific procedure identification for the line- item service. H,HCPCS Modifier Code 1,ExplanationOfBenefit.item.modifier[0].coding.code
|
||||
CCLF5,31,HCPCS Second Modifier Code,HCPCS_2_MDFR_CD,266,267,2,X(2),The second code to modify the HCPCS procedure code associated with the claim- line. This provides more specific procedure identification for the line- item service. H,HCPCS Modifier Code 2,ExplanationOfBenefit.item.modifier[1].coding.code
|
||||
CCLF5,32,HCPCS Third Modifier Code,HCPCS_3_MDFR_CD,268,269,2,X(2),The third code to modify the HCPCS procedure code associated with the claim- line. This provides more specific procedure identification for the line- item service. H,HCPCS Modifier Code 3,ExplanationOfBenefit.item.modifier[2].coding.code
|
||||
CCLF5,33,HCPCS Fourth Modifier Code,HCPCS_4_MDFR_CD,270,271,2,X(2),The fourth code to modify the HCPCS procedure code associated with the claim- line. This provides more specific procedure identification for the line- item service. H,HCPCS Modifier Code 4,ExplanationOfBenefit.item.modifier[3].coding.code
|
||||
CCLF5,34,HCPCS Fifth Modifier Code,HCPCS_5_MDFR_CD,272,273,2,X(2),The fifth code to modify the HCPCS procedure code associated with the claim- line. This provides more specific procedure identification for the line- item service. H,HCPCS Modifier Code 5,ExplanationOfBenefit.item.modifier[4].coding.code
|
||||
CCLF5,35,Claim Disposition Code,CLM_DISP_CD,274,275,2,X(2),Information regarding payment actions on the claim. Claim Disposition Code include: 01 = Debit accepted 02 = Debit accepted (automatic adjustment) 03 = Cancel accepted,Claim Disposition Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_DISP_CD').exists()).code.coding.code
|
||||
CCLF5,36,Claim Diagnosis First Code,CLM_DGNS_1_CD,276,282,7,X(7),The first of 12 allowable ICD-9/10 diagnosis code identifying the beneficiary’s illness or disability. I H,Claim Diagnosis Code,ExplanationOfBenefit.diagnosis.diagnosis.coding.code
|
||||
CCLF5,37,Claim Diagnosis Second Code,CLM_DGNS_2_CD,283,289,7,X(7),The second of 12 allowable ICD-9/10 diagnosis code identifying the beneficiary’s illness or disability. I H,Claim Diagnosis Code,ExplanationOfBenefit.diagnosis.diagnosis.coding.code
|
||||
CCLF5,38,Claim Diagnosis Third Code,CLM_DGNS_3_CD,290,296,7,X(7),The third of 12 allowable ICD-9/10 diagnosis code identifying the beneficiary’s illness or disability. I H,Claim Diagnosis Code,ExplanationOfBenefit.diagnosis.diagnosis.coding.code
|
||||
CCLF5,39,Claim Diagnosis Fourth Code,CLM_DGNS_4_CD,297,303,7,X(7),The fourth of 12 allowable ICD-9/10 diagnosis code identifying the beneficiary’s illness or disability. I H,Claim Diagnosis Code,ExplanationOfBenefit.diagnosis.diagnosis.coding.code
|
||||
CCLF5,40,Claim Diagnosis Fifth Code,CLM_DGNS_5_CD,304,310,7,X(7),The fifth of 12 allowable ICD-9/10 diagnosis code identifying the beneficiary’s illness or disability. I H,Claim Diagnosis Code,ExplanationOfBenefit.diagnosis.diagnosis.coding.code
|
||||
CCLF5,41,Claim Diagnosis Sixth Code,CLM_DGNS_6_CD,311,317,7,X(7),The sixth of 12allowable ICD-9/10 diagnosis code identifying the beneficiary’s illness or disability. I H,Claim Diagnosis Code,ExplanationOfBenefit.diagnosis.diagnosis.coding.code
|
||||
CCLF5,42,Claim Diagnosis Seventh Code,CLM_DGNS_7_CD,318,324,7,X(7),The seventh of 12 allowable ICD-9/10 diagnosis code identifying the beneficiary’s illness or disability. I H,Claim Diagnosis Code,ExplanationOfBenefit.diagnosis.diagnosis.coding.code
|
||||
CCLF5,43,Claim Diagnosis Eighth Code,CLM_DGNS_8_CD,325,331,7,X(7),The eighth of 12 allowable ICD-9/10 diagnosis code identifying the beneficiary’s illness or disability. I H,Claim Diagnosis Code,ExplanationOfBenefit.diagnosis.diagnosis.coding.code
|
||||
CCLF5,44,ICD Version Indicator,DGNS_PRCDR_ICD_IND,332,332,1,X(1),9 = ICD-9 0 = ICD-10 U = any value other than “9” or “0” in the source data.,Diagnosis Procedure ICD indicator,ExplanationOfBenefit.diagnosis.diagnosis.coding.system
|
||||
CCLF5,45,Claim Diagnosis Ninth Code,CLM_DGNS_9_CD,333,339,7,X(7),The ninth of 12 allowable ICD-9/10 diagnosis code identifying the beneficiary’s illness or disability. I H,Claim Diagnosis Code,ExplanationOfBenefit.diagnosis.diagnosis.coding.code
|
||||
CCLF5,46,Claim Diagnosis Tenth Code,CLM_DGNS_10_CD,340,346,7,X(7),The tenth of 12 allowable ICD-9/10 diagnosis code identifying the beneficiary’s illness or disability. I H,Claim Diagnosis Code,ExplanationOfBenefit.diagnosis.diagnosis.coding.code
|
||||
CCLF5,47,Claim Diagnosis Eleventh Code,CLM_DGNS_11_CD,347,353,7,X(7),The eleventh of 12 allowable ICD-9/10 diagnosis code identifying the beneficiary’s illness or disability. I H,Claim Diagnosis Code,ExplanationOfBenefit.diagnosis.diagnosis.coding.code
|
||||
CCLF5,48,Claim Diagnosis Twelfth Code,CLM_DGNS_12_CD,354,360,7,X(7),The twelfth of 12 allowable ICD-9/10 diagnosis code identifying the beneficiary’s illness or disability. I H,Claim Diagnosis Code,ExplanationOfBenefit.diagnosis.diagnosis.coding.code
|
||||
CCLF5,49,HCPCS BETOS Code,HCPCS_BETOS_CD,361,363,3,X(3),A code representing a clinical category. The Berenson-Eggers Type of Service (BETOS) code.,,
|
||||
CCLF5,50,Claim Rendering Provider NPI Number,CLM_RNDRG_PRVDR_NPI_NUM,364,373,10,X(10),"A number that identifies the provider rendering the indicated service on the claim line. Each provider is assigned its own unique NPI. Notes: From January 2022 onward, for Shared Savings Program, ACO REACH, KCC, VTAPM, and PCF models, this value is sourced from the Medicare claims processing system. This field is included in addition to the Element 20 “Rendering Provider NPI Number” sourced from PECOS.",Rendering Provider NPI Number - Line Level,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'rendering').exists()).provider.identifier.value
|
||||
CCLF5,51,Claim Referring Provider NPI Number,CLM_RFRG_PRVDR_NPI_NUM,374,383,10,X(10),A number that identifies the provider that referred the service on the claim line. Each provider is assigned its own unique NPI.,Referring Provider NPI Number,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'referring').exists()).provider.identifier.value
|
||||
CCLF5,52,Claim contractor number,CLM_CNTRCTR_NUM,384,388,5,X(5),A number assigned by CMS identifying a MAC authorized to process Medicare claims.,FI Number,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_CNTRCTR_NUM').exists()).code.coding.code
|
||||
CCLF6,1,Current Claim Unique Identifier,CUR_CLM_UNIQ_ID,1,13,13,9(13),A unique identification number assigned to the claim. I H,The claim unique ID is a unique ID for the claim within the source system.,ExplanationOfBenefit.identifier.where(type.coding.system = 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType' and type.coding.code = 'uc' ).value
|
||||
CCLF6,2,Claim Line Number,CLM_LINE_NUM,14,23,10,9(10),A sequential number that identifies a specific claim line.,Line Item Sequence Number,ExplanationOfBenefit.item.sequence
|
||||
CCLF6,3,Medicare Beneficiary Identifier,BENE_MBI_ID,24,34,11,X(11),A Medicare Beneficiary Identifier assigned to a beneficiary. I H,Medicare Beneficiary Identifier,Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').value
|
||||
CCLF6,4,Beneficiary HIC Number,BENE_HIC_NUM,35,45,11,X(11),"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards.",,
|
||||
CCLF6,5,Claim Type Code,CLM_TYPE_CD,46,47,2,9(02),Signifies the type of claim being submitted through the Medicare or Medicaid programs. H Claim type code include: 81 = RIC M DMERC non-DMEPOS claim 82 = RIC M DMERC DMEPOS claim,Claim Type Code,ExplanationOfBenefit.type.coding.where(system = 'https://bluebutton.cms.gov/fhir/CodeSystem/CLM-TYPE-CD').code
|
||||
CCLF6,6,Claim From Date,CLM_FROM_DT,48,57,10,YYYY-MM-DD,The first day on the billing statement that covers services rendered to the beneficiary. H Also known as the “Statement Covers From Date.”,Claim From Date,ExplanationOfBenefit.billablePeriod.start
|
||||
CCLF6,7,Claim Thru Date,CLM_THRU_DT,58,67,10,YYYY-MM-DD,The last day on the billing statement that covers services rendered to the beneficiary. H Also known as the “Statement Covers Through Date.”,Claim Thru Date,ExplanationOfBenefit.billablePeriod.end
|
||||
CCLF6,8,Claim Federal Type Service Code,CLM_FED_TYPE_SRVC_CD,68,68,1,X(01),"Indicates the type of service (e.g., consultation, surgery), provided to the beneficiary. Types of Service Code are defined in the Medicare Carrier Manual. H Find Types of Service Code at the ResDAC website.",CMS Service Type Code,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-FED-TYPE-SRVC-CD').value.code
|
||||
CCLF6,9,Claim Place of Service Code,CLM_POS_CD,69,70,2,X(02),"Indicates place where the indicated service was provided (e.g., ambulance, school). H Find Place of Service Code at the ResDAC website.",Place Of Service Code,ExplanationOfBenefit.item.location.coding.where(system='https://www.cms.gov/Medicare/Coding/place-of-service-codes/Place_of_Service_Code_Set').code
|
||||
CCLF6,10,Claim Line From Date,CLM_LINE_FROM_DT,71,80,10,YYYY-MM-DD,The date the service associated with the line item began. H,Line Item From Date,ExplanationOfBenefit.item.serviced.start
|
||||
CCLF6,11,Claim Line Thru Date,CLM_LINE_THRU_DT,81,90,10,YYYY-MM-DD,The date the service associated with the line item ended. H,Last Expense Date,ExplanationOfBenefit.item.serviced.end
|
||||
CCLF6,12,HCPCS Code,CLM_LINE_HCPCS_CD,91,95,5,X(05),"The HCPCS code representing the procedure, supply, product, and/or service provided to the beneficiary. H",Line Item HCPCS Code,ExplanationOfBenefit.item.productOrService.where(coding.system='http://www.ama-assn.org/go/cpt' or coding.system='https://www.cms.gov/Medicare/Coding/HCPCSReleaseCodeSets' or coding.system='http://terminology.hl7.org/CodeSystem/data-absent-reason').coding.code
|
||||
CCLF6,13,Claim Line NCH Payment Amount,CLM_LINE_CVRD_PD_AMT,96,110,15,-9(11).99,The amount of payment made by Medicare on behalf of the beneficiary for the indicated service after deductible and coinsurance amounts have been paid. H,Claim Line Covered Paid Amount,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_CVRD_PD_AMT')).amount.value
|
||||
CCLF6,14,Claim Primary Payer Code,CLM_PRMRY_PYR_CD,111,111,1,X(01),"If a payer other than Medicare has primary responsibility for payment of the service indicated on the claim line, this code indicates the primary payer. This field is also known as the Line Beneficiary Primary Payer Code. If this field is blank, Medicare is the primary payer for the beneficiary. Find Primary Payer Code at the ResDAC website.",Line Primary Payer Code,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-PRMRY-PYR-CD').value.code
|
||||
CCLF6,15,Pay-to Provider NPI Number,PAYTO_PRVDR_NPI_NUM,112,121,10,X(10),A number that identifies the provider billing for the indicated service on the claim line. Each provider is assigned its own unique NPI.,Provider billing NPI number,ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://hl7.org/fhir/sid/us-npi').value
|
||||
CCLF6,16,Ordering Provider NPI Number,ORDRG_PRVDR_NPI_NUM,122,131,10,X(10),A number that identifies the provider ordering the indicated service on the claim line. Each provider is assigned its own unique NPI.,Referring Provider NPI Number,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'referring').exists()).provider.identifier.value
|
||||
CCLF6,17,Claim Carrier Payment Denial Code,CLM_CARR_PMT_DNL_CD,132,133,2,X(02),"Indicates to whom payment was made (e.g., physician, beneficiary) or if the claim was denied Find Carrier Payment Denial Code at the ResDAC website. Additionally, the following code may be available: G = Secondary Claims Investigation H = Self Reports J = 411.25 T = MSP Cost Avoided - IEQ contractor (eff. 7/96) X = MSP Cost Avoided - generic Y = MSP Cost Avoided - IRS/SSA data match project",Claim Payment Denial Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_CARR_PMT_DNL_CD').exists()).code.coding.code
|
||||
CCLF6,18,Claim Processing Indicator Code,CLM_PRCSG_IND_CD,134,135,2,X(02),"Indicates if the service indicated on the claim line was allowed or the reason it was denied. Find Processing Indicator Code at the ResDAC website. Additionally, the following code may be available: G = MSP Cost Avoided - Secondary Claims Investigation H = MSP Cost Avoided - Self Reports J = MSP Cost Avoided - 411.25 19 = MSP Cost Avoided - Worker's Compensation Set Aside 41 = MSP Cost Avoided - Next Generation Desktop",Processing Indicator Code,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-PRCSG-IND-CD').value.code
|
||||
CCLF6,19,Claim Adjustment Type Code,CLM_ADJSMT_TYPE_CD,136,137,2,X(02),"Indicates whether the claim is an original, cancellation, or adjustment claim. Claim Adjustment Type Code include: 0 = Original Claim 1 = Cancellation Claim 2 = Adjustment claim",Claim Adjustment Type Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_ADJSTMT_TYPE_CD').exists()).code.coding.code
|
||||
CCLF6,20,Claim Effective Date,CLM_EFCTV_DT,138,147,10,YYYY-MM-DD,The date the claim was processed and added to the NCH. This is also referred to as the NCH Weekly Processing Date. H,Claim Effective Date,ExplanationOfBenefit.created
|
||||
CCLF6,21,Claim IDR Load Date,CLM_IDR_LD_DT,148,157,10,YYYY-MM-DD,When the claim was loaded into the IDR.,Claim IDR Load Date,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_IDR_LD_DT').exists()).timing
|
||||
CCLF6,22,Claim Control Number,CLM_CNTL_NUM,158,197,40,X(40),A unique number assigned to a claim by the Medicare carrier. This number allows CMS to associate each line item with its respective claim.,Claim Control Number,ExplanationOfBenefit.identifier.where(system = 'https://bluebutton.cms.gov/identifiers/CLM-CNTL-NUM').value
|
||||
CCLF6,23,Beneficiary Equitable BIC HICN Number,BENE_EQTBL_BIC_HICN_NUM,198,208,11,X(11),"Legacy Beneficiary Equitable BIC HICN Number. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value/ Beneficiary Equitable BIC HICN Number will no longer be displayed. The Beneficiary Equitable BIC HICN Number will be blank in CCLFs generated effective January 1, 2020, onwards.",,
|
||||
CCLF6,24,Claim Line Allowed Charges Amount,CLM_LINE_ALOWD_CHRG_AMT,209,225,17,-9(14).99,The amount Medicare approved for payment to the provider.,Line Item Allowed Charge Amount,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_ALOWD_CHRG_AMT')).amount.value
|
||||
CCLF6,25,Claim Disposition Code,CLM_DISP_CD,226,227,2,X(2),Contains information regarding payment actions on the claim. Claim Disposition Code include: 01 = Debit accepted 02 = Debit accepted (automatic adjustment) 03 = Cancel accepted,Claim Disposition Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_DISP_CD').exists()).code.coding.code
|
||||
CCLF6,26,Claim Pay-to Provider NPI Number,CLM_BLG_PRVDR_NPI_NUM,228,237,10,X(10),"A number that identifies the provider billing for the indicated service on the claim line. Each provider is assigned its own unique NPI. Notes: From January 2022 onward, for Shared Savings Program, ACO REACH, KCC, VTAPM, and PCF models, this value is sourced from the Medicare claims processing system. This field is included in addition to the Element 15 “Pay-to Provider NPI Number” sourced from PECOS.",Provider billing NPI number,ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://hl7.org/fhir/sid/us-npi').value
|
||||
CCLF6,27,Claim Ordering Provider NPI Number,CLM_RFRG_PRVDR_NPI_NUM,238,247,10,X(10),"A number that identifies the provider ordering the indicated service on the claim line. Each provider is assigned its own unique NPI. Notes: From January 2022 onward, for Shared Savings Program, ACO REACH, KCC, VTAPM, and PCF models, this value is sourced from the Medicare claims processing system. This field is included in addition to the Element 16 “Ordering Provider NPI Number” sourced from PECOS.",Referring Provider NPI Number,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'referring').exists()).provider.identifier.value
|
||||
CCLF7,1,Current Claim Unique Identifier,CUR_CLM_UNIQ_ID,1,13,13,9(13),A unique identification number assigned to the claim. I H,Claim Unique ID,ExplanationOfBenefit.identifier.where(type.coding.system = 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType' and type.coding.code = 'uc' ).value
|
||||
CCLF7,2,Medicare Beneficiary Identifier,BENE_MBI_ID,14,24,11,X(11),A Medicare Beneficiary Identifier assigned to a beneficiary. I H,Medicare Beneficiary Identifier,Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').value
|
||||
CCLF7,3,Beneficiary HIC Number,BENE_HIC_NUM,25,35,11,X(11),"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards.",,
|
||||
CCLF7,4,NDC Code,CLM_LINE_NDC_CD,36,46,11,X(11),A universal unique product identifier for human drugs. H,National Drug Code,(ExplanationOfBenefit.item.productOrService.coding|ExplanationOfBenefit.item.detail.productOrService.coding).where(system = 'http://hl7.org/fhir/sid/ndc').code
|
||||
CCLF7,5,Claim Type Code,CLM_TYPE_CD,47,48,2,9(02),Signifies the type of claim being submitted through the Medicare or Medicaid programs. H Claim type code include: 01 = Part D - Original without resubmitted PDE 02 = Part D - Adjusted PDE 03 = Part D - Deleted Claims 04 = Part D - Resubmitted PDE,Claim Type Code,ExplanationOfBenefit.type.coding.where(system = 'https://bluebutton.cms.gov/fhir/CodeSystem/CLM-TYPE-CD').code
|
||||
CCLF7,6,Claim Line From Date,CLM_LINE_FROM_DT,49,58,10,YYYY-MM-DD,"The date the service associated with the line item began (i.e., the date upon which the prescription was filled).",Line Item From Date,ExplanationOfBenefit.item.serviced
|
||||
CCLF7,7,Provider Service Identifier Qualifier Code,PRVDR_SRVC_ID_QLFYR_CD,59,60,2,X(02),Indicates the type of number used to identify the pharmacy providing the services: 01 = NPI Number 06 = Unique Physician Identification Number (UPIN) 07 = National Council for Prescription Drug Programs (NCPDP) Number 08 = State License Number 11 = TIN 99 = Other mandatory for Standard Data Format,Provider Service Identifier Qualifier Code,ExplanationOfBenefit.contained.where(id = %context.provider.reference.substring(1)).identifier.type.where(system='http://bluebutton.cms.gov/fhir/CodeSystem/PRVDR-ID-QLFYR-CD').code
|
||||
CCLF7,8,Claim Service Provider Generic ID Number,CLM_SRVC_PRVDR_GNRC_ID_NUM,61,80,20,X(20),The number associated with the indicated code in the Provider Service Identification Qualifier Code field.,Service Provider Generic ID Number,ExplanationOfBenefit.contained.where(id = %context.provider.reference.substring(1)).identifier.where(system='http://bluebutton.cms.gov/fhir/identifiers/GenericIdNum').value
|
||||
CCLF7,9,Claim Dispensing Status Code,CLM_DSPNSNG_STUS_CD,81,81,1,X(01),Indicates the status of prescription fulfillment. Dispensing Code include: P = Partially filled C = Completely filled,Dispensing Status Code,ExplanationOfBenefit.supportingInfo.code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-DSPNSNG-STUS-CD').code
|
||||
CCLF7,10,Claim Dispense as Written (DAW) Product Selection Code,CLM_DAW_PROD_SLCTN_CD,82,82,1,X(01),Indicates the prescriber's instructions regarding generic substitution or how those instructions were followed. DAW Product Selection Code include: 0 = No product selection indicated 1 = Substitution not allowed by prescriber 2 = Substitution allowed – Patient requested that brand be dispensed 3 = Substitution allowed – Pharmacist selected product dispensed 4 = Substitution allowed – Generic not in stock 5 = Substitution allowed – Brand drug dispensed as generic 6 = Override 7 = Substitution not allowed – Brand drug mandated by law 8 = Substitution allowed – Generic drug not available in marketplace 9 = Other,DAW Product Selection Code,ExplanationOfBenefit.supportingInfo.code.coding.where(system='http://terminology.hl7.org/CodeSystem/NCPDPDispensedAsWrittenOrProductSelectionCode').code
|
||||
CCLF7,11,Claim Line Service Unit Quantity,CLM_LINE_SRVC_UNIT_QTY,83,106,24,-9(18).9999,"Count of total units, at the line-item level, associated with services needing unit reporting (e.g., anesthesia time units and blood units).",Line Item NDC Quantity,(ExplanationOfBenefit.item.quantity|ExplanationOfBenefit.item.detail.quantity).value
|
||||
CCLF7,12,Claim Line Days’ Supply Quantity,CLM_LINE_DAYS_SUPLY_QTY,107,115,9,9(09),The number of days the supply of medication dispensed by the pharmacy will cover.,Days Supply Quantity,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and code='dayssupply').exists()).valueQuantity.value
|
||||
CCLF7,13,Provider Prescribing ID Qualifier Code,PRVDR_PRSBNG_ID_QLFYR_CD,116,117,2,X(02),Indicates the type of number used to identify the prescribing provider: 01 = NPI Number 06 = UPIN 07 = NCPDP Number 08 = State License Number 11 = TIN 12 = DEA 99 = Other mandatory for Standard Data Format,Provider Prescribing Identifier Qualifier Code,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'prescribing').exists()).provider.identifier.type.coding.where(system='http://bluebutton.cms.gov/fhir/CodeSystem/PRVDR-ID-QLFYR-CD').code
|
||||
CCLF7,14,Claim Prescribing Provider Generic ID Number,CLM_PRSBNG_PRVDR_GNRC_ID_NUM,118,137,20,X(20),The number associated with the indicated code in the Provider Prescribing Service Identification Qualifier Code field.,Prescribing Provider Generic ID Number,ExplanationOfBenefit.careTeam.where(role.coding.where(code='prescribing').exists()).provider.identifier.where(system='http://bluebutton.cms.gov/fhir/identifiers/GenericIdNum').value
|
||||
CCLF7,15,Claim Line Beneficiary Payment Amount,CLM_LINE_BENE_PMT_AMT,138,150,13,-9(9).99,"The dollar amount paid by the beneficiary that is not reimbursed by a third party (e.g., copayments, coinsurance, deductible, or other patient pay amounts). H",Patient Responsibility Payment Amount,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBAdjudication' and code='paidbypatient').exists() and category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_LINE_BENE_PMT_AMT').exists()).amount.value
|
||||
CCLF7,16,Claim Adjustment Type Code,CLM_ADJSMT_TYPE_CD,151,152,2,X(02),"Indicates whether the claim an original, cancellation, or adjustment claim. Claim Adjustment Type Code include: 0 = Original Claim 1 = Cancellation Claim 2 = Adjustment claim",Claim Adjustment Type Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_ADJSTMT_TYPE_CD').exists()).code.coding.code
|
||||
CCLF7,17,Claim Effective Date,CLM_EFCTV_DT,153,162,10,YYYY-MM-DD,The date the claim was processed and added to the NCH. This is also referred to as the NCH Weekly Processing Date. H,Claim Effective Date,ExplanationOfBenefit.created
|
||||
CCLF7,18,Claim IDR Load Date,CLM_IDR_LD_DT,163,172,10,YYYY-MM-DD,When the claim was loaded into the IDR.,Claim IDR Load Date,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_IDR_LD_DT').exists()).timing
|
||||
CCLF7,19,Claim Line Prescription Service Reference Number,CLM_LINE_RX_SRVC_RFRNC_NUM,173,184,12,9(12),Identifies a prescription dispensed by a particular service provider on a particular service date.,RX Number,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information' and code='CLM_LINE_RX_NUM').exists()).value
|
||||
CCLF7,20,Claim Line Prescription Fill Number,CLM_LINE_RX_FILL_NUM,185,193,9,X(09),Assigned to the current dispensed supply by the pharmacy. It designates the sequential order of the original fill or subsequent refills of a prescription.,RX Fill Number,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and code='refillnum').exists()).valueQuantity.value
|
||||
CCLF7,21,Claim Pharmacy Service Type Code,CLM_PHRMCY_SRVC_TYPE_CD,194,195,2,X(02),A unique identifier of a type of service being performed by a pharmacy when different contractual terms exist between a payer and the pharmacy or when benefits are based upon the type of service performed. 1 = Community/Retail Pharmacy Services 2 = Compounding Pharmacy Services 3 = Home Infusion Therapy Provider Services 4 = Institutional Pharmacy Services 5 = Long Term Care Pharmacy Services 6 = Mail Order Pharmacy Services 7 = Managed Care Organization Pharmacy Services 8 = Specialty Care Pharmacy Services 99 = Other,Pharmacy Service Type Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information' and code='CLM_PHRMCY_SRVC_TYPE_CD').exists()).code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-PHRMCY-SRVC-TYPE-CD').code
|
||||
CCLF8,1,Medicare Beneficiary Identifier,BENE_MBI_ID,1,11,11,X(11),A Medicare Beneficiary Identifier assigned to a beneficiary. I H,Medicare Beneficiary Identifier,Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').value
|
||||
CCLF8,2,Beneficiary HIC Number,BENE_HIC_NUM,12,22,11,X(11),"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards.",,
|
||||
CCLF8,3,Beneficiary FIPS State Code,BENE_FIPS_STATE_CD,23,24,2,9(02),Identifies the state where the beneficiary receiving services resides. I H,,
|
||||
CCLF8,4,Beneficiary FIPS County Code,BENE_FIPS_CNTY_CD,25,27,3,9(03),Identifies the county where the beneficiary receiving services resides. I H,,
|
||||
CCLF8,5,Beneficiary ZIP Code,BENE_ZIP_CD,28,32,5,X(05),The beneficiary’s ZIP code as indicated in their Medicare enrollment record. I H,,
|
||||
CCLF8,6,Beneficiary Date of Birth,BENE_DOB,33,42,10,YYYY-MM-DD,"The month, day, and year of the beneficiary’s birth. I H",Beneficiary Date of Birth,Patient.birthDate
|
||||
CCLF8,7,Beneficiary Sex Code,BENE_SEX_CD,43,43,1,X(01),The beneficiary’s sex. I H Code includes: 1 = Male 2 = Female 0 = Unknown,Beneficiary Sex Code,Patient.extension.where(url='http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex').value
|
||||
CCLF8,8,Beneficiary Race Code,BENE_RACE_CD,44,44,1,X(01),The beneficiary's race. I H Code includes: 0 = Unknown 1 = White 2 = Black 3 = Other 4 = Asian 5 = Hispanic 6 = North American Native,Beneficiary Race Code,Patient.extension.where(url='http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity' or url='http://hl7.org/fhir/us/core/StructureDefinition/us-core-race').extension.valueCoding
|
||||
CCLF8,9,Beneficiary Age,BENE_AGE,45,47,3,9(03),"The beneficiary’s current age, as calculated by subtracting the beneficiary’s date of birth from the current date. I H",,
|
||||
CCLF8,10,Beneficiary Medicare Status Code,BENE_MDCR_STUS_CD,48,49,2,X(02),"Indicates the reason for a beneficiary's entitlement to Medicare benefits as of a particular date, broken down by the following categories: I H Old Age & Survivors Insurance (OASI), Disabled, and ESRD, and by appropriate combinations of these categories: 10 = Aged without ESRD 11 = Aged with ESRD 20 = Disabled without ESRD 21 = Disabled with ESRD 31 = ESRD only",Medicare Status Code,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD').value.code
|
||||
CCLF8,11,Beneficiary Dual Status Code,BENE_DUAL_STUS_CD,50,51,2,X(02),"Identifies the most recent entitlement status of beneficiaries eligible for a program(s) in addition to Medicare (e.g., Medicaid). I H Find Dual Status Code at the ResDAC website.",Beneficiary Dual Status Code,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD').value.code
|
||||
CCLF8,12,Beneficiary Death Date,BENE_DEATH_DT,52,61,10,YYYY-MM-DD,"The month, day, and year of a beneficiary’s death. I H",Beneficiary Date of Death,Patient.deceasedDateTime
|
||||
CCLF8,13,Date beneficiary enrolled in Hospice,BENE_RNG_BGN_DT,62,71,10,YYYY-MM-DD,The date the beneficiary enrolled in Hospice. I H,,
|
||||
CCLF8,14,Date beneficiary ended Hospice,BENE_RNG_END_DT,72,81,10,YYYY-MM-DD,The date the beneficiary is- enrolled in hospice. I H,,
|
||||
CCLF8,15,Beneficiary First Name,BENE_1ST_NAME,82,111,30,X(30),The first name of the beneficiary. I H,Beneficiary First Name,Patient.name.given[0]
|
||||
CCLF8,16,Beneficiary Middle Name,BENE_MIDL_NAME,112,126,15,X(15),The middle name of the beneficiary. I H,Beneficiary Middle Name,Patient.name.given[1]
|
||||
CCLF8,17,Beneficiary Last Name,BENE_LAST_NAME,127,166,40,X(40),The last name of the beneficiary. I H,Beneficiary Last Name,Patient.name.family
|
||||
CCLF8,18,Beneficiary Original Entitlement Reason Code,BENE_ORGNL_ENTLMT_RSN_CD,167,167,1,X(01),The reason for the beneficiary's original entitlement to Medicare benefits. I H 0 = Old Age and Survivors Insurance (OASI) 1 = Disability Insurance Benefits (DIB) 2 = ESRD 3 = Both DIB and ESRD 4 = Unknown,Beneficiary Entitlement Reason Code,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD').value.code
|
||||
CCLF8,19,Beneficiary Entitlement Buy- in Indicator,BENE_ENTLMT_BUYIN_IND,168,168,1,X(01),"Indicates for each month of the denominator reference year, the entitlement of the beneficiary to Medicare Part A, Medicare Part B, or Medicare Parts A and B both, as well as whether or not the beneficiary’s state of residence was liable and paid for the beneficiary’s Medicare Part B monthly premiums. I H 0 = Not Entitled 1 = Part A Only 2 = Part B Only 3 = Part A and Part B A = Part A, State Buy-In B = Part B, State Buy-In C = Parts A and B, State Buy- In",Buy-in Code,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD').value.code
|
||||
CCLF8,20,Bene Entitlement Part A Begin Date,BENE_PART_A_ENRLMT_BGN_DT,169,178,10,YYYY-MM-DD,The date that a beneficiary is entitled for Medicare Part A benefits.,Beneficiary Range Begin Date,Coverage.period.start
|
||||
CCLF8,21,Bene Entitlement Part B Begin Date,BENE_PART_B_ENRLMT_BGN_DT,179,188,10,YYYY-MM-DD,The date that a beneficiary is entitled for Medicare Part B benefits.,Beneficiary Range Begin Date,Coverage.period.start
|
||||
CCLF8,22,Beneficiary Derived Mailing Line One Address,BENE_LINE_1_ADR,189,233,45,X(45),The first line of the street address. I,,
|
||||
CCLF8,23,Beneficiary Derived Mailing Line Two Address,BENE_LINE_2_ADR,234,278,45,X(45),The second line of the street address. I,,
|
||||
CCLF8,24,Beneficiary Derived Mailing Line Three Address,BENE_LINE_3_ADR,279,318,40,X(40),The third line of the street address. I,,
|
||||
CCLF8,25,Beneficiary Derived Mailing Line Four Address,BENE_LINE_4_ADR,319,358,40,X(40),The fourth line of the street address. I,,
|
||||
CCLF8,26,Beneficiary Derived Mailing Line Five Address,BENE_LINE_5_ADR,359,398,40,X(40),The fifth line of the street address. I,,
|
||||
CCLF8,27,Beneficiary Derived Mailing Line Six Address,BENE_LINE_6_ADR,399,438,40,X(40),The sixth line of the street address. I,,
|
||||
CCLF8,28,Beneficiary City,GEO_ZIP_PLC_NAME,439,538,100,X(100),The name of the city. I,City Name,Patient.address.city
|
||||
CCLF8,29,Beneficiary State,GEO_USPS_STATE_CD,539,540,2,X(2),State code used by the United States Postal Service to identify a state. I,USPS State Code,Patient.address.state
|
||||
CCLF8,30,Beneficiary Zip Code,GEO_ZIP5_CD,541,545,5,X(5),The US Postal Service code that is associated with a geographical area. I,Beneficiary Zip Code - First 5,Patient.address.postalCode
|
||||
CCLF8,31,Beneficiary Zip Code Ext.,GEO_ZIP4_CD,546,549,4,X(4),A four-digit extension to a ZIP Code that represents a subdivision for mailing purposes of the ZIP Code. I,,
|
||||
CCLF9,1,HICN_MBI_XREF_IND…,HICN/MBI XREF Indicator…,1,1,1,X(1),"M = MBI Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards.",,
|
||||
CCLF9,2,Current Beneficiary Identifier,CRNT_NUM,2,12,11,X(11),"Current Beneficiary MBI will denote the MBI. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards.",Medicare Beneficiary Identifier,Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').value
|
||||
CCLF9,3,Previous Beneficiary Identifier,PRVS_NUM,13,23,11,X(11),"Previous Beneficiary MBI. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The HICN field will be blank in CCLFs generated effective January 1, 2020, onwards.",Medicare Beneficiary Identifier,Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').value
|
||||
CCLF9,4,Previous Identifier Effective Date,PRVS_ID_EFCTV_DT,24,33,10,YYYY-MM-DD,The date the previous identifier became active.,MBI Effective Date,Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').period.start
|
||||
CCLF9,5,Previous Identifier Obsolete Date,PRVS_ID_OBSLT_DT,34,43,10,YYYY-MM-DD,The date the previous identifier ceased to be active.,MBI Obsolete Date,Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').period.end
|
||||
CCLF9,6,Beneficiary Railroad Board Number,BENE_RRB_NUM,44,55,12,X(12),"Legacy RRB number. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the Medicare Beneficiary Identifier (MBI) will be accepted on claims, and the HICN and RRB will no longer be displayed. These fields will be blank effective January 1, 2020, in CCLF files.",,
|
||||
CCLFA,1,Current Claim Unique Identifier,CUR_CLM_UNIQ_ID,1,13,13,9(13),A unique identification number assigned to the claim. I H,The claim unique ID is a unique ID for the claim within the source system.,ExplanationOfBenefit.identifier.where(type.coding.system = 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType' and type.coding.code = 'uc' ).value
|
||||
CCLFA,2,Medicare Beneficiary Identifier,BENE_MBI_ID,14,24,11,X(11),A Medicare Beneficiary Identifier assigned to a beneficiary. I H,Medicare Beneficiary Identifier,Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').value
|
||||
CCLFA,3,Beneficiary HIC Number,BENE_HIC_NUM,25,35,11,X(11),"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards.",,
|
||||
CCLFA,4,Claim Type Code,CLM_TYPE_CD,36,37,2,9(02),Signifies the type of claim being submitted through the Medicare or Medicaid programs. H Claim type code include: 10 = HHA claim 20 = Non swing bed SNF claim 30 = Swing bed SNF claim 40 = Outpatient claim 50 = Hospice claim 60 = Inpatient claim 61 = Inpatient “Full- Encounter” claim,Claim Type Code,ExplanationOfBenefit.type.coding.where(system = 'https://bluebutton.cms.gov/fhir/CodeSystem/CLM-TYPE-CD').code
|
||||
CCLFA,5,Claim Admission Date,CLM_ACTV_CARE_FROM_DT,38,47,10,YYYY-MM-DD,"On an institutional claim, the date the beneficiary was admitted to the hospital, skilled nursing facility, or Christian science sanatorium. I H",Claim Active Care From Date,ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='admissionperiod').timing.start
|
||||
CCLFA,6,PBP Benefit Enhancement Indicator,CLM_NGACO_PBPMT_SW,48,48,1,X(1),A single character code of “Y” or “N” that indicates whether a particular claim is tied to a PBP benefit enhancement. Blank if no data are available. Note: This field was created for both NGACO and VTAPM models. NGACO sunset in 2022 but this field will continue to be used for the VTAPM model.,Claim NGACO PBPMT Switch,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_NGACO_PBPMT_SW').exists()).value
|
||||
CCLFA,7,Post Discharge Home Visit Benefit Enhancement Indicator,CLM_NGACO_PDSCHRG_HCBS_SW,49,49,1,X(1),A single character code of “Y” or “N” that indicates whether a particular claim is tied to a Post Discharge Home Visit benefit enhancement. Blank if no data are available. Note: This field was created for both NGACO and VTAPM models. NGACO sunset in 2022 but this field will continue to be used for the VTAPM model.,Claim NGACO Post Discharge HCBS Switch,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_NGACO_PDSCHRG_HCBS_SW').exists()).value
|
||||
CCLFA,8,SNF 3-Day Waiver Benefit Enhancement Indicator,CLM_NGACO_SNF_WVR_SW,50,50,1,X(1),A single character code of “Y” or “N” that indicates whether a particular claim is tied to a SNF 3-Day Waiver benefit enhancement. Blank if no data are available. Note: This field was created for both NGACO and VTAPM models. NGACO sunset in 2022 but this field will continue to be used for the VTAPM model.,Claim NGACO SNF Waiver Switch,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_NGACO_SNF_WVR_SW').exists()).value
|
||||
CCLFA,9,Telehealth Benefit Enhancement Indicator,CLM_NGACO_TLHLTH_SW,51,51,1,X(1),A single character code of “Y” or “N” that indicates whether a particular claim is tied to a Telehealth benefit enhancement. Blank if no data are available. Note: This field was created for both NGACO and VTAPM models. NGACO sunset in 2022 but this field will continue to be used for the VTAPM model.,Claim NGACO Telehealth Switch,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_NGACO_TLHLTH_SW').exists()).value
|
||||
CCLFA,10,AIPBP Benefit Enhancement Indicator,CLM_NGACO_CPTATN_SW,52,52,1,X(1),A single character code of “Y” or “N” that indicates whether a particular claim is tied to an AIPBP benefit enhancement. Blank if no data are available. Note: This field was created for both NGACO and VTAPM models. NGACO sunset in 2022 but this field will continue to be used for the VTAPM model.,Claim NGACO Capitation Switch,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_NGACO_CPTATN_SW').exists()).value
|
||||
CCLFA,11,First Program Demonstration Number,CLM_DEMO_1ST_NUM,53,54,2,X(2),Medicare Demonstration Special Processing Number (SPN). This is a first demonstration number. This field will be used to hold the 2-byte number for future use with the Bundled Payments for Care Improvement initiative.,Claim Benefit Enhancement Code 1,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value
|
||||
CCLFA,12,Second Program Demonstration Number,CLM_DEMO_2ND_NUM,55,56,2,X(2),Medicare Demonstration Special Processing Number (SPN). This is a second demonstration number. This field will be used to hold the 2-byte number for future use with the Bundled Payments for Care Improvement initiative.,Claim Benefit Enhancement Code 2,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value
|
||||
CCLFA,13,Third Program Demonstration Number,CLM_DEMO_3RD_NUM,57,58,2,X(2),Medicare Demonstration Special Processing Number (SPN). This is a third demonstration number. This field will be used to hold the 2-byte number for future use with the Bundled Payments for Care Improvement initiative.,Claim Benefit Enhancement Code 3,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value
|
||||
CCLFA,14,Fourth Program Demonstration Number,CLM_DEMO_4TH_NUM,59,60,2,X(2),Medicare Demonstration Special Processing Number (SPN). This is a fourth demonstration number. This field will be used to hold the 2-byte number for future use with the Bundled Payments for Care Improvement initiative.,Claim Benefit Enhancement Code 4,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value
|
||||
CCLFA,15,Fifth Program Demonstration Number,CLM_DEMO_5TH_NUM,61,62,2,X(2),Medicare Demonstration Special Processing Number (SPN). This is a fifth demonstration number. This field will be used to hold the 2-byte number for future use with the Bundled Payments for Care Improvement initiative.,Claim Benefit Enhancement Code 5,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value
|
||||
CCLFA,16,PBP/AIPBP Inclusion Amount,CLM_PBP_INCLSN_AMT,63,81,19,-9(15).99,The amount that would have been paid in the absence of PBP/ AIPBP Reduction. The value for the PBP/AIPBP Inclusion Amount is derived from the table and column called “CMS_VIEW_CLM_PRD.CLM_VAL_AMT” when the value code within the field called “CLM_VAL_CD” equals “Q0.”,,
|
||||
CCLFA,17,PBP/AIPBP Reduction Amount,CLM_PBP_RDCTN_AMT,82,100,19,-9(15).99,The PBP/AIPBP Reduction Amount withheld from payment to the Provider. The value for the PBP/AIPBP Reduction Amount is derived from the table and column called “CMS_VIEW_CLM_PRD.CLM_VAL_AMT” when the value code within the field called “CLM_VAL_CD” equals “Q1.”,,
|
||||
CCLFA,18,Care Management Home Visits,CLM_NGACO_CMG_WVR_SW,101,101,1,X(1),A single character code of “Y” or “N” that indicates whether a particular claim is tied to a Care Management Home Visits benefit enhancement. Blank if no data are available. Note: This field was created for both NGACO and VTAPM models. NGACO sunset in 2022 but this field will continue to be used for the VTAPM model.,Claim ACO Care Management HCBS Switch,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_ACO_CARE_MGMT_HCBS_SW').exists()).value
|
||||
CCLFA,19,Claim Institutional Per Diem Amount,CLM_INSTNL_PER_DIEM_AMT,102,120,19,-9(15).99,The maximum amount a provider can be paid for each day of care.,Pass Through Per Diem Amount,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_INSTNL_PER_DIEM_AMT').exists()).amount.value
|
||||
CCLFA,20,Claim Medicare Inpatient Beneficiary Deductible Amount,CLM_MDCR_IP_BENE_DDCTBL_AMT,121,135,15,-9(11).99,"The amount of the deductible the beneficiary paid for inpatient services, as originally submitted on the institutional claim.",Deductible Amount,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_IP_BENE_DDCTBL_AMT').exists()).amount.value
|
||||
CCLFA,21,Claim Medicare Coinsurance Amount,CLM_MDCR_COINSRNC_AMT,136,154,19,-9(15).99,An amount identifying the portion applied toward the coinsurance a beneficiary is responsible for.,Part A/B Coinsurance Liability Amount,ExplanationOfBenefit.total.where(category.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBAdjudication' and code='coinsurance').exists() and category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_COINSRNC_AMT').exists()).amount.value
|
||||
CCLFA,22,Claim Blood Liability Amount,CLM_BLOOD_LBLTY_AMT,155,169,15,-9(11).99,An amount identifying the portion of the blood deductible a beneficiary is liable for.,Blood Deductible Liability Amount,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_BLOOD_LBLTY_AMT').exists()).amount.value
|
||||
CCLFA,23,Claim Institutional Professional Amount,CLM_INSTNL_PRFNL_AMT,170,184,15,-9(11).99,"For inpatient and outpatient claims, the amount of physician and other professional charges covered under Medicare Part B (e.g., if computing interim payment these charges are deducted)",Professional Component Charge,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_INSTNL_PRFNL_AMT').exists()).amount.value
|
||||
CCLFA,24,Claim Noncovered Charge Amount,CLM_NCVRD_CHRG_AMT,185,203,19,-9(15).99,The charges for institutional long-term care are not reimbursable by the primary payer. The non-covered charges do not refer to charges not covered for any other service.,Noncovered Charge Amount,ExplanationOfBenefit.total.where(category.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBAdjudication' and code='noncovered').exists() and category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_NCVRD_CHRG_AMT').exists()).amount.value
|
||||
CCLFA,25,Claim Medicare Deductible Amount,CLM_MDCR_DDCTBL_AMT,204,222,19,-9(15).99,An amount identifying the portion applied toward the deductible a beneficiary is responsible for.,Inpatient/Outpatient Total Deduction Amount,ExplanationOfBenefit.total.where(category.coding.where(system='http://terminology.hl7.org/CodeSystem/adjudication' and code='deductible').exists() and category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_DDCTBL_AMT').exists()).amount.value
|
||||
CCLFA,26,Claim Related Condition Code Periodic interim payments (PIP) - 62,CLM_RLT_COND_CD,223,224,2,X(2),The code that indicates a condition relating to an institutional claim that may affect payer processing.,Claim Related Condition Code,ExplanationOfBenefit.supportingInfo.where(code.coding.system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-RLT-COND-CD').code.coding.code
|
||||
CCLFA,27,Operating Outlier Amount (DSH) - 17,CLM_OPRTNL_OUTLR_AMT,225,243,19,-9(15).99,Operating Outlier Amount (DSH),,
|
||||
CCLFA,28,Medicare new technology add-on payment - 77,CLM_MDCR_NEW_TECH_AMT,244,262,19,-9(15).99,Medicare new technology add-on payment,,
|
||||
CCLFA,29,Islet Isolation Add- on payment amount - Q7,CLM_ISLET_ISOLN_AMT,263,281,19,-9(15).99,Islet Isolation Add-on payment amount,,
|
||||
CCLFA,30,Part A Sequestration reduction amounts - 73,CLM_SQSTRTN_RDCTN_AMT,282,300,19,-9(15).99,The payment to the provider will be reduced by the amount specified by CMS.,,
|
||||
CCLFA,31,Claim Adjustment Reason Code (CARC),CLM_1_REV_CNTR_ANSI_RSN_CD,301,303,3,X(3),A Fiscal Intermediary Shared System (FISS) code identifying the type of adjustment being performed.,Claim Line Adjustment Reason Code 1,ExplanationOfBenefit.item.adjudication.reason.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/ANSI-RSN-CD').code
|
||||
CCLFA,32,Claim Adjustment Segment (CAS) Group Code,CLM_1_REV_CNTR_ANSI_GRP_CD,304,305,2,X(2),These codes categorize a payment adjustment.,Claim Line Adjustment Group Code 1,ExplanationOfBenefit.item.adjudication.reason.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/ANSI-GRP-CD').code
|
||||
CCLFA,33,Capital MIPS Payment Costs,CLM_MIPS_PMT_AMT,306,324,19,-9(15).99,Capital MIPS payment costs,,
|
||||
CCLFB,1,Current Claim Unique Identifier,CUR_CLM_UNIQ_ID,1,13,13,9(13),A unique identification number assigned to the claim. I H,The claim unique ID is a unique ID for the claim within the source system.,ExplanationOfBenefit.identifier.where(type.coding.system = 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType' and type.coding.code = 'uc' ).value
|
||||
CCLFB,2,Claim Line Number,CLM_LINE_NUM,14,23,10,9(10),A sequential number that identifies a specific claim line within a given claim.,Line Item Sequence Number,ExplanationOfBenefit.item.sequence
|
||||
CCLFB,3,Medicare Beneficiary Identifier,BENE_MBI_ID,24,34,11,X(11),A Medicare Beneficiary Identifier assigned to a beneficiary. I H,Medicare Beneficiary Identifier,Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').value
|
||||
CCLFB,4,Beneficiary HIC Number,BENE_HIC_NUM,35,45,11,X(11),"Legacy Beneficiary HICN field. Note: To comply with MACRA of 2015, after the end of the New Medicare Card Transition Period in December 2019, only the MBI will be accepted on claims, and the HICN value will no longer be displayed. The Beneficiary HIC Number will be blank in CCLFs generated effective January 1, 2020, onwards.",,
|
||||
CCLFB,5,Claim Type Code,CLM_TYPE_CD,46,47,2,9(02),Signifies the type of claim being submitted through the Medicare or Medicaid programs Claim type code include: 71=RIC O local carrier non- DMEPOS claim 72=RIC O local carrier DMEPOS claim,Claim Type Code,ExplanationOfBenefit.type.coding.where(system = 'https://bluebutton.cms.gov/fhir/CodeSystem/CLM-TYPE-CD').code
|
||||
CCLFB,6,PBP Benefit Enhancement Indicator,CLM_LINE_NGACO_PBPMT_SW,48,48,1,X(1),A single character code of “Y” or “N” that indicates whether a particular claim line is tied to a PBP benefit enhancement. Blank if no data are available. Note: This field was created for both NGACO and VTAPM models. NGACO sunset in 2022 but this field will continue to be used for the VTAPM model.,Claim Line NGACO PBPMT Switch,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_LINE_NGACO_PBPMT_SW').exists()).value
|
||||
CCLFB,7,Post Discharge Home Visit Benefit Enhancement Indicator,CLM_LINE_NGACO_PDSCHRG_HCBS_SW,49,49,1,X(1),A single character code of “Y” or “N” that indicates whether a particular claim line is tied to a Post Discharge Home Visit benefit enhancement. Blank if no data are available. Note: This field was created for both NGACO and VTAPM models. NGACO sunset in 2022 but this field will continue to be used for the VTAPM model.,Claim Line NGACO Post Discharge HCBS Switch,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_LINE_NGACO_PDSCHRG_HCBS_SW').exists()).value
|
||||
CCLFB,8,SNF 3-Day Waiver Benefit Enhancement Indicator,CLM_LINE_NGACO_SNF_WVR_SW,50,50,1,X(1),A single character code of “Y” or “N” that indicates whether a particular claim line is tied to a SNF 3-Day Waiver benefit enhancement. Blank if no data are available. Note: This field was created for both NGACO and VTAPM models. NGACO sunset in 2022 but this field will continue to be used for the VTAPM model.,Claim Line NGACO SNF Waiver Switch,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_LINE_NGACO_SNF_WVR_SW').exists()).value
|
||||
CCLFB,9,Telehealth Benefit Enhancement Indicator,CLM_LINE_NGACO_TLHLTH_SW,51,51,1,X(1),A single character code of “Y” or “N” that indicates whether a particular claim line is tied to a Telehealth benefit enhancement. Blank if no data are available. Note: This field was created for both NGACO and VTAPM models. NGACO sunset in 2022 but this field will continue to be used for the VTAPM model.,Claim Line NGACO Telehealth Switch,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_LINE_NGACO_TLHLTH_SW').exists()).value
|
||||
CCLFB,10,AIPBP Benefit Enhancement Indicator,CLM_LINE_NGACO_CPTATN_SW,52,52,1,X(1),A single character code of “Y” or “N” that indicates whether a particular claim line is tied to an AIPBP benefit enhancement. Blank if no data are available. Note: This field was created for both NGACO and VTAPM models. NGACO sunset in 2022 but this field will continue to be used for the VTAPM model.,Claim Line NGACO Capitation Switch,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_LINE_NGACO_CPTATN_SW').exists()).value
|
||||
CCLFB,11,First Program Demonstration Number,CLM_DEMO_1ST_NUM,53,54,2,X(2),Medicare Demonstration Special Processing Number (SPN). This is a first demonstration number. This field will be used to hold the 2-byte number for future use with the Bundled Payments for Care Improvement initiative.,Claim Line Benefit Enhancement 1 Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value
|
||||
CCLFB,12,Second Program Demonstration Number,CLM_DEMO_2ND_NUM,55,56,2,X(2),Medicare Demonstration Special Processing Number (SPN). This is a second demonstration number. This field will be used to hold the 2-byte number for future use with the Bundled Payments for Care Improvement initiative.,Claim Line Benefit Enhancement 2 Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value
|
||||
CCLFB,13,Third Program Demonstration Number,CLM_DEMO_3RD_NUM,57,58,2,X(2),Medicare Demonstration Special Processing Number (SPN). This is a third demonstration number. This field will be used to hold the 2-byte number for future use with the Bundled Payments for Care Improvement initiative.,Claim Line Benefit Enhancement 3 Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value
|
||||
CCLFB,14,Fourth Program Demonstration Number,CLM_DEMO_4TH_NUM,59,60,2,X(2),Medicare Demonstration Special Processing Number (SPN). This is a fourth demonstration number. This field will be used to hold the 2-byte number for future use with the Bundled Payments for Care Improvement initiative.,Claim Line Benefit Enhancement 4 Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value
|
||||
CCLFB,15,Fifth Program Demonstration Number,CLM_DEMO_5TH_NUM,61,62,2,X(2),Medicare Demonstration Special Processing Number (SPN). This is a fifth demonstration number. This field will be used to hold the 2-byte number for future use with the Bundled Payments for Care Improvement initiative.,Claim Line Benefit Enhancement 5 Code,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value
|
||||
CCLFB,16,PBP/AIPBP Inclusion Amount,CLM_PBP_INCLSN_AMT,63,77,15,-9(11).99,The amount that would have been paid in the absence of PBP/AIPBP Reduction. The value for the PBP/AIPBP Inclusion Amount is derived from the table and column called “CMS_VIEW_CLM_PRD.CLM_LINE_OTHR_APLD_AMT” when the value code within the field called “CLM_LINE_OTHR_APLD_CD” equals “J.”,,
|
||||
CCLFB,17,PBP/AIPBP Reduction Amount,CLM_PBP_RDCTN_AMT,78,92,15,-9(11).99,The PBP/AIPBP Reduction Amount withheld from payment to the Provider. The value for the PBP/AIPBP Reduction Amount is derived from the table and column called “CMS_VIEW_CLM_PRD.CLM_LINE_OTHR_APLD_AMT” when the value code within the field called “CLM_LINE_OTHR_APLD_CD” equals “L.”,,
|
||||
CCLFB,18,Care Management Home Visits,CLM_NGACO_CMG_WVR_SW,93,93,1,X(1),A single character code of “Y” or “N” that indicates whether a particular claim is tied to a Care Management Home Visits benefit enhancement. Blank if no data are available. Note: This field was created for both NGACO and VTAPM models. NGACO sunset in 2022 but this field will continue to be used for the VTAPM model.,Claim Line ACO Care Management HCBS Switch,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_LINE_ACO_CARE_MGMT_HCBS_SW').exists()).value
|
||||
CCLFB,19,Claim Medicare Deductible Amount,CLM_MDCR_DDCTBL_AMT,94,112,19,-9(15).99,Amount indicates the Medicare deductible amount billed to Medicaid for this service. The Medicare Deductible Amount does not necessarily reflect the amount actually paid.,Inpatient/Outpatient Total Deduction Amount,ExplanationOfBenefit.total.where(category.coding.where(system='http://terminology.hl7.org/CodeSystem/adjudication' and code='deductible').exists() and category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_DDCTBL_AMT').exists()).amount.value
|
||||
CCLFB,20,Part B Sequestration reduction amounts,CLM_SQSTRTN_RDCTN_AMT,113,127,15,-9(11).99,The payment to the provider will be reduced by the amount specified by CMS. Only one period has been defined by CMS for a 2% reduction that began on 04/01/2013 as part of government sequestration.,,
|
||||
CCLFB,21,Claim Line Carrier Health Professional Shortage Area Scarcity Code,CLM_LINE_CARR_HPSA_SCRCTY_CD,128,128,1,X(1),A code used to track the Health Professional Shortage Area (HPSA) related bonus payments on Part B Professional claims,HPSA Scarcity Code,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-LINE-CARR-HPSA-SCRCTY-CD').value.code
|
||||
|
373
dev/seeds/bcda_v3_data_dictionary.csv
Normal file
373
dev/seeds/bcda_v3_data_dictionary.csv
Normal file
@@ -0,0 +1,373 @@
|
||||
row,fhir_resource,claim_type,field_name,description,fhir_path,example,source_view,source_column,sources,reference_table,cclf_mapping,ccw_mapping,profiles
|
||||
0,ExplanationOfBenefit,Pharmacy,Claim Unique ID,An Integrated Data Repository (IDR) assigned surrogate key used to identify a claim.,ExplanationOfBenefit.identifier.where(type.coding.system = 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType' and type.coding.code = 'uc' ).value,PHARM-2024-0012345,V2_MDCR_CLM,CLM_UNIQ_ID,DDPS,,CCLF7.CUR_CLM_UNIQ_ID,PDE_ID,Basis;Regular;CMS
|
||||
1,ExplanationOfBenefit,Pharmacy,Original Claim Control Number,This field contains the original claim control number for adjusted or corrected claims. It provides a reference to the prior claim that this claim is adjusting or correcting.,ExplanationOfBenefit.identifier.where(system = 'https://bluebutton.cms.gov/identifiers/CLM-CNTL-NUM').value,CNTL20240012340,V2_MDCR_CLM,CLM_ORIG_CNTL_NUM,DDPS,,,,Basis;Regular;CMS
|
||||
2,ExplanationOfBenefit,Pharmacy,Claim Type Code,A code identifying the source and type of claim submitted through the Medicare or Medicaid program. For example: 60 = Medicare National Claims History (NCH) inpatient claim. 8900 = Medicaid fee for service dental. Reference table: CLM_TYPE_CD,ExplanationOfBenefit.type.coding.where(system = 'https://bluebutton.cms.gov/fhir/CodeSystem/CLM-TYPE-CD').code,1,V2_MDCR_CLM,CLM_TYPE_CD,DDPS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-TYPE-CD,CCLF7.CLM_TYPE_CD,,Basis;Regular;CMS
|
||||
3,ExplanationOfBenefit,Pharmacy,Beneficiary Source Key - On Claim,Beneficiary Source Key - On Claim,ExplanationOfBenefit.patient.reference.substring(8),123456789,,,DDPS,,,,Basis;Regular;CMS
|
||||
4,ExplanationOfBenefit,Pharmacy,Claim From Date,A date identifying the first day services are provided to a beneficiary.,ExplanationOfBenefit.billablePeriod.start,2024-01-15,V2_MDCR_CLM,CLM_FROM_DT,DDPS,,,,Basis;Regular;CMS
|
||||
5,ExplanationOfBenefit,Pharmacy,Claim Thru Date,"A date identifying the last day services are provided to a beneficiary. Note: For drug claims, this date is when the prescription was filled.",ExplanationOfBenefit.billablePeriod.end,2024-01-15,V2_MDCR_CLM,CLM_THRU_DT,DDPS,,,,Basis;Regular;CMS
|
||||
6,ExplanationOfBenefit,Pharmacy,Claim Effective Date,A date corresponding to the National Claim History (NCH) weekly processing date and used in final action processing to identify a version of a claim. It will always be a Friday date.,ExplanationOfBenefit.created,2024-01-15,V2_MDCR_CLM,CLM_EFCTV_DT,DDPS,,CCLF7.CLM_EFCTV_DT,,Basis;Regular;CMS
|
||||
7,ExplanationOfBenefit,Pharmacy,Claim Source ID,An identifier indicating where the source of the claim data in the Integrated Data Repository (IDR) originated from. Valid values: 20000 = National Claims History (NCH). 21000 = Fiscal Intermediary Shared System (FISS). 22000 = Multi-Carrier System (MCS). 23000 = Viable Information Processing Systems (VIPS) Medicare System (VMS). 24000 = Encounter Data Processing System (EDPS). 25000 = Encounter Medicaid Duals 837 claims and Duals Medicaid Drug Claims (DMDC). N/A = Medicaid,ExplanationOfBenefit.meta.source,DDPS,V2_MDCR_CLM,CLM_SRC_ID,DDPS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-SRC-ID,,,Basis;Regular;CMS
|
||||
8,ExplanationOfBenefit,Pharmacy,Service Provider Generic ID Number,A number used to identify a service provider.,ExplanationOfBenefit.contained.where(id = %context.provider.reference.substring(1)).identifier.where(system='http://bluebutton.cms.gov/fhir/identifiers/GenericIdNum').value,1942945159,V2_MDCR_CLM,CLM_SRVC_PRVDR_GNRC_ID_NUM,DDPS,,CCLF7.CLM_SRVC_PRVDR_GNRC_ID_NUM,SRVC_PRVDR_ID,Basis;Regular;CMS
|
||||
9,ExplanationOfBenefit,Pharmacy,Service Provider NPI Number,A number identifying the National Provider Identifier (NPI) of a service provider as sourced from the NPI crosswalk reference information provided by the National Plan and Provider Enumeration System (NPPES).,ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://hl7.org/fhir/sid/us-npi').value,,V2_MDCR_CLM,PRVDR_SRVC_PRVDR_NPI_NUM,DDPS,,,SRVC_PRVDR_ID,Basis;Regular;CMS
|
||||
10,ExplanationOfBenefit,Pharmacy,Provider Service Identifier Qualifier Code,A code indicating the type of number used to identify a service provider on a claim. For example: 01 = NPI. 07 = NCPDP number. 08 = State license number. Reference table: CLM_PRVDR_ID_QLFYR_CD,ExplanationOfBenefit.contained.where(id = %context.provider.reference.substring(1)).identifier.type.where(system='http://bluebutton.cms.gov/fhir/CodeSystem/PRVDR-ID-QLFYR-CD').code,,V2_MDCR_CLM,PRVDR_SRVC_ID_QLFYR_CD,DDPS,,CCLF7.PRVDR_SRVC_ID_QLFYR_CD,,Basis;Regular;CMS
|
||||
11,ExplanationOfBenefit,Pharmacy,Provider Prescribing Identifier Qualifier Code,A code indicating the type of number used to identify a prescribing provider on a claim. For example: 01 = NPI. 07 = NCPDP number. 08 = State license number. Reference table: CLM_PRVDR_ID_QLFYR_CD,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'prescribing').exists()).provider.identifier.type.coding.where(system='http://bluebutton.cms.gov/fhir/CodeSystem/PRVDR-ID-QLFYR-CD').code,01,V2_MDCR_CLM,PRVDR_PRSBNG_ID_QLFYR_CD,DDPS,,CCLF7.PRVDR_PRSBNG_ID_QLFYR_CD,,Basis;Regular;CMS
|
||||
12,ExplanationOfBenefit,Pharmacy,Prescribing Provider Generic ID Number,A number identifying a generic identifier of a prescribing provider submitted on a drug claim.,ExplanationOfBenefit.careTeam.where(role.coding.where(code='prescribing').exists()).provider.identifier.where(system='http://bluebutton.cms.gov/fhir/identifiers/GenericIdNum').value,,V2_MDCR_CLM,CLM_PRSBNG_PRVDR_GNRC_ID_NUM,DDPS,,CCLF7.CLM_PRSBNG_PRVDR_GNRC_ID_NUM,PRSCRBR_ID,Basis;Regular;CMS
|
||||
13,ExplanationOfBenefit,Pharmacy,Prescribing Provider NPI Number,A number identifying the National Provider Identifier (NPI) of a prescribing provider as sourced from the NPI crosswalk reference information provided by the National Plan and Provider Enumeration System (NPPES).,ExplanationOfBenefit.careTeam.where(role.coding.where(code='prescribing').exists()).provider.identifier.where(system='http://hl7.org/fhir/sid/us-npi').value,1942945159,V2_MDCR_CLM,PRVDR_PRSCRBNG_PRVDR_NPI_NUM,DDPS,,,PRSCRBR_ID,Basis;Regular;CMS
|
||||
14,ExplanationOfBenefit,Pharmacy,Prescribing Provider Last Name,Last name of the prescribing provider,ExplanationOfBenefit.careTeam.where(role.coding.where(code='prescribing').exists()).provider.display,"Stark, Tony",V2_MDCR_PRVDR_HSTRY,PRVDR_LAST_NAME,DDPS,,,,Basis;Regular;CMS
|
||||
15,ExplanationOfBenefit,Pharmacy,Payment Date,A date indicating when a claim was paid.,ExplanationOfBenefit.payment.date,2024-01-20,V2_MDCR_CLM,CLM_PD_DT,DDPS,,,PD_DT,Basis;Regular;CMS
|
||||
16,ExplanationOfBenefit,Pharmacy,Claim Process Date,"Date a claim or prescription drug event was processed by a CMS front end system, such as the DDPS operational data store.",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_CMS_PROC_DT').exists()).timing,2024-01-18,V2_MDCR_CLM_DT_SGNTR,CLM_CMS_PROC_DT,DDPS,,,,CMS
|
||||
17,ExplanationOfBenefit,Pharmacy,Claim Submission Format Code,A code identifying the format of the claim as submitted.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_SBMT_FRMT_CD').exists()).code.coding.code,X,V2_MDCR_CLM,CLM_SBMT_FRMT_CD,DDPS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-SBMT-FRMT-CD,,NSTD_FRMT_CD,Regular;CMS
|
||||
18,ExplanationOfBenefit,Pharmacy,Beneficiary Payment Amount,An amount paid by a beneficiary for services rendered on a claim.,ExplanationOfBenefit.total.where(category.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBAdjudication' and code='paidbypatient').exists() and category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_BENE_PMT_AMT').exists()).amount.value,100,V2_MDCR_CLM,CLM_BENE_PMT_AMT,DDPS,,,PTNT_PAY_AMT,Regular;CMS
|
||||
19,ExplanationOfBenefit,Pharmacy,Other Third Party Paid Amount,An amount identifying how much was paid by a third party payer.,ExplanationOfBenefit.total.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_OTHR_TP_PD_AMT').exists()).amount.value,100,V2_MDCR_CLM,CLM_OTHR_TP_PD_AMT,DDPS,,,,Regular;CMS
|
||||
20,ExplanationOfBenefit,Pharmacy,Submitter Contract Number,The contract number of the plan that submitted the claim.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_SBMTR_CNTRCT_NUM').exists()).value,H1234,V2_MDCR_CLM,CLM_SBMTR_CNTRCT_NUM,DDPS,,,PLAN_CNTRCT_REC_ID,Basis;Regular;CMS
|
||||
21,ExplanationOfBenefit,Pharmacy,Submitter PBP Number,The Plan Benefit Package (PBP) number of the plan that submitted the claim.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_SBMTR_CNTRCT_PBP_NUM').exists()).value,001,V2_MDCR_CLM,CLM_SBMTR_CNTRCT_PBP_NUM,DDPS,,,PLAN_PBP_REC_NUM,Basis;Regular;CMS
|
||||
22,ExplanationOfBenefit,Pharmacy,Contract PBP Name,This field contains the name of the plan benefit package (PBP) for the beneficiary's Part D plan of record for the year.,ExplanationOfBenefit.contained.where(id='insurer-org').name,Super Saver Medicare Rx Saver Plus (PDP),V2_MDCR_CNTRCT_PBP_NUM,CNTRCT_PBP_NAME,DDPS,,,,Basis;Regular;CMS
|
||||
23,ExplanationOfBenefit,Pharmacy,Line Item Sequence Number,A number identifying the position of the service or item on the claim. This is a component of the 5-part key used for joining claims.,ExplanationOfBenefit.item.sequence,1,V2_MDCR_CLM_LINE,CLM_LINE_NUM,DDPS,,,,Basis;Regular;CMS
|
||||
24,ExplanationOfBenefit,Pharmacy,Line Item From Date,A date indicating the first day of service for a line item.,ExplanationOfBenefit.item.serviced,2024-01-15,V2_MDCR_CLM_LINE,CLM_LINE_FROM_DT,DDPS,,CCLF7.CLM_LINE_FROM_DT,SRVC_DT,Basis;Regular;CMS
|
||||
25,ExplanationOfBenefit,Pharmacy,National Drug Code,The National Drug Code that identifies specific drugs.,(ExplanationOfBenefit.item.productOrService.coding|ExplanationOfBenefit.item.detail.productOrService.coding).where(system = 'http://hl7.org/fhir/sid/ndc').code,00071015523,V2_MDCR_CLM_LINE,CLM_LINE_NDC_CD,DDPS,,CCLF7.CLM_LINE_NDC_CD,PROD_SRVC_ID,Basis;Regular;CMS
|
||||
26,ExplanationOfBenefit,Pharmacy,Line Item NDC Quantity,The quantity of an NDC applicable to institutional claims.,(ExplanationOfBenefit.item.quantity|ExplanationOfBenefit.item.detail.quantity).value,60,V2_MDCR_CLM_LINE,CLM_LINE_NDC_QTY,DDPS,,CCLF7.CLM_LINE_SRVC_UNIT_QTY,QTY_DSPNSD_NUM,Basis;Regular;CMS
|
||||
27,ExplanationOfBenefit,Pharmacy,Line Item NDC Quantity Qualifier Code,"Qualifies the type of quantity applicable to an NDC present on all institutional claim types (inpatient/SNF, outpatient, home health, and hospice).",(ExplanationOfBenefit.item.quantity|ExplanationOfBenefit.item.detail.quantity).unit,UN,V2_MDCR_CLM_LINE,CLM_LINE_NDC_QTY_QLFYR_CD,DDPS,,,,Basis;Regular;CMS
|
||||
28,ExplanationOfBenefit,Pharmacy,Claim Line Covered Paid Amount,An amount identifying the Medicare payment for a line item service.,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='http://terminology.hl7.org/CodeSystem/adjudication' and code='benefit').exists()).amount.value,45.5,V2_MDCR_CLM_LINE,CLM_LINE_CVRD_PD_AMT,DDPS,,,CVRD_D_PLAN_PD_AMT,Regular;CMS
|
||||
29,ExplanationOfBenefit,Pharmacy,Patient Responsibility Payment Amount,"An amount identifying the payment made by a beneficiary for a detail line of service on a claim. Note: For Part D, this amount counts towards a beneficiary's true-out-of-pocket (TROOP) cost.",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBAdjudication' and code='paidbypatient').exists() and category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_LINE_BENE_PMT_AMT').exists()).amount.value,10,V2_MDCR_CLM_LINE,CLM_LINE_BENE_PMT_AMT,DDPS,,CCLF7.CLM_LINE_BENE_PMT_AMT,PTNT_PAY_AMT,Regular;CMS
|
||||
30,ExplanationOfBenefit,Pharmacy,Gross Drug Cost Above Out Of Pocket Threshold,The gross drug cost amount that was covered by Part D's catastrophic coverage.,ExplanationOfBenefit.item.adjudication.where(category.coding.system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and category.coding.code='CLM_LINE_GRS_ABOVE_THRSHLD_AMT').amount.value,25,V2_MDCR_CLM_LINE_RX,CLM_LINE_GRS_ABOVE_THRSHLD_AMT,DDPS,,,GDC_ABV_OOPT_AMT,CMS
|
||||
31,ExplanationOfBenefit,Pharmacy,Gross Drug Cost Below Out Of Pocket Threshold,The gross drug cost amount that was not covered by Part D's catastrophic coverage.,ExplanationOfBenefit.item.adjudication.where(category.coding.system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and category.coding.code='CLM_LINE_GRS_BLW_THRSHLD_AMT').amount.value,75,V2_MDCR_CLM_LINE_RX,CLM_LINE_GRS_BLW_THRSHLD_AMT,DDPS,,,GDC_BLW_OOPT_AMT,CMS
|
||||
32,ExplanationOfBenefit,Pharmacy,Low Income Cost Sharing Subsidy Amount,The Low Income Cost Sharing Subsidy amount for the line item.,ExplanationOfBenefit.item.adjudication.where(category.coding.system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and category.coding.code='CLM_LINE_LIS_AMT').amount.value,10,V2_MDCR_CLM_LINE_RX,CLM_LINE_LIS_AMT,DDPS,,,LICS_AMT,CMS
|
||||
33,ExplanationOfBenefit,Pharmacy,Patient Liability Reduction Other Paid Amount,The Patient Liability Reduction Other paid amount for the line item.,ExplanationOfBenefit.item.adjudication.where(category.coding.system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and category.coding.code='CLM_LINE_PLRO_AMT').amount.value,1,V2_MDCR_CLM_LINE_RX,CLM_LINE_PLRO_AMT,DDPS,,,PLRO_AMT,CMS
|
||||
34,ExplanationOfBenefit,Pharmacy,Claim Line Reported Gap Discount Amount,The reported amount that the sponsor advanced at point-of-sale for the gap discount for applicable drugs.,ExplanationOfBenefit.item.adjudication.where(category.coding.system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and category.coding.code='CLM_LINE_RPTD_GAP_DSCNT_AMT').amount.value,10,V2_MDCR_CLM_LINE_RX,CLM_LINE_RPTD_GAP_DSCNT_AMT,DDPS,,,RPTD_GAP_DSCNT_NUM,CMS
|
||||
35,ExplanationOfBenefit,Pharmacy,Total drug cost (Part D),"This variable is the total cost of the prescription drug event and is taken directly from the original PDE. It is the sum of the following components: the ingredient cost (INGRDNT_CST_PD_AMT), the dispensing fee (DSPNSNG_FEE_PD_AMT), the sales tax, if any (TOT_AMT_ATTR_SLS_TAX_AMT), and the vaccine administration fee, if any (VCCN_ADMIN_FEE_AMT, included starting in 2010).",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='TOT_RX_CST_AMT')).amount.value,45.5,,,DDPS,,,TOT_RX_CST_AMT,Regular;CMS
|
||||
36,ExplanationOfBenefit,Pharmacy,Pricing Exception Code,The pricing exception code indicating network status.,ExplanationOfBenefit.adjudication.where(category.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBAdjudicationDiscriminator' and code='benefitpaymentstatus').exists()).reason.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBPayerAdjudicationStatus').code,outofnetwork,V2_MDCR_CLM_LINE_RX,CLM_PRCNG_EXCPTN_CD,DDPS,,,PRCNG_EXCPTN_CD,Basis;Regular;CMS
|
||||
37,ExplanationOfBenefit,Pharmacy,Authorized Fill Number,The number of refills authorized for the prescription.,ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='refillsauthorized').valueQuantity.value,0,V2_MDCR_CLM_LINE_RX,CLM_LINE_AUTHRZD_FILL_NUM,DDPS,,,FILL_NUM,Basis;Regular;CMS
|
||||
38,ExplanationOfBenefit,Pharmacy,Pharmacy Service Type Code,Code indicating the type of pharmacy service.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information' and code='CLM_PHRMCY_SRVC_TYPE_CD').exists()).code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-PHRMCY-SRVC-TYPE-CD').code,01,V2_MDCR_CLM_LINE_RX,CLM_PHRMCY_SRVC_TYPE_CD,DDPS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-PHRMCY-SRVC-TYPE-CD,CCLF7.CLM_PHRMCY_SRVC_TYPE_CD,PHRMCY_SRVC_TYPE_CD,CMS
|
||||
39,ExplanationOfBenefit,Pharmacy,RX Origin Code,Code indicating the origin of the prescription.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and code='rxorigincode').exists()).code.coding.where(system='http://terminology.hl7.org/CodeSystem/NCPDPPrescriptionOriginCode').code,3,V2_MDCR_CLM_LINE_RX,CLM_LINE_RX_ORGN_CD,DDPS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-LINE-RX-ORGN-CD,,RX_ORGN_CD,Basis;Regular;CMS
|
||||
40,ExplanationOfBenefit,Pharmacy,Brand/Generic Code,Code indicating if a drug is brand or generic.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and code='brandgenericindicator').exists()).code.coding.where(system='http://terminology.hl7.org/CodeSystem/NCPDPBrandGenericIndicator').code,G,V2_MDCR_CLM_LINE_RX,CLM_BRND_GNRC_CD,DDPS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-BRND-GNRC-CD,,BRND_GNRC_CD,Basis;Regular;CMS
|
||||
41,ExplanationOfBenefit,Pharmacy,Patient Residence Code,Code indicating the patient's residence at the time of service.,ExplanationOfBenefit.supportingInfo.code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-PTNT-RSDNC-CD').code,01,V2_MDCR_CLM_LINE_RX,CLM_PTNT_RSDNC_CD,DDPS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-PTNT-RSDNC-CD,,PTNT_RSDNC_CD,CMS
|
||||
42,ExplanationOfBenefit,Pharmacy,LTC Dispensing Method Code,Long Term Care (LTC) dispensing method code.,ExplanationOfBenefit.supportingInfo.code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-LTC-DSPNSNG-MTHD-CD').code,05,V2_MDCR_CLM_LINE_RX,CLM_LTC_DSPNSNG_MTHD_CD,DDPS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-LTC-DSPNSNG-MTHD-CD,,SUBMSN_CLR_CD,CMS
|
||||
43,ExplanationOfBenefit,Pharmacy,Compound Code,Code indicating if a drug is a compound.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and code='compoundcode').exists()).code.coding.where(system='http://terminology.hl7.org/CodeSystem/NCPDPCompoundCode').code,0,V2_MDCR_CLM_LINE_RX,CLM_CMPND_CD,DDPS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-CMPND-CD,,CMPND_CD,Basis;Regular;CMS
|
||||
44,ExplanationOfBenefit,Pharmacy,Days Supply Quantity,The number of days supply for the prescription.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and code='dayssupply').exists()).valueQuantity.value,30,V2_MDCR_CLM_LINE_RX,CLM_LINE_DAYS_SUPLY_QTY,DDPS,,CCLF7.CLM_LINE_DAYS_SUPLY_QTY,DAYS_SUPLY_NUM,Basis;Regular;CMS
|
||||
45,ExplanationOfBenefit,Pharmacy,RX Fill Number,The fill number for the prescription.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and code='refillnum').exists()).valueQuantity.value,1,V2_MDCR_CLM_LINE_RX,CLM_LINE_RX_FILL_NUM,DDPS,,CCLF7.CLM_LINE_RX_FILL_NUM,FILL_NUM,Basis;Regular;CMS
|
||||
46,ExplanationOfBenefit,Pharmacy,DAW Product Selection Code,Dispense As Written (DAW) / Product Selection Code.,ExplanationOfBenefit.supportingInfo.code.coding.where(system='http://terminology.hl7.org/CodeSystem/NCPDPDispensedAsWrittenOrProductSelectionCode').code,0,V2_MDCR_CLM_LINE_RX,CLM_DAW_PROD_SLCTN_CD,DDPS,,CCLF7.CLM_DAW_PROD_SLCTN_CD,DAW_PROD_SLCTN_CD,Basis;Regular;CMS
|
||||
47,ExplanationOfBenefit,Pharmacy,Drug Coverage Status Code,Code indicating the drug coverage status.,ExplanationOfBenefit.supportingInfo.code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-DRUG-CVRG-STUS-CD').code,C,V2_MDCR_CLM_LINE_RX,CLM_DRUG_CVRG_STUS_CD,DDPS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-DRUG-CVRG-STUS-CD,,DRUG_CVRG_STUS_CD,CMS
|
||||
48,ExplanationOfBenefit,Pharmacy,Catastrophic Coverage Indicator Code,Code indicating if the claim is catastrophic coverage.,ExplanationOfBenefit.supportingInfo.code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-CTSTRPHC-CVRG-IND-CD').code,C,V2_MDCR_CLM_LINE_RX,CLM_CTSTRPHC_CVRG_IND_CD,DDPS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-CTSTRPHC-CVRG-IND-CD,,CTSTRPHC_CVRG_CD,CMS
|
||||
49,ExplanationOfBenefit,Pharmacy,Claim Adjustment Type Code,A code identifying the type of adjustment record represented on a claim or encounter. Reference table: CLM_ADJSTMT_TYPE_CD,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_ADJSTMT_TYPE_CD').exists()).code.coding.code,0,V2_MDCR_CLM,CLM_ADJSTMT_TYPE_CD,DDPS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-ADJSTMT-TYPE-CD,CCLF7.CLM_ADJSMT_TYPE_CD,ADJSTMT_DLTN_CD,Basis;Regular;CMS
|
||||
50,ExplanationOfBenefit,Pharmacy,Dispensing Status Code,Code indicating the dispensing status.,ExplanationOfBenefit.supportingInfo.code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-DSPNSNG-STUS-CD').code,P,V2_MDCR_CLM_LINE_RX,CLM_DSPNSNG_STUS_CD,DDPS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-DSPNSNG-STUS-CD,CCLF7.CLM_DSPNSNG_STUS_CD,DSPNSNG_STUS_CD,CMS
|
||||
51,ExplanationOfBenefit,Pharmacy,Claim IDR Load Date,A date identifying when Part A and Part B data are loaded into the Integrated Data Repository (IDR).,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_IDR_LD_DT').exists()).timing,2025-01-18,V2_MDCR_CLM,CLM_IDR_LD_DT,DDPS,,CCLF7.CLM_IDR_LD_DT,,CMS
|
||||
52,ExplanationOfBenefit,Pharmacy,RX Number,The pharmacy's internal invoice number on pharmaceutical claims.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information' and code='CLM_LINE_RX_NUM').exists()).value,900001,V2_MDCR_CLM_LINE,CLM_LINE_RX_NUM,DDPS,,CCLF7.CLM_LINE_RX_SRVC_RFRNC_NUM,RX_SRVC_RFRNC_NUM,CMS
|
||||
53,ExplanationOfBenefit,Pharmacy,Noncovered Paid Amount,"The net amount paid by a plan for a noncovered product or service, such as a noncovered drug for Part D.",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_NCVRD_PD_AMT')).amount.value,10.08,V2_MDCR_CLM_LINE,CLM_LINE_NCVRD_PD_AMT,DDPS,,,NCVRD_PLAN_PD_AMT,CMS
|
||||
54,ExplanationOfBenefit,Pharmacy,Other Third Party Paid Amount,"The total amount paid by all sources other than Medicaid, Medicare, and the recipient's personal funds.",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_OTHR_TP_PD_AMT')).amount.value,10.05,V2_MDCR_CLM_LINE,CLM_LINE_OTHR_TP_PD_AMT,DDPS,,,OTHR_TROOP_AMT,CMS
|
||||
55,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,The claim unique ID is a unique ID for the claim within the source system.,An Integrated Data Repository (IDR) assigned surrogate key used to identify a claim.,ExplanationOfBenefit.identifier.where(type.coding.system = 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType' and type.coding.code = 'uc' ).value,NON-UNIQUE-ID-HERE,V2_MDCR_CLM,CLM_UNIQ_ID,FISS;MCS;NCH;VMS,,CCLF1.CUR_CLM_UNIQ_ID;CCLF2.CUR_CLM_UNIQ_ID;CCLF3.CUR_CLM_UNIQ_ID;CCLF4.CUR_CLM_UNIQ_ID;CCLF5.CUR_CLM_UNIQ_ID;CCLF6.CUR_CLM_UNIQ_ID;CCLFA.CUR_CLM_UNIQ_ID;CCLFB.CUR_CLM_UNIQ_ID,CLM_ID,Basis;Regular;CMS
|
||||
56,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Final Action Indicator,"A value indicating a final action claim. Valid values: Y = Final action claim, not voided. N = Not final action claim",ExplanationOfBenefit.meta.tag.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Final-Action').code,FinalAction,V2_MDCR_CLM,CLM_FINL_ACTN_IND,FISS;MCS;NCH;VMS,https://bluebutton.cms.gov/fhir/CodeSystem/Final-Action,,,Basis;Regular;CMS
|
||||
57,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Claim Control Number,"An identifier assigned by the claim processor (i.e., Medicare Administrative Contractor, Part D plan, or Encounter Data Processing Contractor) to a claim.",ExplanationOfBenefit.identifier.where(system = 'https://bluebutton.cms.gov/identifiers/CLM-CNTL-NUM').value,DOOPITY-DOOP-DOOP,V2_MDCR_CLM,CLM_CNTL_NUM,FISS;MCS;NCH;VMS,,CCLF1.CLM_CNTL_NUM;CCLF5.CLM_CNTL_NUM;CCLF6.CLM_CNTL_NUM,CARR_CLM_CNTL_NUM;FI_DOC_CLM_CNTL_NUM,Basis;Regular;CMS
|
||||
58,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,This field is the original identification value assigned.,A number identifying the original Claim Control Number (CCN) on an adjusted claim.,ExplanationOfBenefit.related.where(relationship.coding.system = 'http://terminology.hl7.org/CodeSystem/ex-relatedclaimrelationship').reference.where(system='https://bluebutton.cms.gov/identifiers/CLM-CNTL-NUM').value,,V2_MDCR_CLM,CLM_ORIG_CNTL_NUM,FISS;MCS;NCH;VMS,,CCLF1.CLM_ORG_CNTL_NUM,,Basis;Regular;CMS
|
||||
59,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Claim Type Code,A code identifying the source and type of claim submitted through the Medicare or Medicaid program. For example: 60 = Medicare National Claims History (NCH) inpatient claim. 8900 = Medicaid fee for service dental. Reference table: CLM_TYPE_CD,ExplanationOfBenefit.type.coding.where(system = 'https://bluebutton.cms.gov/fhir/CodeSystem/CLM-TYPE-CD').code,72,V2_MDCR_CLM,CLM_TYPE_CD,FISS;MCS;NCH;VMS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-TYPE-CD,CCLF1.CLM_TYPE_CD;CCLF2.CLM_TYPE_CD;CCLF3.CLM_TYPE_CD;CCLF4.CLM_TYPE_CD;CCLF5.CLM_TYPE_CD;CCLF6.CLM_TYPE_CD;CCLFA.CLM_TYPE_CD;CCLFB.CLM_TYPE_CD,NCH_CLM_TYPE_CD,Basis;Regular;CMS
|
||||
60,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Beneficiary Source Key - On Claim,A unique number assigned by the Enrollment Data Base (EDB) to each EDB record to identify a beneficiary.,ExplanationOfBenefit.patient.reference.substring(8),12345,V2_MDCR_CLM,BENE_SK,FISS;MCS;NCH;VMS,,,,Basis;Regular;CMS
|
||||
61,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Claim From Date,A date identifying the first day services are provided to a beneficiary.,ExplanationOfBenefit.billablePeriod.start,2025-01-03,V2_MDCR_CLM,CLM_FROM_DT,FISS;MCS;NCH;VMS,,CCLF1.CLM_FROM_DT;CCLF2.CLM_FROM_DT;CCLF3.CLM_FROM_DT;CCLF4.CLM_FROM_DT;CCLF5.CLM_FROM_DT;CCLF6.CLM_FROM_DT,CLM_FROM_DT,Basis;Regular;CMS
|
||||
62,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Claim Thru Date,"A date identifying the last day services are provided to a beneficiary. Note: For drug claims, this date is when the prescription was filled.",ExplanationOfBenefit.billablePeriod.end,2025-01-11,V2_MDCR_CLM,CLM_THRU_DT,FISS;MCS;NCH;VMS,,CCLF1.CLM_THRU_DT;CCLF2.CLM_THRU_DT;CCLF3.CLM_THRU_DT;CCLF4.CLM_THRU_DT;CCLF5.CLM_THRU_DT;CCLF6.CLM_THRU_DT,CLM_THRU_DT,Basis;Regular;CMS
|
||||
63,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Claim Effective Date,A date corresponding to the National Claim History (NCH) weekly processing date and used in final action processing to identify a version of a claim. It will always be a Friday date.,ExplanationOfBenefit.created,2025-01-18,V2_MDCR_CLM,CLM_EFCTV_DT,FISS;MCS;NCH;VMS,,CCLF1.CLM_EFCTV_DT;CCLF5.CLM_EFCTV_DT;CCLF6.CLM_EFCTV_DT,,Basis;Regular;CMS
|
||||
64,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Claim IDR Load Date,A date identifying when Part A and Part B data are loaded into the Integrated Data Repository (IDR).,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_IDR_LD_DT').exists()).timing,2025-01-18,V2_MDCR_CLM,CLM_IDR_LD_DT,FISS;MCS;NCH;VMS,,CCLF1.CLM_IDR_LD_DT;CCLF5.CLM_IDR_LD_DT;CCLF6.CLM_IDR_LD_DT,,CMS
|
||||
65,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Claim Source ID,A unique numeric value assigned by the Integrated Data Repository (IDR) used to identify the specific source of the data when a row is loaded into the IDR. Reference table: V2_MDCR_META_DCTNRY_SRC,ExplanationOfBenefit.meta.tag.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/System-Type').value,,V2_MDCR_CLM,CLM_SRC_ID,FISS;MCS;NCH;VMS,https://bluebutton.cms.gov/fhir/CodeSystem/System-Type,,,Basis;Regular;CMS
|
||||
66,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Source ID,Identifies the source system of the ExplanationOfBenefit data.,ExplanationOfBenefit.meta.source,NCH,V2_MDCR_CLM,META_SRC_SK,FISS;MCS;NCH;VMS,,,,Basis;Regular;CMS
|
||||
67,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Provider billing NPI number,"A number identifying the National Provider Identifier (NPI) of the billing provider associated with the claim, as sourced from the National Plan and Provider Enumeration System (NPPES). Note: This column is populated if the billing provider NPI on the claim, as provided by the source system, can be found in the Integrated Deposit Repository (IDR) provider data as sourced from NPPES.",ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://hl7.org/fhir/sid/us-npi').value,1942945159,V2_MDCR_CLM,PRVDR_BLG_PRVDR_NPI_NUM,FISS;MCS;NCH;VMS,,CCLF1.FAC_PRVDR_NPI_NUM;CCLF1.CLM_BLG_PRVDR_NPI_NUM;CCLF6.CLM_BLG_PRVDR_NPI_NUM;CCLF6.PAYTO_PRVDR_NPI_NUM,ORG_NPI_NUM;PRVDR_NPI;CARR_CLM_BLG_NPI_NUM,Basis;Regular;CMS
|
||||
68,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Billing Provider Zip Code,"A five-digit ZIP code defined by the United States Postal Service (USPS) that identifies a destination post office or delivery area associated with a beneficiary, provider, or claim address. Reference table: GEO_ZIP5_CD",ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).address.postalCode,77550,V2_MDCR_CLM,CLM_BLG_PRVDR_ZIP5_CD,FISS;MCS;NCH;VMS,,,PRVDR_ZIP,Basis;Regular;CMS
|
||||
69,ExplanationOfBenefit,DME;Inpatient;Outpatient;SNF,Provider Tax Number,Provider Tax Number,ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system = 'urn:oid:2.16.840.1.113883.4.4').value,,V2_MDCR_CLM,CLM_BLG_PRVDR_TAX_NUM,FISS;MCS;NCH;VMS,,,,Basis;Regular;CMS
|
||||
70,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Claim Query Code,"Indication of the type of claim record being processed with respect to payment (debit/credit indicator - original, full, replacement; interim/final indicator). [HRMZ] Code indicating the type of claim record being processed with respect to payment (debit/credit indicator; interim/final indicator). [NCH]",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_QUERY_CD').exists()).code.coding.code,3,V2_MDCR_CLM,CLM_QUERY_CD,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-QUERY-CD,CCLF1.CLM_QUERY_CD,CARR_CLM_ENTRY_CD;CLAIM_QUERY_CODE,CMS;Basis;Regular
|
||||
71,ExplanationOfBenefit,Inpatient;SNF,Noncovered Charge Amount,An amount identifying the portion of a charge not covered by Medicare.,ExplanationOfBenefit.total.where(category.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBAdjudication' and code='noncovered').exists() and category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_NCVRD_CHRG_AMT').exists()).amount.value,11.5,V2_MDCR_CLM,CLM_NCVRD_CHRG_AMT,FISS;NCH,,CCLFA.CLM_NCVRD_CHRG_AMT,NCH_IP_NCVRD_CHRG_AMT,Regular;CMS
|
||||
72,ExplanationOfBenefit,Carrier;DME;Inpatient;Outpatient;SNF,Inpatient/Outpatient Total Deduction Amount,An amount identifying the portion applied toward the deductible a beneficiary is responsible for.,ExplanationOfBenefit.total.where(category.coding.where(system='http://terminology.hl7.org/CodeSystem/adjudication' and code='deductible').exists() and category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_DDCTBL_AMT').exists()).amount.value,17.85,V2_MDCR_CLM,CLM_MDCR_DDCTBL_AMT,FISS;MCS;NCH;VMS,,CCLFA.CLM_MDCR_DDCTBL_AMT;CCLFB.CLM_MDCR_DDCTBL_AMT,NCH_BENE_PTB_DDCTBL_AMT;NCH_IP_TOT_DDCTN_AMT;CARR_CLM_CASH_DDCTBL_APLD_AMT,Regular;CMS
|
||||
73,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Near Line Record Identification Code,A code defining the type of claim record being processed. [NCH],ExplanationOfBenefit.supportingInfo.where(code.coding.system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-NRLN-RIC-CD').code.coding.code,O,V2_MDCR_CLM_DCMTN,CLM_NRLN_RIC_CD,NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-NRLN-RIC-CD,,NCH_NEAR_LINE_REC_IDENT_CD,Basis;Regular;CMS
|
||||
74,ExplanationOfBenefit,Outpatient,Claim Outpatient Service Type Code,Code indicating type and priority of outpatient service. [NCH],ExplanationOfBenefit.supportingInfo.where(code.coding.system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-OP-SRVC-TYPE-CD').code.coding.code,3,V2_MDCR_CLM_INSTNL,CLM_OP_SRVC_TYPE_CD,NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-OP-SRVC-TYPE-CD,CCLF1.CLM_OP_SRVC_TYPE_CD,,CMS
|
||||
75,ExplanationOfBenefit,Inpatient,Operating Disproportionate Share Amount,This is one component of the total amount that is payable on prospective payment system (PPS) claims and reflects the DSH (disproportionate share hospital) payments for operating expenses (such as labor) for the claim. Note: This field is a sum of the CLM_VAL.CLM_VAL_AMT amounts where CLM_VAL_CD is the disproportionate share code.,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_OPRTNL_DSPRTNT_AMT').exists()).amount.value,14.14,,,FISS;NCH,,CCLF1.CLM_OPRTNL_DSPRPRTNT_AMT,DSH_OP_CLM_VAL_AMT,CMS
|
||||
76,ExplanationOfBenefit,Inpatient,Operating Indirect Medical Education Amount,"This is one component of the total amount that is payable on PPS claims, and reflects the IME (indirect medical education) payments for operating expenses (such as labor) for the claim. Note: This field is a sum of the CLM_VAL.CLM_VAL_AMT amounts where CLM_VAL_CD is the IME share code.",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_OPRTNL_IME_AMT').exists()).amount.value,12342.14,,,FISS;NCH,,CCLF1.CLM_OPRTNL_IME_AMT,IME_OP_CLM_VAL_AMT,CMS
|
||||
77,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Process Date,"Date a claim or prescription drug event was processed by a CMS front end system, such as the DDPS operational data store.",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_CMS_PROC_DT').exists()).timing,2025-01-01,V2_MDCR_CLM_DT_SGNTR,CLM_CMS_PROC_DT,FISS;NCH,,,FI_CLM_PROC_DT,CMS
|
||||
78,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Payment Amount,An amount identifying how much was paid on an adjudicated claim.,ExplanationOfBenefit.payment.amount.value,3.5,V2_MDCR_CLM,CLM_PMT_AMT,FISS;MCS;NCH,,CCLF1.CLM_PMT_AMT,CLM_PMT_AMT,Regular;CMS
|
||||
79,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Attending Physician NPI,A number identifying the National Provider Identifier (NPI) of an attending provider as sourced from the NPI crosswalk reference information provided by the National Plan and Provider Enumeration System (NPPES).,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'attending').exists()).provider.identifier.value,1942945159,V2_MDCR_CLM,PRVDR_ATNDG_PRVDR_NPI_NUM,FISS;NCH,,CCLF1.ATNDG_PRVDR_NPI_NUM;CCLF1.CLM_ATNDG_PRVDR_NPI_NUM,AT_PHYSN_NPI,Basis;Regular;CMS
|
||||
80,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Operating Physician NPI,A number identifying the National Provider Identifier (NPI) of an operating provider as sourced from the NPI crosswalk reference information provided by the National Plan and Provider Enumeration System (NPPES).,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'otheroperating').exists()).provider.identifier.value,1942945159,V2_MDCR_CLM,PRVDR_OPRTG_PRVDR_NPI_NUM,FISS;NCH,,CCLF1.OPRTG_PRVDR_NPI_NUM;CCLF1.CLM_OPRTG_PRVDR_NPI_NUM,OP_PHYSN_NPI,Basis;Regular;CMS
|
||||
81,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Claim Diagnosis Code,"A CODE IDENTIFYING AN INTERNATIONAL CLASSIFICATION OF DISEASES, CLINICAL MODIFICATION (ICD_CM) DIAGNOSIS RELEVANT TO THE SERVICE BEING PROVIDED OR THE REASON FOR THE SERVICE.",ExplanationOfBenefit.diagnosis.diagnosis.coding.code,M48.062,V2_MDCR_CLM_PROD,CLM_DGNS_CD,FISS;MCS;NCH;VMS,,CCLF1.PRNCPL_DGNS_CD;CCLF1.ADMTG_DGNS_CD;CCLF4.CLM_DGNS_CD;CCLF5.CLM_DGNS_1_CD;CCLF5.CLM_DGNS_2_CD;CCLF5.CLM_DGNS_3_CD;CCLF5.CLM_DGNS_4_CD;CCLF5.CLM_DGNS_5_CD;CCLF5.CLM_DGNS_6_CD;CCLF5.CLM_DGNS_7_CD;CCLF5.CLM_DGNS_8_CD;CCLF5.CLM_DGNS_9_CD;CCLF5.CLM_DGNS_10_CD;CCLF5.CLM_DGNS_11_CD;CCLF5.CLM_DGNS_12_CD,FST_DGNS_E_CD;RSN_VISIT_CD1;RSN_VISIT_CD2;RSN_VISIT_CD3;ICD_DGNS_CD1;ICD_DGNS_CD2;ICD_DGNS_CD3;ICD_DGNS_CD4;ICD_DGNS_CD5;ICD_DGNS_CD6;ICD_DGNS_CD7;ICD_DGNS_CD8;ICD_DGNS_CD9;ICD_DGNS_CD10;ICD_DGNS_CD11;ICD_DGNS_CD12;ICD_DGNS_CD13;ICD_DGNS_CD14;ICD_DGNS_CD15;ICD_DGNS_CD16;ICD_DGNS_CD17;ICD_DGNS_CD18;ICD_DGNS_CD19;ICD_DGNS_CD20;ICD_DGNS_CD21;ICD_DGNS_CD22;ICD_DGNS_CD23;ICD_DGNS_CD24;ICD_DGNS_CD25;ICD_DGNS_E_CD1;ICD_DGNS_E_CD2;ICD_DGNS_E_CD3;ICD_DGNS_E_CD4;ICD_DGNS_E_CD5;ICD_DGNS_E_CD6;ICD_DGNS_E_CD7;ICD_DGNS_E_CD8;ICD_DGNS_E_CD9;ICD_DGNS_E_CD10;ICD_DGNS_E_CD11;ICD_DGNS_E_CD12;PRNCPAL_DGNS_CD,Basis;Regular;CMS
|
||||
82,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Diagnosis Procedure ICD indicator,THIS IS THE CLAIM PROD VERSION CODE WHICH IS SPACES OR 9 FOR ICD 9 AND 0 FOR ICD 10.,ExplanationOfBenefit.diagnosis.diagnosis.coding.system,http://hl7.org/fhir/sid/icd-10-cm,V2_MDCR_CLM_PROD,CLM_DGNS_PRCDR_ICD_IND,FISS;MCS;NCH;VMS,,CCLF1.DGNS_PRCDR_ICD_IND;CCLF2.DGNS_PRCDR_ICD_IND;CCLF4.DGNS_PRCDR_ICD_IND;CCLF5.DGNS_PRCDR_ICD_IND,FST_DGNS_E_VRSN_CD;RSN_VISIT_VRSN_CD1;RSN_VISIT_VRSN_CD2;RSN_VISIT_VRSN_CD3;ADMTG_DGNS_VRSN_CD;ICD_DGNS_E_VRSN_CD1;ICD_DGNS_E_VRSN_CD2;ICD_DGNS_E_VRSN_CD3;ICD_DGNS_E_VRSN_CD4;ICD_DGNS_E_VRSN_CD5;ICD_DGNS_E_VRSN_CD6;ICD_DGNS_E_VRSN_CD7;ICD_DGNS_E_VRSN_CD8;ICD_DGNS_E_VRSN_CD9;ICD_DGNS_E_VRSN_CD10;ICD_DGNS_E_VRSN_CD11;ICD_DGNS_E_VRSN_CD12;ICD_DGNS_VRSN_CD1;ICD_DGNS_VRSN_CD2;ICD_DGNS_VRSN_CD3;ICD_DGNS_VRSN_CD4;ICD_DGNS_VRSN_CD5;ICD_DGNS_VRSN_CD6;ICD_DGNS_VRSN_CD7;ICD_DGNS_VRSN_CD8;ICD_DGNS_VRSN_CD9;ICD_DGNS_VRSN_CD10;ICD_DGNS_VRSN_CD11;ICD_DGNS_VRSN_CD12;ICD_DGNS_VRSN_CD13;ICD_DGNS_VRSN_CD14;ICD_DGNS_VRSN_CD15;ICD_DGNS_VRSN_CD16;ICD_DGNS_VRSN_CD17;ICD_DGNS_VRSN_CD18;ICD_DGNS_VRSN_CD19;ICD_DGNS_VRSN_CD20;ICD_DGNS_VRSN_CD21;ICD_DGNS_VRSN_CD22;ICD_DGNS_VRSN_CD23;ICD_DGNS_VRSN_CD24;ICD_DGNS_VRSN_CD25;PRNCPAL_DGNS_VRSN_CD;LINE_ICD_DGNS_VRSN_CD,Basis;Regular;CMS
|
||||
83,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Diagnosis Prod Type Code,UNIQUELY IDENTIFIES A TYPE OF PROCEDURE OR A DIAGNOSIS CATEGORY.,ExplanationOfBenefit.diagnosis.type.coding,"{'system': 'http://terminology.hl7.org/CodeSystem/ex-diagnosistype', 'code': 'principal'}",V2_MDCR_CLM_PROD,CLM_PROD_TYPE_CD,FISS;NCH,,CCLF4.CLM_PROD_TYPE_CD,,Basis;Regular;CMS
|
||||
84,ExplanationOfBenefit,Inpatient;SNF,Claim Present on Admission Indicator,THE CODE USED TO INDICATE A CONDITION WAS PRESENT AT THE TIME THE BENEFICIARY WAS ADMITTED TO A GENERAL ACUTE CARE FACILITY.NOT APPLICABLE TO NON-DIAGNOSTIC PRODUCTS.,ExplanationOfBenefit.diagnosis.onAdmission.coding,"{'system': 'https://www.cms.gov/Medicare/Medicare-Fee-for-Service-Payment/HospitalAcqCond/Coding', 'code': 'Y'}",V2_MDCR_CLM_PROD,CLM_POA_IND,FISS;NCH,,CCLF4.CLM_POA_IND,CLM_E_POA_IND_SW1;CLM_E_POA_IND_SW2;CLM_E_POA_IND_SW3;CLM_E_POA_IND_SW4;CLM_E_POA_IND_SW5;CLM_E_POA_IND_SW6;CLM_E_POA_IND_SW7;CLM_E_POA_IND_SW8;CLM_E_POA_IND_SW9;CLM_E_POA_IND_SW10;CLM_E_POA_IND_SW11;CLM_E_POA_IND_SW12;CLM_POA_IND_SW1;CLM_POA_IND_SW2;CLM_POA_IND_SW3;CLM_POA_IND_SW4;CLM_POA_IND_SW5;CLM_POA_IND_SW6;CLM_POA_IND_SW7;CLM_POA_IND_SW8;CLM_POA_IND_SW9;CLM_POA_IND_SW10;CLM_POA_IND_SW11;CLM_POA_IND_SW12;CLM_POA_IND_SW13;CLM_POA_IND_SW14;CLM_POA_IND_SW15;CLM_POA_IND_SW16;CLM_POA_IND_SW17;CLM_POA_IND_SW18;CLM_POA_IND_SW19;CLM_POA_IND_SW20;CLM_POA_IND_SW21;CLM_POA_IND_SW22;CLM_POA_IND_SW23;CLM_POA_IND_SW24;CLM_POA_IND_SW25,Basis;Regular;CMS
|
||||
85,ExplanationOfBenefit,Hospice;Inpatient;Outpatient;SNF,Procedure Performed Date,The date on which the principal or other procedure was performed. (NCH),ExplanationOfBenefit.procedure.date,2024-01-01,V2_MDCR_CLM_PROD,CLM_PRCDR_PRFRM_DT,FISS;NCH,,CCLF3.CLM_PRCDR_PRFRM_DT,PRCDR_DT1;PRCDR_DT2;PRCDR_DT3;PRCDR_DT4;PRCDR_DT5;PRCDR_DT6;PRCDR_DT7;PRCDR_DT8;PRCDR_DT9;PRCDR_DT10;PRCDR_DT11;PRCDR_DT12;PRCDR_DT13;PRCDR_DT14;PRCDR_DT15;PRCDR_DT16;PRCDR_DT17;PRCDR_DT18;PRCDR_DT19;PRCDR_DT20;PRCDR_DT21;PRCDR_DT22;PRCDR_DT23;PRCDR_DT24;PRCDR_DT25,Basis;Regular;CMS
|
||||
86,ExplanationOfBenefit,Hospice;Inpatient;Outpatient;SNF,Claim Procedure Code,Stores procedure codes.,ExplanationOfBenefit.procedure.procedure.coding.code,0SG30AJ,V2_MDCR_CLM_PROD,CLM_PRCDR_CD,FISS;NCH,,CCLF3.CLM_PRCDR_CD,ICD_PRCDR_CD1;ICD_PRCDR_CD2;ICD_PRCDR_CD3;ICD_PRCDR_CD4;ICD_PRCDR_CD5;ICD_PRCDR_CD6;ICD_PRCDR_CD7;ICD_PRCDR_CD8;ICD_PRCDR_CD9;ICD_PRCDR_CD10;ICD_PRCDR_CD11;ICD_PRCDR_CD12;ICD_PRCDR_CD13;ICD_PRCDR_CD14;ICD_PRCDR_CD15;ICD_PRCDR_CD16;ICD_PRCDR_CD17;ICD_PRCDR_CD18;ICD_PRCDR_CD19;ICD_PRCDR_CD20;ICD_PRCDR_CD21;ICD_PRCDR_CD22;ICD_PRCDR_CD23;ICD_PRCDR_CD24;ICD_PRCDR_CD25,Basis;Regular;CMS
|
||||
87,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Diagnosis Procedure ICD indicator,This is the claim product version code which is spaces or 9 for ICD-9 and 0 for ICD-10.,ExplanationOfBenefit.procedure.procedure.coding.system,http://www.cms.gov/Medicare/Coding/ICD10,V2_MDCR_CLM_PROD,CLM_DGNS_PRCDR_ICD_IND,FISS;NCH,,CCLF3.DGNS_PRCDR_ICD_IND,ICD_PRCDR_VRSN_CD1;ICD_PRCDR_VRSN_CD2;ICD_PRCDR_VRSN_CD3;ICD_PRCDR_VRSN_CD4;ICD_PRCDR_VRSN_CD5;ICD_PRCDR_VRSN_CD6;ICD_PRCDR_VRSN_CD7;ICD_PRCDR_VRSN_CD8;ICD_PRCDR_VRSN_CD9;ICD_PRCDR_VRSN_CD10;ICD_PRCDR_VRSN_CD11;ICD_PRCDR_VRSN_CD12;ICD_PRCDR_VRSN_CD13;ICD_PRCDR_VRSN_CD14;ICD_PRCDR_VRSN_CD15;ICD_PRCDR_VRSN_CD16;ICD_PRCDR_VRSN_CD17;ICD_PRCDR_VRSN_CD18;ICD_PRCDR_VRSN_CD19;ICD_PRCDR_VRSN_CD20;ICD_PRCDR_VRSN_CD21;ICD_PRCDR_VRSN_CD22;ICD_PRCDR_VRSN_CD23;ICD_PRCDR_VRSN_CD24;ICD_PRCDR_VRSN_CD25,Basis;Regular;CMS
|
||||
88,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Submitted Charge Amount,The amount of submitted charges for the line item service on the noninstitutional claim. [NCH],ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_SBMT_CHRG_AMT')).amount.value,50.11,V2_MDCR_CLM_LINE,CLM_LINE_SBMT_CHRG_AMT,FISS;MCS;NCH;VMS,,,LINE_SBMTD_CHRG_AMT;REV_CNTR_TOT_CHRG_AMT,Regular;CMS
|
||||
89,ExplanationOfBenefit,Carrier;DME,Line Item Allowed Charge Amount,"The maximum amount allowed by the plan for payment. The amount eligible for payment after applying pricing guidelines/discounts. Usually includes copayment, coinsurance, deductible, penalty, and third party savings amounts. For encounters, may be fee-for-service equivalents.",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_ALOWD_CHRG_AMT')).amount.value,9194.22,V2_MDCR_CLM_LINE,CLM_LINE_ALOWD_CHRG_AMT,MCS;NCH;VMS,,CCLF5.CLM_LINE_ALOWD_CHRG_AMT;CCLF6.CLM_LINE_ALOWD_CHRG_AMT,LINE_ALOWD_CHRG_AMT,Regular;CMS
|
||||
90,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Line Item Sequence Number,A number identifying the position of the service or item on the claim. This is a component of the 5-part key used for joining claims.,ExplanationOfBenefit.item.sequence,1,V2_MDCR_CLM_LINE,CLM_LINE_NUM,FISS;NCH,,CCLF2.CLM_LINE_NUM;CCLF5.CLM_LINE_NUM;CCLF6.CLM_LINE_NUM;CCLFB.CLM_LINE_NUM,CLM_LINE_NUM;LINE_NUM,Basis;Regular;CMS
|
||||
91,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Line Item HCPCS Code,"A code identifying a Healthcare Common Procedure Coding System (HCPCS) procedure, supply, product, or service provided to a Medicare beneficiary or an individual enrolled in private health insurance programs. Reference table: HCPCS_CD",ExplanationOfBenefit.item.productOrService.where(coding.system='http://www.ama-assn.org/go/cpt' or coding.system='https://www.cms.gov/Medicare/Coding/HCPCSReleaseCodeSets' or coding.system='http://terminology.hl7.org/CodeSystem/data-absent-reason').coding.code,99213,V2_MDCR_CLM_LINE,CLM_LINE_HCPCS_CD,FISS;MCS;NCH;VMS,,CCLF2.CLM_LINE_HCPCS_CD;CCLF5.CLM_LINE_HCPCS_CD;CCLF6.CLM_LINE_HCPCS_CD,HCPCS_CD,Basis;Regular;CMS
|
||||
92,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Line Item APC / HIPPS Code,The Ambulatory Payment Classification (APC) code and the HIPPS code. The APC is used to identify groupings of outpatient services. APC codes are used to calculate payment for services under OPPS. The APC is a four byte field. The HIPPS codes are used.,ExplanationOfBenefit.item.productOrService.coding.where(system='https://www.cms.gov/Medicare/Medicare-Fee-for-Service-Payment/ProspMedicareFeeSvcPmtGen/HIPPSCodes').code,NHNC1,V2_MDCR_CLM_LINE_INSTNL,CLM_REV_APC_HIPPS_CD,FISS;NCH,,CCLF2.CLM_REV_APC_HIPPS_CD,REV_CNTR_APC_HIPPS_CD,Basis;Regular;CMS
|
||||
93,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,National Drug Code,The National Drug Code that identifies specific drugs.,ExplanationOfBenefit.item.detail.productOrService.where(coding.system='http://hl7.org/fhir/sid/ndc').coding.code,00409189001,V2_MDCR_CLM_LINE,CLM_LINE_NDC_CD,FISS;MCS;NCH;VMS,,,LINE_NDC_CD;REV_CNTR_IDE_NDC_UPC_NUM,Basis;Regular;CMS
|
||||
94,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Line Item NDC Quantity,The quantity of an NDC applicable to institutional claims.,ExplanationOfBenefit.item.detail.where(productOrService.where(coding.system='http://hl7.org/fhir/sid/ndc')).quantity.value,1000,V2_MDCR_CLM_LINE,CLM_LINE_NDC_QTY,FISS;MCS;NCH,,,REV_CNTR_NDC_QTY,Basis;Regular;CMS
|
||||
95,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Line Item NDC Quantity Qualifier Code,"Qualifies the type of quantity applicable to an NDC present on all institutional claim types (inpatient/SNF, outpatient, home health, and hospice).",ExplanationOfBenefit.item.detail.where(productOrService.where(coding.system='http://hl7.org/fhir/sid/ndc')).quantity.code,g,V2_MDCR_CLM_LINE,CLM_LINE_NDC_QTY_QLFYR_CD,FISS;MCS;NCH,,,REV_CNTR_NDC_QTY_QLFR_CD,Basis;Regular;CMS
|
||||
96,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Line Item Service Unit Quantity,The total units billed for a claim line.,ExplanationOfBenefit.item.quantity.value,3,V2_MDCR_CLM_LINE,CLM_LINE_SRVC_UNIT_QTY,FISS;MCS;NCH;VMS,,CCLF2.CLM_LINE_SRVC_UNIT_QTY;CCLF5.CLM_LINE_SRVC_UNIT_QTY,LINE_SRVC_CNT;REV_CNTR_UNIT_CNT,Basis;Regular;CMS
|
||||
97,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Line Item Revenue Center Code,"A unique identifier of a uniform billing revenue type. The provider-assigned revenue code for each cost center for which a separate charge is billed (type of accommodation or ancillary). A cost center is a division or unit within a hospital (e.g., radiology, emergency room, pathology). Exception: Revenue center code 0001 represents the total of all revenue centers included on the claim. (NCH) Example: 0123 = Semi-private 2 bed (medical or general) - pediatric",ExplanationOfBenefit.item.revenue.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-REV-CNTR-CD').code,0636,V2_MDCR_CLM_LINE,CLM_LINE_REV_CTR_CD,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-LINE-REV-CTR-CD,CCLF2.CLM_LINE_PROD_REV_CTR_CD,REV_CNTR,Basis;Regular;CMS
|
||||
98,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Line Item Revenue Center Code,Code indicating whether the revenue center charges are subject to deductible and/or coinsurance. [NCH],ExplanationOfBenefit.item.revenue.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-DDCTBL-COINSRNC-CD').code,M,V2_MDCR_CLM_LINE_INSTNL,CLM_DDCTBL_COINSRNC_CD,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-DDCTBL-COINSRNC-CD,,REV_CNTR_DDCTBL_COINSRNC_CD,CMS
|
||||
99,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,HCPCS Modifier Code 1,(1) A first modifier to the procedure code to enable a more specific procedure identification for the claim. [NCH] (2) A first modifier to the HCPCS procedure code to enable a more specific procedure identification for the line item service on the noninstitutional claim. [NCH],ExplanationOfBenefit.item.modifier[0].coding.code,A2,V2_MDCR_CLM_LINE,HCPCS_1_MDFR_CD,FISS;MCS;NCH;VMS,,CCLF2.HCPCS_1_MDFR_CD;CCLF5.HCPCS_1_MDFR_CD,HCPCS_1ST_MDFR_CD,Basis;Regular;CMS
|
||||
100,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,HCPCS Modifier Code 2,(1) A second modifier to the procedure code to make it more specific than the first modifier code to identify the procedures performed on the beneficiary for the claim. [NCH] (2) A second modifier to the HCPCS procedure code to make it more specific than the first modifier code to identify the line item procedures for this claim. [NCH],ExplanationOfBenefit.item.modifier[1].coding.code,99,V2_MDCR_CLM_LINE,HCPCS_2_MDFR_CD,FISS;MCS;NCH;VMS,,CCLF2.HCPCS_2_MDFR_CD;CCLF5.HCPCS_2_MDFR_CD,HCPCS_2ND_MDFR_CD,Basis;Regular;CMS
|
||||
101,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,HCPCS Modifier Code 3,"(1) Effective with NCH version I, a third modifier to the procedure code to make it more specific than the second modifier code to identify the procedures performed on the beneficiary for the claim. [NCH] (2) Prior to NCH version H this field was named: HCPCS_3RD_MDFR_CD. [NCH]",ExplanationOfBenefit.item.modifier[2].coding.code,,V2_MDCR_CLM_LINE,HCPCS_3_MDFR_CD,FISS;MCS;NCH;VMS,,CCLF2.HCPCS_3_MDFR_CD;CCLF5.HCPCS_3_MDFR_CD,HCPCS_3RD_MDFR_CD,Basis;Regular;CMS
|
||||
102,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,HCPCS Modifier Code 4,"(1) Effective with version I, a fourth modifier to the procedure code to make it more specific than the third modifier code to identify the procedures performed on the beneficiary for the claim. [NCH] (2) Prior to version H this field was named: HCPCS_4TH_MDFR_CD. [NCH]",ExplanationOfBenefit.item.modifier[3].coding.code,,V2_MDCR_CLM_LINE,HCPCS_4_MDFR_CD,FISS;MCS;NCH;VMS,,CCLF2.HCPCS_4_MDFR_CD;CCLF5.HCPCS_4_MDFR_CD,HCPCS_4TH_MDFR_CD,Basis;Regular;CMS
|
||||
103,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,HCPCS Modifier Code 5,"Effective with NCH version I, a fifth modifier to the procedure code to make it more specific than the fourth modifier code to identify the procedures performed on the beneficiary for the claim. [NCH]",ExplanationOfBenefit.item.modifier[4].coding.code,,V2_MDCR_CLM_LINE,HCPCS_5_MDFR_CD,FISS;MCS;NCH;VMS,,CCLF2.HCPCS_5_MDFR_CD;CCLF5.HCPCS_5_MDFR_CD,,Basis;Regular;CMS
|
||||
104,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Line Institutional Rate Amount,"Charges relating to unit cost associated with the revenue center code. Exception (encounter data only): if the plan (e.g., MCO) does not know the actual rate for the accommodations, $1 will be reported in the field. Note 1: For SNF PPS claims (when revenue center code equals 0022), CMS has developed a SNF Pricer to compute the rate based on the provider supplied coding for the MDS RUGS III group and assessment type (HIPPS code, stored in revenue center HCPCS code field). Note 2: For OP PPS claims, CMS has developed a Pricer to compute the rate based on the Ambulatory Payment Classification (APC), discount factor, units of service, and the wage index. Note 3: Under HH PPS (when revenue center code equals 0023), CMS has developed a HHA Pricer to compute the rate. On the RAP, the rate is determined using the case mix weight associated with the HIPPS code, adjusting it for the wage index for the beneficiary's site of service, then multiplying the result by 60% or 50%, depending on whether or not the RAP is for a first episode. On the final claim, the HIPPS code could change the payment if the therapy threshold is not met, or a partial episode payment (PEP) adjustment or a significant change in condition (SCIC) adjustment occurs. In cases of SCICs, there will be more than one 0023 revenue center line, each representing the payment made at each case-mix level. Note 4: For IRF PPS claims (when revenue center code equals 0024), CMS has developed a Pricer to compute the rate based on the HIPPS/CMG (HIPPS code, stored in revenue center HCPCS code field). [NCH]",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_INSTNL_RATE_AMT')).amount.value,0.85,V2_MDCR_CLM_LINE_INSTNL,CLM_LINE_INSTNL_RATE_AMT,FISS;NCH,,,REV_CNTR_RATE_AMT,CMS
|
||||
105,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Line Adjustment Reason Code 1,"An American National Standards Institute (ANSI) Claim Adjustment Reason Code (CARC) identifying the reason for an adjustment to a claim or service line that resulted in a difference between the original billed amount and the final paid amount. An adjustment can result in a denial, reduction, or increase in payment. For example: 1 = Deductible amount. B1 = Non-covered visits.",ExplanationOfBenefit.item.adjudication.reason.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/ANSI-RSN-CD').code,B7,V2_MDCR_CLM_ANSI_SGNTR,CLM_1_REV_CNTR_ANSI_RSN_CD,NCH,,CCLFA.CLM_1_REV_CNTR_ANSI_RSN_CD,REV_CNTR_1ST_ANSI_CD,Basis;Regular;CMS
|
||||
106,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Line Adjustment Group Code 1,An American National Standards Institute (ANSI) group code identifying who has financial responsibility for an adjustment to a claim or service line that resulted in it being paid differently than it was billed. This group code works in conjunction with a Claim Adjustment Reason Code (CARC). For example: PR = Patient responsibility (patient is financially liable). CO = Contractual obligations (provider is financially liable).,ExplanationOfBenefit.item.adjudication.reason.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/ANSI-GRP-CD').code,PR,V2_MDCR_CLM_ANSI_SGNTR,CLM_1_REV_CNTR_ANSI_GRP_CD,NCH,,CCLFA.CLM_1_REV_CNTR_ANSI_GRP_CD,REV_CNTR_1ST_ANSI_CD,Basis;Regular;CMS
|
||||
107,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Line Adjustment Reason Code 2,"An American National Standards Institute (ANSI) Claim Adjustment Reason Code (CARC) identifying the reason for an adjustment to a claim or service line that resulted in a difference between the original billed amount and the final paid amount. An adjustment can result in a denial, reduction, or increase in payment. For example: 1 = Deductible amount. B1 = Non-covered visits.",ExplanationOfBenefit.item.adjudication.reason.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/ANSI-RSN-CD').code,B7,V2_MDCR_CLM_ANSI_SGNTR,CLM_2_REV_CNTR_ANSI_RSN_CD,NCH,,,REV_CNTR_2ND_ANSI_CD,Basis;Regular;CMS
|
||||
108,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Line Adjustment Group Code 2,An American National Standards Institute (ANSI) group code identifying who has financial responsibility for an adjustment to a claim or service line that resulted in it being paid differently than it was billed. This group code works in conjunction with a Claim Adjustment Reason Code (CARC). For example: PR = Patient responsibility (patient is financially liable). CO = Contractual obligations (provider is financially liable).,ExplanationOfBenefit.item.adjudication.reason.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/ANSI-GRP-CD').code,PR,V2_MDCR_CLM_ANSI_SGNTR,CLM_2_REV_CNTR_ANSI_GRP_CD,NCH,,,REV_CNTR_2ND_ANSI_CD,Basis;Regular;CMS
|
||||
109,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Line Adjustment Reason Code 3,"An American National Standards Institute (ANSI) Claim Adjustment Reason Code (CARC) identifying the reason for an adjustment to a claim or service line that resulted in a difference between the original billed amount and the final paid amount. An adjustment can result in a denial, reduction, or increase in payment. For example: 1 = Deductible amount. B1 = Non-covered visits.",ExplanationOfBenefit.item.adjudication.reason.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/ANSI-RSN-CD').code,B7,V2_MDCR_CLM_ANSI_SGNTR,CLM_3_REV_CNTR_ANSI_RSN_CD,NCH,,,REV_CNTR_3RD_ANSI_CD,Basis;Regular;CMS
|
||||
110,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Line Adjustment Group Code 3,An American National Standards Institute (ANSI) group code identifying who has financial responsibility for an adjustment to a claim or service line that resulted in it being paid differently than it was billed. This group code works in conjunction with a Claim Adjustment Reason Code (CARC). For example: PR = Patient responsibility (patient is financially liable). CO = Contractual obligations (provider is financially liable).,ExplanationOfBenefit.item.adjudication.reason.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/ANSI-GRP-CD').code,PR,V2_MDCR_CLM_ANSI_SGNTR,CLM_3_REV_CNTR_ANSI_GRP_CD,NCH,,,REV_CNTR_3RD_ANSI_CD,Basis;Regular;CMS
|
||||
111,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Line Adjustment Reason Code 4,"An American National Standards Institute (ANSI) Claim Adjustment Reason Code (CARC) identifying the reason for an adjustment to a claim or service line that resulted in a difference between the original billed amount and the final paid amount. An adjustment can result in a denial, reduction, or increase in payment. For example: 1 = Deductible amount. B1 = Non-covered visits.",ExplanationOfBenefit.item.adjudication.reason.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/ANSI-RSN-CD').code,B7,V2_MDCR_CLM_ANSI_SGNTR,CLM_4_REV_CNTR_ANSI_RSN_CD,NCH,,,REV_CNTR_4TH_ANSI_CD,Basis;Regular;CMS
|
||||
112,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Line Adjustment Group Code 4,An American National Standards Institute (ANSI) group code identifying who has financial responsibility for an adjustment to a claim or service line that resulted in it being paid differently than it was billed. This group code works in conjunction with a Claim Adjustment Reason Code (CARC). For example: PR = Patient responsibility (patient is financially liable). CO = Contractual obligations (provider is financially liable).,ExplanationOfBenefit.item.adjudication.reason.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/ANSI-GRP-CD').code,PR,V2_MDCR_CLM_ANSI_SGNTR,CLM_4_REV_CNTR_ANSI_GRP_CD,NCH,,,REV_CNTR_4TH_ANSI_CD,Basis;Regular;CMS
|
||||
113,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Non-Covered Charge Amount,The charge amount related to a revenue center code for services that are not covered by Medicare. Note: Prior to NCH version H the field size was S9(7)V99 and the element was only present on the inpatient/SNF format. As of NCH weekly process date 10/3/97 this field was added to all institutional claim types. [NCH],ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_NCVRD_CHRG_AMT')).amount.value,0.1,V2_MDCR_CLM_LINE,CLM_LINE_NCVRD_CHRG_AMT,FISS;NCH,,,REV_CNTR_NCVRD_CHRG_AMT,Regular;CMS
|
||||
114,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Provider Payment Amount,"(1) Effective with NCH version H, the payment made to the provider for the line item service on the noninstitutional claim. Note: Beginning with NCH weekly process date 10/3/97 this field was populated with data. Claims processed prior to 10/3/97 will contain zeroes in this field. [NCH] (2) Effective with version I, the amount paid to the provider for the services reported on the line item. Note 1: This field is populated for those claims that are required to process through outpatient PPS Pricer. The types of bills (TOB) required to process through are: 12X, 13X, 14X (except Maryland providers, Indian health providers, hospitals located in American Samoa, Guam, and Saipan, and critical access hospitals (CAH)); 76X; 75X and 34X if certain HCPCS are on the bill; and any outpatient type of bill with a condition code 07 and certain HCPCS. These claim types could have lines that are not required to price under OPPS rules so those lines would not have data in this field. Additional exception: Virgin Island hospitals and hospitals that furnish only inpatient Part B services with dates of service 1/1/02 and forward. Anomaly: For dates of service August 1, 2000 to the present, the OPPS revenue center fields are being processed differently by FISS and APASS (standard systems). For more information on OPPS data problems for this time period see the Limitations Appendix. The following is how each system handles this field: FISS: Populated correctly with provider payment amount. APASS: Provider payment amount plus interest on 1st revenue center line (CMM will instruct APASS not to include interest). Currently, the following FI numbers are under the APASS system and all other FI numbers are under FISS. See FI_NUM table of codes for all FI numbers. 52280 -- Mutual of Omaha (until 6/1/2003). 00430 -- Washington/Alaska (until 11/1/2003). 00310 -- North Carolina BC (until 12/1/2003). 00370 -- Rhode Island (until 2/1/2004). 00270 -- New Hampshire/Vermont (until 3/1/2004). 00181 -- Maine/Massachusetts (until 5/1/2004). Note 2: It has been discovered that this field may be populated with data on claims with dates of service prior to 7/00 (implementation of claim line expansion OPPS/HHPPS). The original understanding of the new revenue center fields was that data would be populated on claims with dates of service 7/00 and forward. Data has been found in claims with dates of service prior to 7/00 because the standard systems have processed any claim coming in 7/00 and after, meeting the above criteria, through the Outpatient Code Editor (OCE) regardless of the dates of service. [NCH]",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_PRVDR_PMT_AMT')).amount.value,11.15,V2_MDCR_CLM_LINE,CLM_LINE_PRVDR_PMT_AMT,FISS;MCS;NCH;VMS,,,LINE_PRVDR_PMT_AMT;REV_CNTR_PRVDR_PMT_AMT,CMS
|
||||
115,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Patient Responsibility Payment Amount,"An amount identifying the payment made by a beneficiary for a detail line of service on a claim. Note: For Part D, this amount counts towards a beneficiary's true-out-of-pocket (TROOP) cost.",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_BENE_PMT_AMT')).amount.value,17.99,V2_MDCR_CLM_LINE,CLM_LINE_BENE_PMT_AMT,NCH,,,REV_CNTR_PTNT_RSPNSBLTY_PMT,Regular;CMS
|
||||
116,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Beneficiary Paid Amount,An amount identifying the payment made to a beneficiary for a detail line of service.,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_BENE_PD_AMT')).amount.value,13.22,V2_MDCR_CLM_LINE,CLM_LINE_BENE_PD_AMT,FISS;MCS;NCH;VMS,,,LINE_BENE_PMT_AMT;REV_CNTR_BENE_PMT_AMT,Regular;CMS
|
||||
117,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Claim Line Covered Paid Amount,An amount identifying the Medicare payment for a line item service.,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_CVRD_PD_AMT')).amount.value,11.14,V2_MDCR_CLM_LINE,CLM_LINE_CVRD_PD_AMT,FISS;MCS;NCH,,CCLF2.CLM_LINE_CVRD_PD_AMT;CCLF5.CLM_LINE_CVRD_PD_AMT;CCLF6.CLM_LINE_CVRD_PD_AMT,LINE_NCH_PMT_AMT;REV_CNTR_PMT_AMT_AMT,Regular;CMS
|
||||
118,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Line Blood Deductible Amount,An amount identifying the blood deductible a beneficiary is responsible for on a detail line of service.,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_BLOOD_DDCTBL_AMT')).amount.value,17.11,V2_MDCR_CLM_LINE,CLM_LINE_BLOOD_DDCTBL_AMT,NCH,,,REV_CNTR_BLOOD_DDCTBL_AMT,CMS
|
||||
119,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Part B Deductible Amount,"(1) Effective with NCH version I, the amount of cash deductible the beneficiary paid for the line item service. Note 1: This field is populated for those claims that are required to process through outpatient PPS Pricer. The types of bills (TOB) required to process through are: 12X, 13X, 14X (except Maryland providers, Indian health providers, hospitals located in American Samoa, Guam, and Saipan, and critical access hospitals (CAH)); 76X; 75X and 34X if certain HCPCS are on the bill; and any outpatient type of bill with a condition code 07 and certain HCPCS. These claim types could have lines that are not required to price under OPPS rules so those lines would not have data in this field. Additional exception: Virgin Island hospitals and hospitals that furnish only inpatient Part B services with dates of service 1/1/02 and forward. Note 2: It has been discovered that this field may be populated with data on claims with dates of service prior to 7/00 (implementation of claim line expansion OPPS/HHPPS). The original understanding of the new revenue center fields was that data would be populated on claims with dates of service 7/00 and forward. Data has been found in claims with dates of service prior to 7/00 because the standard systems have processed any claim coming in 7/00 and after, meeting the above criteria, through the Outpatient Code Editor (OCE) regardless of the dates of service. [NCH] (2) The amount of money for which the carrier has determined that the beneficiary is liable for the Part B cash deductible for the line item service on the noninstitutional claim. [NCH]",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_MDCR_DDCTBL_AMT')).amount.value,3.5,V2_MDCR_CLM_LINE,CLM_LINE_MDCR_DDCTBL_AMT,FISS;MCS;NCH;VMS,,CCLFB.CLM_LINE_MDCR_DDCTBL_AMT,REV_CNTR_CASH_DDCTBL_AMT;LINE_BENE_PTB_DDCTBL_AMT,Regular;CMS
|
||||
120,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Revenue Center Coinsurance/Wage Adjusted Coinsurance Amount,"Effective with NCH version I, the amount of coinsurance applicable to the line item service defined by the revenue center and HCPCS codes. For those services subject to outpatient PPS, the applicable coinsurance is wage adjusted. Note 1: This field is populated for those claims that are required to process through outpatient PPS Pricer. The types of bills (TOB) required to process through are: 12X, 13X, 14X (except Maryland providers, Indian health providers, and critical access hospitals (CAH)); 76X; 75X and 34X if certain HCPCS are on the bill; and any outpatient type of bill with a condition code 07 and certain HCPCS. The above claim types could have lines that are not required to price under OPPS rules so those lines would not have data in this field. Note 2: This field will have either a zero (for services for which coinsurance is not applicable), a regular coinsurance amount (calculated on either charges or a fee schedule), or if subject to OP PPS the national coinsurance amount will be wage adjusted. The wage adjusted coinsurance is based on the MSA where the provider is located or assigned as a result of a reclassification. Note 3: It has been discovered that this field may be populated with data on claims with dates of service prior to 7/00 (implementation of claim line expansion OPPS/HHPPS). The original understanding of the new revenue center fields was that data would be populated on claims with dates of service 7/00 and forward. Data has been found in claims with dates of service prior to 7/00 because the standard systems have processed any claim coming in 7/00 and after, meeting the above criteria, through the Outpatient Code Editor (OCE) regardless of the dates of service. [NCH]",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_INSTNL_ADJSTD_AMT')).amount.value,4.5,V2_MDCR_CLM_LINE_INSTNL,CLM_LINE_INSTNL_ADJSTD_AMT,FISS;NCH,,,REV_CNTR_COINSRNC_WGE_ADJSTD_C,CMS
|
||||
121,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Revenue Center Reduced Coinsurance Amount,"Effective with NCH version I, for all services subject to outpatient PPS, the amount of coinsurance applicable to the line for a particular service (HCPCS) for which the provider has elected to reduce the coinsurance amount. Note 1: This field is populated for those claims that are required to process through outpatient PPS Pricer. The types of bills (TOB) required to process through are: 12X, 13X, 14X (except Maryland providers, Indian health providers, hospitals located in American Samoa, Guam, and Saipan, and critical access hospitals (CAH)); 76X; 75X and 34X if certain HCPCS are on the bill; and any outpatient type of bill with a condition code 07 and certain HCPCS. These claim types could have lines that are not required to price under OPPS rules so those lines would not have data in this field. Additional exception: Virgin Island hospitals and hospitals that furnish only inpatient Part B services with dates of service 1/1/02 and forward. Note 2: The reduced coinsurance amount cannot be lower than 20% of the payment rate for the APC line. Note 3: It has been discovered that this field may be populated with data on claims with dates of service prior to 7/00 (implementation of claim line expansion OPPS/HHPPS). The original understanding of the new revenue center fields was that data would be populated on claims with dates of service 7/00 and forward. Data has been found in claims with dates of service prior to 7/00 because the standard systems have processed any claim coming in 7/00 and after, meeting the above criteria, through the Outpatient Code Editor (OCE) regardless of the dates of service. [NCH]",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_INSTNL_RDCD_AMT')).amount.value,11.11,V2_MDCR_CLM_LINE_INSTNL,CLM_LINE_INSTNL_RDCD_AMT,FISS;NCH,,,REV_CNTR_RDCD_COINSRNC_AMT,CMS
|
||||
122,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Revenue Center 1st Medicare Secondary Payer Paid Amount,"Effective with NCH version I, the amount paid by the primary payer when the payer is primary to Medicare (Medicare is secondary). Note 1: This field is populated for those claims that are required to process through outpatient PPS Pricer. The types of bills (TOB) required to process through are: 12X, 13X, 14X (except Maryland providers, Indian health providers, hospitals located in American Samoa, Guam, and Saipan, and critical access hospitals (CAH)); 76X; 75X and 34X if certain HCPCS are on the bill; and any outpatient type of bill with a condition code 07 and certain HCPCS. These claim types could have lines that are not required to price under OPPS rules so those lines would not have data in this field. Additional exception: Virgin Island hospitals and hospitals that furnish only inpatient Part B services with dates of service 1/1/02 and forward. Note 2: It has been discovered that this field may be populated with data on claims with dates of service prior to 7/00 (implementation of claim line expansion OPPS/HHPPS). The original understanding of the new revenue center fields was that data would be populated on claims with dates of service 7/00 and forward. Data has been found in claims with dates of service prior to 7/00 because the standard systems have processed any claim coming in 7/00 and after, meeting the above criteria, through the Outpatient Code Editor (OCE) regardless of the dates of service. [NCH]",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_INSTNL_MSP1_PD_AMT')).amount.value,17,V2_MDCR_CLM_LINE_INSTNL,CLM_LINE_INSTNL_MSP1_PD_AMT,FISS;NCH,,,REV_CNTR_1ST_MSP_PD_AMT,CMS
|
||||
123,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Revenue Center 2nd Medicare Secondary Payer Paid Amount,"Effective with NCH version I, the amount paid by the secondary payer when two payers are primary to Medicare (Medicare is the tertiary payer). Note 1: This field is populated for those claims that are required to process through outpatient PPS Pricer. The types of bills (TOB) required to process through are: 12X, 13X, 14X (except Maryland providers, Indian health providers, hospitals located in American Samoa, Guam, and Saipan, and critical access hospitals (CAH)); 76X; 75X and 34X if certain HCPCS are on the bill; and any outpatient type of bill with a condition code 07 and certain HCPCS. These claim types could have lines that are not required to price under OPPS rules so those lines would not have data in this field. Additional exception: Virgin Island hospitals and hospitals that furnish only inpatient Part B services with dates of service 1/1/02 and forward. Note 2: It has been discovered that this field may be populated with data on claims with dates of service prior to 7/00 (implementation of claim line expansion OPPS/HHPPS). The original understanding of the new revenue center fields was that data would be populated on claims with dates of service 7/00 and forward. Data has been found in claims with dates of service prior to 7/00 because the standard systems have processed any claim coming in 7/00 and after, meeting the above criteria, through the Outpatient Code Editor (OCE) regardless of the dates of service. [NCH]",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_INSTNL_MSP2_PD_AMT')).amount.value,14.21,V2_MDCR_CLM_LINE_INSTNL,CLM_LINE_INSTNL_MSP2_PD_AMT,FISS;NCH,,,REV_CNTR_2ND_MSP_PD_AMT,CMS
|
||||
124,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Revenue Center Date,Revenue center date for the institutional line item.,ExplanationOfBenefit.item.servicedDate,2025-01-01,V2_MDCR_CLM_LINE_INSTNL,CLM_LINE_INSTNL_REV_CTR_DT,FISS;NCH,,CCLF2.CLM_LINE_INSTNL_REV_CTR_DT,REV_CNTR_DT,Basis;Regular;CMS
|
||||
125,ExplanationOfBenefit,HHA;Hospice;Inpatient;SNF,Claim Active Care From Date,The date the beneficiary's from-date of active care begins.,ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='admissionperiod').timing.start,2021-01-01,V2_MDCR_CLM_DT_SGNTR,CLM_ACTV_CARE_FROM_DT,FISS;NCH,,CCLFA.CLM_ACTV_CARE_FROM_DT,CLM_HOSPC_START_DT_ID;CLM_ADMSN_DT,Basis;Regular;CMS
|
||||
126,ExplanationOfBenefit,HHA;Hospice;Inpatient;SNF,Beneficiary Discharge Date,"The date the beneficiary was discharged from the facility (hospital, skilled nursing facility, home health agency, or hospice). [NCH]",ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='admissionperiod').timing.end,2021-01-02,V2_MDCR_CLM_DT_SGNTR,CLM_DSCHRG_DT,FISS;NCH,,,NCH_BENE_DSCHRG_DT,Basis;Regular;CMS
|
||||
127,ExplanationOfBenefit,Inpatient;SNF,Claim Admission Type Code,The code indicating the type and priority of an inpatient admission associated with the service on an intermediary submitted claim. [NCH],ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='admtype').code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-ADMSN-TYPE-CD').code,3,V2_MDCR_CLM_INSTNL,CLM_ADMSN_TYPE_CD,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-ADMSN-TYPE-CD,CCLF1.CLM_ADMSN_TYPE_CD,CLM_IP_ADMSN_TYPE_CD,Basis;Regular;CMS
|
||||
128,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Claim Submission Date,(1) The date the fiscal intermediary received the institutional claim from the provider. [NCH] (2) The date the carrier receives the non-institutional claim. [NCH],ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='clmrecvddate').timing,2020-01-13,V2_MDCR_CLM_DT_SGNTR,CLM_SUBMSN_DT,FISS;MCS;NCH;VMS,,,,Basis;Regular;CMS
|
||||
129,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Patient Discharge Status Code,The code used to identify the status of the patient as of the claim through date. [NCH],ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='discharge-status').code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/BENE-PTNT-STUS-CD').code,06,V2_MDCR_CLM_INSTNL,BENE_PTNT_STUS_CD,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/BENE-PTNT-STUS-CD,CCLF1.BENE_PTNT_STUS_CD,NCH_PTNT_STATUS_IND_CD;PTNT_DSCHRG_STUS_CD,Basis;Regular;CMS
|
||||
130,ExplanationOfBenefit,Inpatient;SNF,Claim Diagnosis Related Group Code,"On an institutional claim, the code that identifies the diagnosis related group to which a beneficiary stay is classified for payment purposes. [NCH]",ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='drg').code.coding.where(system='https://www.cms.gov/Medicare/Medicare-Fee-for-Service-Payment/AcuteInpatientPPS/MS-DRG-Classifications-and-Software').code,460,V2_MDCR_CLM_INSTNL,DGNS_DRG_CD,FISS;NCH,,CCLF1.DGNS_DRG_CD,CLM_DRG_CD,Basis;Regular;CMS
|
||||
131,ExplanationOfBenefit,Carrier;Inpatient;Outpatient;SNF,Blood Pints Furnished Quantity,A quantity indicating the whole pints of blood furnished to a beneficiary.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BLOOD_PT_FRNSH_QTY').exists()).value.value,15,V2_MDCR_CLM,CLM_BLOOD_PT_FRNSH_QTY,NCH,,,NCH_BLOOD_PNTS_FRNSHD_QTY,CMS
|
||||
132,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,MCO Paid Switch,A switch indicating whether or not a Managed Care Organization (MCO) has paid the provider for an institutional claim. [NCH],ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_MDCR_INSTNL_MCO_PD_SW').exists()).code.coding.code,1,V2_MDCR_CLM_INSTNL,CLM_MDCR_INSTNL_MCO_PD_SW,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-MDCR-INSTNL-MCO-PD-SW,,CLM_MCO_PD_SW,CMS
|
||||
133,ExplanationOfBenefit,Inpatient;SNF,Source Admission Code,"The code indicating the means by which the beneficiary was admitted to the inpatient health care facility or SNF if the type of admission is (1) emergency, (2) urgent, or (3) elective. [NCH]",ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='pointoforigin').code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-ADMSN-SRC-CD').code,2,V2_MDCR_CLM_INSTNL,CLM_ADMSN_SRC_CD,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-ADMSN-SRC-CD,CCLF1.CLM_ADMSN_SRC_CD,CLM_SRC_IP_ADMSN_CD,Basis;Regular;CMS
|
||||
134,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Type of Bill Code,"The Type of Bill Code. Composed of a 0, followed by the Claim Facility Type Code, then the Claim Service Classification Type Code, and finally the Claim Frequency Code.",ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='typeofbill').code.coding.where(system='https://www.nubc.org/CodeSystem/TypeOfBill').code,0123,,,FISS;NCH,,,,Basis;Regular;CMS
|
||||
135,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Bill Facility Type Code,A code identifying the type of facility that provided care to a beneficiary on an institutional claim. It is the first digit of the Type of Bill (TOB). Reference table: CLM_BILL_FAC_TYPE_CD,ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='typeofbill').code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-BILL-FAC-TYPE-CD').code,1,V2_MDCR_CLM,CLM_BILL_FAC_TYPE_CD,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-BILL-FAC-TYPE-CD,CCLF1.CLM_BILL_FAC_TYPE_CD,CLM_FAC_TYPE_CD,Basis;Regular;CMS
|
||||
136,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Bill Classification Code,A code classifying the type of service provided to a beneficiary on an institutional claim. It is the second digit of the Type of Bill (TOB).,ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='typeofbill').code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-BILL-CLSFCTN-CD').code,12,V2_MDCR_CLM,CLM_BILL_CLSFCTN_CD,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-BILL-CLSFCTN-CD,CCLF1.CLM_BILL_CLSFCTN_CD,CLM_SRVC_CLSFCTN_TYPE_CD,Basis;Regular;CMS
|
||||
137,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Bill Frequency Code,A code indicating the sequence of an institutional claim in the beneficiary's current episode of care. It is the third digit of the Type of Bill (TOB).,ExplanationOfBenefit.supportingInfo.where(category.coding.system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType' and category.coding.code='typeofbill').code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-BILL-FREQ-CD').code,123,V2_MDCR_CLM,CLM_BILL_FREQ_CD,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-BILL-FREQ-CD,CCLF1.CLM_BILL_FREQ_CD,CLM_FREQ_CD,Basis;Regular;CMS
|
||||
138,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Weekly Process Date,"The date the weekly NCH database load process cycle begins, during which the claim records are loaded into the nearline file. This date will always be a Friday, although the claims will actually be appended to the database subsequent to the date. (NCH)",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_NCH_WKLY_PROC_DT').exists()).timing,2025-01-18,V2_MDCR_CLM_DT_SGNTR,CLM_NCH_WKLY_PROC_DT,NCH,,,NCH_WKLY_PROC_DT,CMS
|
||||
139,ExplanationOfBenefit,Inpatient;SNF,Noncovered Stay From Date,"Effective with NCH version H, the beginning date of the beneficiary's noncovered stay (used for internal CWFMQA editing purposes). Note: During the version H conversion this field was populated with data throughout history (back to service year 1991). [NCH]",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_NCVRD_FROM_DT').exists()).timing,2025-01-01,V2_MDCR_CLM_DT_SGNTR,CLM_NCVRD_FROM_DT,NCH,,,NCH_VRFD_NCVRD_STAY_FROM_DT,CMS
|
||||
140,ExplanationOfBenefit,Inpatient;SNF,Noncovered Stay Through Date,"Effective with NCH version H, the ending date of the beneficiary's noncovered stay (used for internal CWFMQA editing purposes). Note: During the NCH version H conversion this field was populated with data throughout history (back to service year 1991). [NCH]",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_NCVRD_THRU_DT').exists()).timing,2025-01-02,V2_MDCR_CLM_DT_SGNTR,CLM_NCVRD_THRU_DT,NCH,,,NCH_VRFD_NCVRD_STAY_THRU_DT,CMS
|
||||
141,ExplanationOfBenefit,HHA;Inpatient;SNF,Qualified Stay From Date,"The beginning date of the beneficiary's qualifying stay (used for internal CWFMQA editing purposes). For inpatient claims, the date relates to the PPS portion of the inlier for which there is no utilization to benefits. For SNF claims, the date relates to a qualifying stay from a hospital that is at least two days in a row if the source of admission is an A, or at least three days in a row if the source of admission is other than A. [HRMZ] Note: During the NCH version H conversion this field was populated with data throughout history (back to service year 1991).",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_QLFY_STAY_FROM_DT').exists()).timing,2025-01-02,V2_MDCR_CLM_DT_SGNTR,CLM_QLFY_STAY_FROM_DT,FISS;NCH,,,NCH_QLFYD_STAY_FROM_DT,CMS
|
||||
142,ExplanationOfBenefit,HHA;Inpatient;SNF,Qualified Stay Through Date,"The ending date of the beneficiary's qualifying stay (used for internal CWFMQA editing purposes). For inpatient claims, the date relates to the PPS portion of the inlier for which there is no utilization to benefits. For SNF claims, the date relates to a qualifying stay from a hospital that is at least two days in a row if the source of admission is an A, or at least three days in a row if the source of admission is other than A. [HRMZ] Note: During the NCH version H conversion this field was populated with data throughout history (back to service year 1991). [NCH]",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_QLFY_STAY_THRU_DT').exists()).timing,2025-01-01,V2_MDCR_CLM_DT_SGNTR,CLM_QLFY_STAY_THRU_DT,FISS;NCH,,,CLM_QLFY_STAY_THRU_DT,CMS
|
||||
143,ExplanationOfBenefit,Inpatient;SNF,Covered Care Through Date,The date on a claim for which the covered level of care ended in a general hospital or the active care ended in a psychiatric/TB hospital.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_ACTV_CARE_THRU_DT').exists()).timing,2025-01-11,V2_MDCR_CLM_DT_SGNTR,CLM_ACTV_CARE_THRU_DT,NCH,,,NCH_ACTV_OR_CVRD_LVL_CARE_THRU,CMS
|
||||
144,ExplanationOfBenefit,Hospice;Inpatient;SNF,Medicare Benefits Exhausted Date,The date the beneficiary's Medicare benefits were exhausted. [NCH],ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_MDCR_EXHSTD_DT').exists()).timing,2025-01-11,V2_MDCR_CLM_DT_SGNTR,CLM_MDCR_EXHSTD_DT,NCH,,,NCH_BENE_MDCR_BNFTS_EXHTD_DT_I,CMS
|
||||
145,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,FI Claim Action Code,The type of action requested by the intermediary to be taken on an institutional claim.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_FI_ACTN_CD').exists()).code.coding.code,1,V2_MDCR_CLM_INSTNL,CLM_FI_ACTN_CD,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-FI-ACTN-CD,,FI_CLM_ACTN_CD,CMS
|
||||
146,ExplanationOfBenefit,Inpatient;SNF,Lifetime Reserved Days Used Count,"The number of lifetime reserve days that the beneficiary has elected to use during the period covered by the institutional claim. Under Medicare, each beneficiary has a one-time reserve of sixty additional days of inpatient hospital coverage that can be used after 90 days of inpatient care have been provided in a single benefit period. This count is used to subtract from the total number of lifetime reserve days that a beneficiary has available.",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_IP_LRD_USE_CNT').exists()).value,7,V2_MDCR_CLM_INSTNL,CLM_MDCR_IP_LRD_USE_CNT,FISS;NCH,,,BENE_LRD_USED_CNT,CMS
|
||||
147,ExplanationOfBenefit,Inpatient;SNF,Claim Uncompensated Care Payment Amount,This is a payment for DSH hospitals as part of Section 3133 of the ACA. It represents the uncompensated care amount of the payment.,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_HIPPS_UNCOMPD_CARE_AMT').exists()).amount.value,15,V2_MDCR_CLM_INSTNL,CLM_HIPPS_UNCOMPD_CARE_AMT,FISS;NCH,,CCLF1.CLM_HIPPS_UNCOMPD_CARE_AMT,CLM_UNCOMPD_CARE_PMT_AMT,CMS
|
||||
148,ExplanationOfBenefit,Inpatient;SNF,Total Coinsurance Days Count,"The count of the total number of coinsurance days involved with the beneficiary's stay in a facility. [NCH, HRMZ] For Medicaid, the number of covered inpatient hospital days occurring after the 60th day and before the 91st day, or the number of covered inpatient skilled nursing facility days occurring after the 20th day and before the 101st day of the benefit period. [HRMZ]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_INSTNL_MDCR_COINS_DAY_CNT').exists()).value,3,V2_MDCR_CLM_INSTNL,CLM_INSTNL_MDCR_COINS_DAY_CNT,FISS;NCH,,,BENE_TOT_COINSRNC_DAYS_CNT,CMS
|
||||
149,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Claim Disposition Code,A code indicating the disposition or outcome of a processed claim record. Reference table: CLM_DISP_CD,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_DISP_CD').exists()).code.coding.code,01,V2_MDCR_CLM,CLM_DISP_CD,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-DISP-CD,CCLF5.CLM_DISP_CD;CCLF6.CLM_DISP_CD,CLM_DISP_CD,CMS
|
||||
150,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Total Charge Amount,An amount totaling the sum of all the line item submitted charges on a claim.,ExplanationOfBenefit.total.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication').exists() and category.coding.where(code='CLM_SBMT_CHRG_AMT').exists() ).amount.value,9001.55,V2_MDCR_CLM,CLM_SBMT_CHRG_AMT,FISS;MCS;NCH;VMS,,CCLF1.CLM_MDCR_INSTNL_TOT_CHRG_AMT,NCH_CARR_CLM_SBMTD_CHRG_AMT;CLM_TOT_CHRG_AMT,Regular;CMS
|
||||
151,ExplanationOfBenefit,Inpatient;SNF,Non Utilization Day Count,The number of inpatient days of care not covered by the primary provider or by Medicare facility utilization. [HRMZ],ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_INSTNL_NCVRD_DAY_CNT').exists()).value,4,V2_MDCR_CLM_INSTNL,CLM_INSTNL_NCVRD_DAY_CNT,FISS;NCH,,,CLM_NON_UTLZTN_DAYS_CNT,CMS
|
||||
152,ExplanationOfBenefit,Inpatient;SNF,Pass Through Per Diem Amount,"The maximum amount a provider can be paid for each day of care. [HRMZ] For Medicare IP, the amount of the established reimbursable costs for the current year divided by the estimated Medicare days for the current year (all PPS claims), as calculated by the FI and reimbursement staff. Items reimbursed as a pass through include capital-related costs; direct medical education costs; kidney acquisition costs for hospitals approved as RTCs; and bad debts (per Provider Reimbursement Manual, Part 1, Section 2405.2). Note: Pass through amounts are not included in the claim payment amount. [NCH, HRMZ]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_INSTNL_PER_DIEM_AMT').exists()).amount.value,5,V2_MDCR_CLM_INSTNL,CLM_INSTNL_PER_DIEM_AMT,FISS;NCH,,CCLFA.CLM_INSTNL_PER_DIEM_AMT,CLM_PASS_THRU_PER_DIEM_AMT,CMS
|
||||
153,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Non Payment Reason Code,"The reason that no Medicare payment is made for services on an institutional claim. Note: Effective with NCH version I, this field was put on all institutional claim types. Note 1: This field was put on all institutional claim types but data did not start coming in on OP/HHA/hospice until 4/1/02. Prior to 4/1/02, data only came in on inpatient/SNF claims. Note 2: Effective 4/1/02, this field was also expanded to two bytes to accommodate new values. The NCH nearline file did not expand the current 1-byte field but instituted a crosswalk of the 2-byte field to the 1-byte character value. See table of codes for the crosswalk. [NCH]",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_MDCR_NPMT_RSN_CD').exists()).code.coding.code,P,V2_MDCR_CLM_INSTNL,CLM_MDCR_NPMT_RSN_CD,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-MDCR-NPMT-RSN-CD,CCLF1.CLM_MDCR_NPMT_RSN_CD,CLM_MDCR_NON_PMT_RSN_CD,CMS
|
||||
154,ExplanationOfBenefit,Inpatient;SNF,Claim PPS Capital DRG Weight Number,"Effective 3/2/92, the number used to determine a transfer adjusted case mix index for capital PPS. The number is determined by multiplying the DRG weight times the discharge fraction. [NCH]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_IP_PPS_DRG_WT_NUM').exists()).value,1.08,V2_MDCR_CLM_INSTNL,CLM_MDCR_IP_PPS_DRG_WT_NUM,FISS;NCH,,,CLM_PPS_CPTL_DRG_WT_NUM,CMS
|
||||
155,ExplanationOfBenefit,Inpatient;SNF,Claim PPS Capital Disproportionate Share Amount,"Effective 3/2/92, the amount of disproportionate share (rate reflecting indigent population served) portion of the PPS payment for capital. [NCH]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_IP_PPS_DSPRPRTNT_AMT').exists()).amount.value,15.11,V2_MDCR_CLM_INSTNL,CLM_MDCR_IP_PPS_DSPRPRTNT_AMT,FISS;NCH,,CCLF1.CLM_MDCR_IP_PPS_DSPRPRTNT_AMT,CLM_PPS_CPTL_DSPRPRTNT_SHR_AMT,CMS
|
||||
156,ExplanationOfBenefit,Inpatient;SNF,Claim PPS Capital Exception Amount,"Effective 3/2/92, the capital PPS amount of exception payments provided for hospitals with inordinately high levels of capital obligations. Exception payments expire at the end of the 10-year transition period. [NCH]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_IP_PPS_EXCPTN_AMT').exists()).amount.value,11.5,V2_MDCR_CLM_INSTNL,CLM_MDCR_IP_PPS_EXCPTN_AMT,FISS;NCH,,,CLM_PPS_CPTL_EXCPTN_AMT,CMS
|
||||
157,ExplanationOfBenefit,Inpatient;SNF,Claim PPS Capital FSP Amount,"Effective 3/2/92, the amount of the federal specific portion of the PPS payment for capital. [NCH]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_IP_PPS_CPTL_FSP_AMT').exists()).amount.value,11.81,V2_MDCR_CLM_INSTNL,CLM_MDCR_IP_PPS_CPTL_FSP_AMT,FISS;NCH,,,CLM_PPS_CPTL_FSP_AMT,CMS
|
||||
158,ExplanationOfBenefit,Inpatient;SNF,Claim PPS Capital IME Amount,"Effective 3/2/92, the amount of the Indirect Medical Education (IME) portion of the PPS payment for capital. IME is a reimbursable amount for teaching hospitals only; an added amount passed by Congress to augment normal PPS payments for teaching hospitals to compensate them for higher patient costs resulting from medical education programs for interns and residents. [NCH]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_IP_PPS_CPTL_IME_AMT').exists()).amount.value,14.11,V2_MDCR_CLM_INSTNL,CLM_MDCR_IP_PPS_CPTL_IME_AMT,FISS;NCH,,CCLF1.CLM_MDCR_IP_PPS_CPTL_IME_AMT,CLM_PPS_CPTL_IME_AMT,CMS
|
||||
159,ExplanationOfBenefit,Inpatient;SNF,Claim PPS Capital Outlier Amount,"Effective 3/2/92, the amount of the outlier portion of the PPS payment for capital. [NCH]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_IP_PPS_OUTLIER_AMT').exists()).amount.value,40.11,V2_MDCR_CLM_INSTNL,CLM_MDCR_IP_PPS_OUTLIER_AMT,FISS;NCH,,,CLM_PPS_CPTL_OUTLIER_AMT,CMS
|
||||
160,ExplanationOfBenefit,Inpatient;SNF,Claim PPS Old Capital Hold Harmless Amount,"Effective 3/2/92, this amount is the hold harmless amount payable for old capital as computed by Pricer for providers with a payment code equal to A. The hold harmless amount for old capital is 100 percent of the reasonable costs of old capital for sole community hospitals, or 85 percent of the reasonable costs associated with old capital for all other hospitals, plus a payment for new capital. [NCH]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_IP_PPS_CPTL_HRMLS_AMT').exists()).amount.value,13.31,V2_MDCR_CLM_INSTNL,CLM_MDCR_IP_PPS_CPTL_HRMLS_AMT,FISS;NCH,,,CLM_PPS_OLD_CPTL_HLD_HRMLS_AMT,CMS
|
||||
161,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim PPS Indicator Code,"Effective with NCH version H, the code indicating whether or not (1) the claim is PPS and/or (2) the beneficiary is a deemed insured Medicare Qualified Government Employee (MQGE). Note: Beginning with NCH weekly process date 10/3/97 through 5/29/98, this field was populated with only the PPS indicator. Beginning with NCH weekly process date 6/5/98, this field was additionally populated with the deemed MQGE indicator. Claims processed prior to 10/3/97 will contain spaces. [NCH]",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_PPS_IND_CD').exists()).code.coding.code,2,V2_MDCR_CLM_INSTNL,CLM_PPS_IND_CD,NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-PPS-IND-CD,,CLM_PPS_IND_CD,CMS
|
||||
162,ExplanationOfBenefit,Inpatient;SNF,Claim Total PPS Capital Amount,"The total amount that is payable for capital PPS for the claim. This is the sum of the capital hospital specific portion, federal specific portion, outlier portion, disproportionate share portion, indirect medical education portion, exception payments, and hold harmless payments. [NCH]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_IP_PPS_CPTL_TOT_AMT').exists()).amount.value,11.11,V2_MDCR_CLM_INSTNL,CLM_MDCR_IP_PPS_CPTL_TOT_AMT,FISS;NCH,,,CLM_TOT_PPS_CPTL_AMT,CMS
|
||||
163,ExplanationOfBenefit,Hospice;Inpatient;SNF,Utilization Day Count,"The number of inpatient days covered by the primary provider. For Medicare IP and hospice, the number of covered days of care that are chargeable to Medicare facility utilization that includes full days, coinsurance days, and lifetime reserve days. [HRMZ]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_INSTNL_CVRD_DAY_CNT').exists()).value,30,V2_MDCR_CLM_INSTNL,CLM_INSTNL_CVRD_DAY_CNT,FISS;NCH,,,,CMS
|
||||
164,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,FI Number,A number assigned by Centers for Medicare and Medicaid Services (CMS) identifying a Medicare Administrative Contractor (MAC) authorized to process Medicare claims. Reference table: CLM_CNTRCTR_NUM,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_CNTRCTR_NUM').exists()).code.coding.code,10312,V2_MDCR_CLM,CLM_CNTRCTR_NUM,FISS;MCS;NCH;VMS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-CNTRCTR-NUM,CCLF1.CLM_CNTRCTR_NUM;CCLF5.CLM_CNTRCTR_NUM,CARR_NUM;FI_NUM,CMS
|
||||
165,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,The code outlining the primary payer.,A code identifying the coverage type of the primary payer when Medicare is the secondary payer as defined by the Common Working File (CWF). Reference table: CLM_NCH_PRMRY_PYR_CD,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_NCH_PRMRY_PYR_CD').exists()).code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-PRMRY-PYR-CD').code,I,V2_MDCR_CLM,CLM_NCH_PRMRY_PYR_CD,FISS;MCS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-NCH-PRMRY-PYR-CD,CCLF1.CLM_NCH_PRMRY_PYR_CD,NCH_PRMRY_PYR_CD,CMS
|
||||
166,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Primary Payer Paid Amount,"The amount of a payment made on behalf of a Medicare beneficiary by a primary payer other than Medicare, that the provider is applying to covered Medicare charges on an institutional, carrier, or DMERC claim. [NCH]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_INSTNL_PRMRY_PYR_AMT').exists()).amount.value,50.5,V2_MDCR_CLM_INSTNL,CLM_MDCR_INSTNL_PRMRY_PYR_AMT,NCH,,,NCH_PRMRY_PYR_CLM_PD_AMT,CMS
|
||||
167,ExplanationOfBenefit,HHA;Inpatient;SNF,Rendering Physician NPI - Header Level,"A number identifying the National Provider Identifier (NPI) of the provider who rendered the service, as sourced from the National Plan and Provider Enumeration System (NPPES). Note: This column is populated for certain types of claims where the same rendering provider NPI applies to all lines of the claim, and if the rendering provider NPI on the claim, as provided by the source system, can be found in the Integrated Deposit Repository (IDR) provider data as sourced from NPPES.",ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'rendering').exists()).provider.identifier.value,1942945159,V2_MDCR_CLM,PRVDR_RNDRNG_PRVDR_NPI_NUM,FISS;NCH,,,,Basis;Regular;CMS
|
||||
168,ExplanationOfBenefit,Carrier,Rendering Provider NPI Number - Line Level,"A number identifying the National Provider Identifier (NPI) of the provider who rendered the service, as sourced from the National Plan and Provider Enumeration System (NPPES). Note: This column is populated if the rendering provider NPI on the claim, as provided by the source system, can be found in the Integrated Deposit Repository (IDR) provider data as sourced from NPPES.",ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'rendering').exists()).provider.identifier.value,1942945159,V2_MDCR_CLM_LINE,PRVDR_RNDRNG_PRVDR_NPI_NUM,MCS;NCH,,CCLF5.RNDRG_PRVDR_NPI_NUM;CCLF5.CLM_RNDRG_PRVDR_NPI_NUM,CARR_LINE_PRFRMG_NPI_NUM;RNDRNG_PHYSN_NPI;PRF_PHYSN_NPI,Basis;Regular;CMS
|
||||
169,ExplanationOfBenefit,Inpatient;Outpatient;SNF,Professional Component Charge,"For inpatient and outpatient claims, the amount of physician and other professional charges covered under Medicare Part B (e.g., if computing interim payment these charges are deducted).",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_INSTNL_PRFNL_AMT').exists()).amount.value,93.22,V2_MDCR_CLM_INSTNL,CLM_INSTNL_PRFNL_AMT,NCH,,CCLFA.CLM_INSTNL_PRFNL_AMT,NCH_PROFNL_CMPNT_CHRG_AMT,CMS
|
||||
170,ExplanationOfBenefit,Inpatient;Outpatient;SNF,Blood Deductible Liability Amount,An amount identifying the portion of the blood deductible a beneficiary is liable for.,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_BLOOD_LBLTY_AMT').exists()).amount.value,121.1,V2_MDCR_CLM,CLM_BLOOD_LBLTY_AMT,FISS;NCH,,CCLFA.CLM_BLOOD_LBLTY_AMT,NCH_BENE_BLOOD_DDCTBL_LBLTY_AM,CMS
|
||||
171,ExplanationOfBenefit,Inpatient;SNF,Deductible Amount,"The amount of the deductible the beneficiary paid for inpatient services, as originally submitted on the institutional claim. [NCH] NCH derivation: Derived from CLM_VAL_CD and CLM_VAL_AMT. Derivation rule: Based on the presence of value code equal to A1, B1, or C1, move the corresponding value amount to the NCH_BENE_IP_DDCTBL_AMT. [NCH]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_IP_BENE_DDCTBL_AMT').exists()).amount.value,19.11,V2_MDCR_CLM_INSTNL,CLM_MDCR_IP_BENE_DDCTBL_AMT,NCH,,CCLFA.CLM_MDCR_IP_BENE_DDCTBL_AMT,NCH_BENE_IP_DDCTBL_AMT,CMS
|
||||
172,ExplanationOfBenefit,Inpatient;Outpatient;SNF,Part A/B Coinsurance Liability Amount,An amount identifying the portion applied toward the coinsurance a beneficiary is responsible for.,ExplanationOfBenefit.total.where(category.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBAdjudication' and code='coinsurance').exists() and category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_COINSRNC_AMT').exists()).amount.value,9.82,V2_MDCR_CLM,CLM_MDCR_COINSRNC_AMT,FISS;NCH;VMS,,CCLFA.CLM_MDCR_COINSRNC_AMT,NCH_BENE_PTA_COINSRNC_LBLTY_AM;NCH_BENE_PTB_COINSRNC_AMT,Regular;CMS
|
||||
173,ExplanationOfBenefit,Carrier;HHA;Hospice;Inpatient;Outpatient;SNF,Other Physician NPI,A number identifying the National Provider Identifier (NPI) of another provider as sourced from the NPI crosswalk reference information provided by the National Plan and Provider Enumeration System (NPPES).,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'otheroperating').exists()).provider.identifier.value or ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'supervisor').exists()).provider.identifier.value,,V2_MDCR_CLM,PRVDR_OTHR_PRVDR_NPI_NUM,FISS;MCS;NCH,,CCLF1.OTHR_PRVDR_NPI_NUM;CCLF1.CLM_OTHR_PRVDR_NPI_NUM,OT_PHYSN_NPI,Basis;Regular;CMS
|
||||
174,ExplanationOfBenefit,Inpatient;SNF,DRG Outlier Approved Payment Amount,"On an institutional claim, the additional payment amount approved by the peer review organization due to an outlier situation for a beneficiary's stay under the prospective payment system, which has been classified into a specific diagnosis related group. [NCH]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_INSTNL_DRG_OUTLIER_AMT').exists()).amount.value,15.89,V2_MDCR_CLM_INSTNL,CLM_INSTNL_DRG_OUTLIER_AMT,FISS;NCH,,,NCH_DRG_OUTLIER_APRVD_PMT_AMT,CMS
|
||||
175,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Provider Number (OSCAR/CCN),A number assigned to a billing provider by the Centers for Medicare and Medicaid Services (CMS) verifying that the provider is Medicare certified and for what types of services. Note: The OSCAR was renamed to CMS Certification Number (CCN) in 2007 by CMS.,ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://terminology.hl7.org/NamingSystem/CCN').value,,V2_MDCR_CLM,CLM_BLG_PRVDR_OSCAR_NUM,FISS;NCH,,CCLF1.PRVDR_OSCAR_NUM;CCLF1.CLM_BLG_PRVDR_OSCAR_NUM;CCLF2.PRVDR_OSCAR_NUM;CCLF2.CLM_FAC_PRVDR_OSCAR_NUM;CCLF3.PRVDR_OSCAR_NUM;CCLF3.CLM_BLG_PRVDR_OSCAR_NUM;CCLF4.PRVDR_OSCAR_NUM;CCLF4.CLM_BLG_PRVDR_OSCAR_NUM,PRVDR_NUM,Basis;Regular;CMS
|
||||
176,ExplanationOfBenefit,Outpatient,Outpatient Beneficiary Payment Amount,"Effective with NCH version H, the amount paid, from the Medicare Trust Fund, to the beneficiary for the services reported on the outpatient claim. Note: Beginning with NCH weekly process date 10/3/97 this field was populated with data. Claims processed prior to 10/3/97 will contain zeroes in this field. [NCH]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_BENE_PD_AMT').exists()).amount.value,,V2_MDCR_CLM_INSTNL,CLM_MDCR_INSTNL_BENE_PD_AMT,NCH,,,CLM_OP_BENE_PMT_AMT,Regular;CMS
|
||||
177,ExplanationOfBenefit,Carrier;DME;Outpatient,Provider Payment Amount,An amount identifying the total payment made to a provider/supplier for services rendered on an individual claim.,ExplanationOfBenefit.total.where(category.coding.where(system='http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBAdjudication' and code='paidtoprovider').exists() and category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_PRVDR_PMT_AMT').exists()).amount.value,11.11,V2_MDCR_CLM,CLM_PRVDR_PMT_AMT,FISS;MCS;NCH;VMS,,,CLM_OP_PRVDR_PMT_AMT;NCH_CLM_PRVDR_PMT_AMT,Regular;CMS
|
||||
178,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Revenue Center Discount Indicator Code,"Effective with NCH version I, this code represents a factor that specifies the amount of any APC discount. The discounting factor is applied to a line item with a service indicator (part of the REV_CNTR_PMT_MTHD_IND_CD) of T. The flag is applicable when more than one significant procedure is performed. If there is no discounting the factor will be 1.0. [NCH] Note 1: This field is populated for those claims that are required to process through outpatient PPS Pricer. The types of bills (TOB) required to process through are: 12X, 13X, 14X (except Maryland providers, Indian health providers, hospitals located in American Samoa, Guam, and Saipan, and critical access hospitals (CAH)); 76X; 75X and 34X if certain HCPCS are on the bill; and any outpatient type of bill with a condition code 07 and certain HCPCS. These claim types could have lines that are not required to price under OPPS rules so those lines would not have data in this field. Additional exception: Virgin Island hospitals and hospitals that furnish only inpatient Part B services with dates of service 1/1/02 and forward. Note 2: It has been discovered that this field may be populated with data on claims with dates of service prior to 7/00 (implementation of claim line expansion OPPS/HHPPS). The original understanding of the new revenue center fields was that data would be populated on claims with dates of service 7/00 and forward. Data has been found in claims with dates of service prior to 7/00 because the standard systems have processed any claim coming in 7/00 and after, meeting the above criteria, through the Outpatient Code Editor (OCE) regardless of the dates of service. Note 3: Values D, U, and T represent the following: D = Discounting fraction (currently 0.5). U = Number of units. T = Terminated procedure discount (currently 0.5).",ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-REV-DSCNT-IND-CD').value.code,1,V2_MDCR_CLM_LINE_INSTNL,CLM_REV_DSCNT_IND_CD,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-REV-DSCNT-IND-CD,,REV_CNTR_DSCNT_IND_CD,CMS
|
||||
179,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Revenue Center Obligation to Accept As Full Payment Code,"Effective with version I, indication that the provider was obligated to accept as full payment the amount received from the primary (or secondary) payer.",ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-OTAF-ONE-IND-CD').value.code,Y,V2_MDCR_CLM_LINE_INSTNL,CLM_OTAF_ONE_IND_CD,NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-OTAF-IND-CD,,REV_CNTR_OTAF_PMT_CD,CMS
|
||||
180,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Revenue Center Packaging Indicator Code,"Effective with NCH version I, the code used to identify those services that are packaged/bundled with another service. Note 1: This field is populated for those claims that are required to process through outpatient PPS Pricer. The types of bills (TOB) required to process through are: 12X, 13X, 14X (except Maryland providers, Indian health providers, hospitals located in American Samoa, Guam, and Saipan, and critical access hospitals (CAH)); 76X; 75X and 34X if certain HCPCS are on the bill; and any outpatient type of bill with a condition code 07 and certain HCPCS. These claim types could have lines that are not required to price under OPPS rules so those lines would not have data in this field. Additional exception: Virgin Island hospitals and hospitals that furnish only inpatient Part B services with dates of service 1/1/02 and forward. Note 2: It has been discovered that this field may be populated with data on claims with dates of service prior to 7/00 (implementation of claim line expansion OPPS/HHPPS). The original understanding of the new revenue center fields was that data would be populated on claims with dates of service 7/00 and forward. Data has been found in claims with dates of service prior to 7/00 because the standard systems have processed any claim coming in 7/00 and after, meeting the above criteria, through the Outpatient Code Editor (OCE) regardless of the dates of service. [NCH]",ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-REV-PACKG-IND-CD').value.code,2,V2_MDCR_CLM_LINE_INSTNL,CLM_REV_PACKG_IND_CD,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-REV-PACKG-IND-CD,,REV_CNTR_PACKG_IND_CD,CMS
|
||||
181,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Revenue Center Payment Method Indicator Code,"Effective with NCH version I, the code used to identify how the service is priced for payment. This field is made up of two pieces of data, the 1st position being the service indicator and the 2nd position being the payment indicator. Note 1: This field is populated for those claims that are required to process through outpatient PPS Pricer. The types of bills (TOB) required to process through are: 12X, 13X, 14X (except Maryland providers, Indian health providers, hospitals located in American Samoa, Guam, and Saipan, and critical access hospitals (CAH)); 76X; 75X and 34X if certain HCPCS are on the bill; and any outpatient type of bill with a condition code 07 and certain HCPCS. These claim types could have lines that are not required to price under OPPS rules so those lines would not have data in this field. Additional exception: Virgin Island hospitals and hospitals that furnish only inpatient Part B services with dates of service 1/1/02 and forward. Note 2: It has been discovered that this field may be populated with data on claims with dates of service prior to 7/00 (implementation of claim line expansion OPPS/HHPPS). The original understanding of the new revenue center fields was that data would be populated on claims with dates of service 7/00 and forward. Data has been found in claims with dates of service prior to 7/00 because the standard systems have processed any claim coming in 7/00 and after, meeting the above criteria, through the Outpatient Code Editor (OCE) regardless of the dates of service. Note 3: Effective 10/2005, this field will no longer represent the service indicator and the payment indicator. This field will now house the 2-byte payment indicator. The status indicator will be housed in a new field named: REV_CNTR_STUS_IND_CD. [NCH]",ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-REV-PMT-MTHD-CD').value.code,3,V2_MDCR_CLM_LINE_INSTNL,CLM_REV_PMT_MTHD_CD,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-REV-PMT-MTHD-CD,,REV_CNTR_PMT_MTHD_IND_CD,CMS
|
||||
182,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Revenue Center Status Indicator Code,"Effective 10/3/2005 with the implementation of NCH/NMUD CR#2, the code used to identify the status of the line item service. This field along with the payment method indicator field is used to identify how the service was priced for payment. Note 1: This 2-byte indicator is being added due to an expansion of a field that currently exists on the revenue center trailer. The status indicator is currently the 1st position of the revenue center payment method indicator code. The payment method indicator code is being split into two 2-byte fields (payment indicator and status indicator). The expanded payment indicator will continue to be stored in the existing payment method indicator field. The split of the current payment method indicator field is due to the expansion of both pieces of data from 1-byte to 2-bytes. Note 2: This field is populated for those claims that are required to process through outpatient PPS Pricer. The types of bills (TOB) required to process through are: 12X, 13X, 14X (except Maryland providers, Indian health providers, hospitals located in American Samoa, Guam, and Saipan, and critical access hospitals (CAH)); 76X; 75X and 34X if certain HCPCS are on the bill; and any outpatient type of bill with a condition code 07 and certain HCPCS. These claim types could have lines that are not required to price under OPPS rules so those lines would not have data in this field. Additional exception: Virgin Island hospitals and hospitals that furnish only inpatient Part B services. [NCH]",ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-REV-CNTR-STUS-CD').value.code,J,V2_MDCR_CLM_LINE_INSTNL,CLM_REV_CNTR_STUS_CD,NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-REV-CNTR-STUS-CD,,REV_CNTR_STUS_IND_CD,CMS
|
||||
183,ExplanationOfBenefit,Hospice,Hospice Period Count,The count of the number of hospice period trailers present for the beneficiary's record. Prior to BBA a beneficiary was entitled to a maximum of 4 hospice benefit periods that may be elected in lieu of standard Part A hospital benefits. The BBA changed the hospice benefit to the following: 2 initial 90-day periods followed by an unlimited number of 60-day periods (effective 8/5/97). [NCH] Edit rules: Range 1 through 3: 1 = 1st 90-day period; 2 = 2nd 90-day period; 3 = 60-day period (3 or greater periods).,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_HOSPC_PRD_CNT').exists()).value,1,V2_MDCR_CLM_INSTNL,CLM_MDCR_HOSPC_PRD_CNT,NCH,,,BENE_HOSPC_PRD_CNT,CMS
|
||||
184,ExplanationOfBenefit,HHA,Claim LUPA Indicator Code,"Effective with NCH version I, the code used to identify those home health PPS claims that have 4 visits or fewer in a 60-day episode. If an HHA provides 4 visits or fewer, they will be reimbursed based on a national standardized per visit rate instead of HHRGs. Note: Beginning 10/1/00, this field will be populated with data. Claims processed prior to 10/1/00 will contain spaces. [NCH]",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_HHA_LUP_IND_CD').exists()).code.coding.code,L,V2_MDCR_CLM_INSTNL,CLM_HHA_LUP_IND_CD,NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-HHA-LUP-IND-CD,,CLM_HHA_LUPA_IND_CD,CMS
|
||||
185,ExplanationOfBenefit,HHA,Claim Referral Code,"Effective with NCH version I, the code used to identify the means by which the beneficiary was referred for home health services. Note: Beginning 10/1/00, this field will be populated with data. Claims processed prior to 10/1/00 will contain spaces in this field. [NCH]",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_HHA_RFRL_CD').exists()).code.coding.code,C,V2_MDCR_CLM_INSTNL,CLM_HHA_RFRL_CD,NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-HHA-RFRL-CD,,CLM_HHA_RFRL_CD,CMS
|
||||
186,ExplanationOfBenefit,HHA,Claim Total Visit Count,"Effective with NCH version H, the count of the number of HHA visits as derived by CWF. Note 1: During the NCH version H conversion this field was populated with data throughout history (back to service year 1991) using the CWF derivation rule (units associated with revenue center codes 042X, 043X, 044X, 055X, 056X, 057X, 058X, and 059X). Value 999 will be displayed if the sum of the revenue center unit count equals or exceeds 999. Note 2: Effective 7/1/99, all HHA claims received with service from dates 7/1/99 and after will be processed as if the units field contains the 15-minute interval count; and each visit revenue code line item will be counted as one visit. This field is calculated correctly; but users who derive the count themselves will need to revise their routine. The count is no longer derived by adding up the units fields associated with the HHA visit revenue codes. [NCH]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication' and code='CLM_MDCR_HHA_TOT_VISIT_CNT').exists()).value,2,V2_MDCR_CLM_INSTNL,CLM_MDCR_HHA_TOT_VISIT_CNT,FISS;NCH,,,CLM_HHA_TOT_VISIT_CNT,CMS
|
||||
187,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Claim Status Code,The current status information for the pending and paid claims currently in the system.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_AUDT_TRL_STUS_CD').exists()).code.coding.code,,V2_MDCR_CLM_LCTN_HSTRY,CLM_AUDT_TRL_STUS_CD,FISS;MCS;VMS,,,,CMS
|
||||
188,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Claim Paid Status Code,A code identifying the status of a claim. Reference table: CLM_PD_STUS_CD,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_PD_STUS_CD').exists()).code.coding.code,,V2_MDCR_CLM,CLM_PD_STUS_CD,FISS;MCS;VMS,,,,Basis;Regular;CMS
|
||||
189,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Outpatient,Referring Provider NPI Number,A number identifying the National Provider Identifier (NPI) of a referring provider as sourced from the NPI crosswalk reference information provided by the National Plan and Provider Enumeration System (NPPES).,ExplanationOfBenefit.careTeam.where(role.coding.where(code = 'referring').exists()).provider.identifier.value,,V2_MDCR_CLM,PRVDR_RFRG_PRVDR_NPI_NUM,FISS;MCS;NCH;VMS,,CCLF5.CLM_RFRG_PRVDR_NPI_NUM;CCLF6.ORDRG_PRVDR_NPI_NUM;CCLF6.CLM_RFRG_PRVDR_NPI_NUM,RFR_PHYSN_NPI,Basis;Regular;CMS
|
||||
190,ExplanationOfBenefit,Carrier;DME,Allowed Charge Amount,An amount identifying the sum of all the line item allowed charges on a claim.,ExplanationOfBenefit.total.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication').exists() and category.coding.where(code='CLM_ALOWD_CHRG_AMT').exists() ).amount.value,10.22,V2_MDCR_CLM,CLM_ALOWD_CHRG_AMT,MCS;NCH;VMS,,,NCH_CARR_CLM_ALOWD_AMT,Regular;CMS
|
||||
191,ExplanationOfBenefit,Carrier;DME,Beneficiary Payment Amount,An amount paid by a beneficiary for services rendered on a claim.,ExplanationOfBenefit.total.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication').exists() and category.coding.where(code='CLM_BENE_PMT_AMT').exists() ).amount.value,19.94,V2_MDCR_CLM,CLM_BENE_PMT_AMT,MCS;NCH;VMS,,,,Regular;CMS
|
||||
192,ExplanationOfBenefit,Carrier;DME,Paid to Beneficiary Amount,An amount paid to a beneficiary for a submitted claim.,ExplanationOfBenefit.total.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication').exists() and category.coding.where(code='CLM_BENE_PD_AMT').exists() ).amount.value,1.5,V2_MDCR_CLM,CLM_BENE_PD_AMT,MCS;NCH;VMS,,,,Regular;CMS
|
||||
193,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Near Line Record Identification Code,"A code identifying the claim record type being processed. Valid values: W = Part B, V = Part A, U = Both",ExplanationOfBenefit.supportingInfo.where(code.coding.system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-NRLN-RIC-CD').code.coding.code,O,V2_MDCR_CLM,CLM_RIC_CD,FISS;MCS;VMS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-RIC-CD,,,CMS;Basis;Regular
|
||||
194,ExplanationOfBenefit,Inpatient;SNF,Claim Diagnosis Related Group Outlier Stay Code,"On an institutional claim, the code that indicates the beneficiary stay under the prospective payment system which, although classified into a specific diagnosis related group, has an unusually long length (day outlier) or exceptionally high cost (cost outlier). [NCH]",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='DGNS_DRG_OUTLIER_CD').exists()).code.coding.code,6,V2_MDCR_CLM_INSTNL,DGNS_DRG_OUTLIER_CD,NCH,https://bluebutton.cms.gov/fhir/CodeSystem/DGNS-DRG-OUTLIER-CD,,,CMS
|
||||
195,ExplanationOfBenefit,Carrier,Anesthesia Unit Count,A quantity identifying the number of services billed for an anesthesia service on a claim line of service.,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-LINE-ANSTHSA-UNIT-CNT').value,11,V2_MDCR_CLM_LINE,CLM_LINE_ANSTHSA_UNIT_CNT,NCH,,,CARR_LINE_ANSTHSA_UNIT_CNT,CMS;Basis;Regular
|
||||
196,ExplanationOfBenefit,Carrier;DME,Provider Tax Number,Line provider tax number.,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-PRVDR-TAX-NUM').value,"{'type': {'coding': [{'system': 'http://terminology.hl7.org/CodeSystem/v2-0203', 'code': 'TAX', 'display': 'Tax ID number'}]}, 'system': 'urn:oid:2.16.840.1.113883.4.4', 'value': '15'}",V2_MDCR_CLM_LINE,CLM_RNDRG_PRVDR_TAX_NUM,NCH;VMS,,CCLF5.CLM_RNDRG_PRVDR_TAX_NUM,TAX_NUM,CMS
|
||||
197,ExplanationOfBenefit,Carrier,RX Number,The pharmacy's internal invoice number on pharmaceutical claims.,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-LINE-RX-NUM').value,no rx num here!,V2_MDCR_CLM_LINE,CLM_LINE_RX_NUM,MCS;NCH,,,CARR_LINE_RX_NUM,CMS
|
||||
198,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Line Item From Date,A date indicating the first day of service for a line item.,ExplanationOfBenefit.item.serviced.start,2025-01-01,V2_MDCR_CLM_LINE,CLM_LINE_FROM_DT,FISS;MCS;NCH;VMS,,CCLF2.CLM_LINE_FROM_DT;CCLF5.CLM_LINE_FROM_DT;CCLF6.CLM_LINE_FROM_DT,LINE_1ST_EXPNS_DT,Basis;Regular;CMS
|
||||
199,ExplanationOfBenefit,Carrier;DME,Coinsurance Amount,"Effective with NCH version H, the beneficiary coinsurance liability amount for this line item service on the noninstitutional claim. Note: Beginning with NCH weekly process date 10/3/97 this field was populated with data. Claims processed prior to 10/3/97 will contain zeroes in this field. [NCH]",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_MDCR_COINSRNC_AMT')).amount.value,11111.1,V2_MDCR_CLM_LINE,CLM_LINE_MDCR_COINSRNC_AMT,MCS;NCH;VMS,,,LINE_COINSRNC_AMT,Regular;CMS
|
||||
200,ExplanationOfBenefit,Carrier;DME,Line Item Diagnosis Code,"A code identifying an International Classification of Disease Clinical Modification, ninth or tenth revision (ICD-9/10-CM) diagnosis. Reference table: DGNS_CD",ExplanationOfBenefit.item.select(%root.diagnosis[diagnosisSequence-1].diagnosis.coding.code),M48.062,V2_MDCR_CLM_LINE,CLM_LINE_DGNS_CD,MCS;NCH;VMS,,CCLF5.CLM_LINE_DGNS_CD,LINE_ICD_DGNS_CD,Basis;Regular;CMS
|
||||
201,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Last Expense Date,The ending date of service for the claim line.,ExplanationOfBenefit.item.serviced.end,2025-01-02,V2_MDCR_CLM_LINE,CLM_LINE_THRU_DT,FISS;MCS;NCH;VMS,,CCLF2.CLM_LINE_THRU_DT;CCLF5.CLM_LINE_THRU_DT;CCLF6.CLM_LINE_THRU_DT,LINE_LAST_EXPNS_DT,Basis;Regular;CMS
|
||||
202,ExplanationOfBenefit,Carrier;DME,Place Of Service Code,Indication of where the service was performed.,ExplanationOfBenefit.item.location.coding.where(system='https://www.cms.gov/Medicare/Coding/place-of-service-codes/Place_of_Service_Code_Set').code,07,V2_MDCR_CLM_LINE,CLM_POS_CD,MCS;NCH;VMS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-POS-CD,CCLF5.CLM_POS_CD;CCLF6.CLM_POS_CD,LINE_PLACE_OF_SRVC_CD,CMS
|
||||
203,ExplanationOfBenefit,Carrier;DME,Provider Participating Indicator Code,Indication that a provider is participating or accepting assignment for this claim. [HRMZ] Code indicating whether or not a provider is participating or accepting assignment for this line item service on the noninstitutional claim. [NCH],ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-RNDRG-PRVDR-PRTCPTG-CD').value.code,1,V2_MDCR_CLM_LINE,CLM_RNDRG_PRVDR_PRTCPTG_CD,NCH;VMS,https://bluebutton.cms.gov/fhir/CodeSystem/PRTCPTNG-IND-CD,,PRTCPTNG_IND_CD,CMS;Basis;Regular
|
||||
204,ExplanationOfBenefit,Carrier,Claim Rendering Provider Type Code,The type of provider furnishing the service for this line item on the carrier claim (non-DMERC).,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-PRVDR-TYPE-CD').value.code,5,V2_MDCR_CLM_LINE,CLM_RNDRG_PRVDR_TYPE_CD,MCS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-PRVDR-TYPE-CD,,CARR_LINE_PRVDR_TYPE_CD,CMS;Basis;Regular
|
||||
205,ExplanationOfBenefit,Carrier;DME,Claim Payment Denial Code,Reasons for denying payment to carriers.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_CARR_PMT_DNL_CD').exists()).code.coding.code,8,V2_MDCR_CLM_PRFNL,CLM_CARR_PMT_DNL_CD,NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-CARR-PMT-DNL-CD,CCLF5.CLM_CARR_PMT_DNL_CD;CCLF6.CLM_CARR_PMT_DNL_CD,CARR_CLM_PMT_DNL_CD,CMS
|
||||
206,ExplanationOfBenefit,Carrier;DME,Carrier Primary Payer Paid Amount,Carrier Primary Payer Paid Amount,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication').exists() and category.coding.where(code='CLM_MDCR_PRFNL_PRMRY_PYR_AMT').exists()).amount.value,8201.1,V2_MDCR_CLM_PRFNL,CLM_MDCR_PRFNL_PRMRY_PYR_AMT,MCS;NCH;VMS,,,CARR_CLM_PRMRY_PYR_PD_AMT,CMS
|
||||
207,ExplanationOfBenefit,Carrier;DME,Provider Assignement Indicator,A switch indicating whether or not the provider accepts assignement for the noninstitutional claim. [NCH],ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_MDCR_PRFNL_PRVDR_ASGNMT_SW').exists()).code.coding.code,L,V2_MDCR_CLM_PRFNL,CLM_MDCR_PRFNL_PRVDR_ASGNMT_SW,MCS;NCH;VMS,,,CARR_CLM_PRVDR_ASGNMT_IND_SW,CMS
|
||||
208,ExplanationOfBenefit,Carrier;DME,Clinical Trial Number,"Effective September 1, 2008 with the implementation of CR#3, the number used to identify all items and services provided to a beneficiary during their participation in a clinical trial. (From NCH Claim Clinical Trial Number)",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_CLNCL_TRIL_NUM').exists()).code.coding.code,,V2_MDCR_CLM_PRFNL,CLM_CLNCL_TRIL_NUM,MCS;NCH;VMS,,,CLM_CLNCL_TRIL_NUM,CMS
|
||||
209,ExplanationOfBenefit,Carrier;DME,Hematocrit/Hemoglobin Result Number,The hematocrit or hemoglobin result value for the claim line.,ExplanationOfBenefit.contained.where(id = %root.supportingInfo.valueReference.reference.substring(1)).value,1.11,V2_MDCR_CLM_LINE_PRFNL,CLM_LINE_HCT_HGB_RSLT_NUM,NCH;VMS,,,LINE_HCT_HGB_RSLT_NUM,CMS
|
||||
210,ExplanationOfBenefit,Carrier;DME,Hematocrit/Hemoglobin Type Code,Code indicating if the result is for hematocrit or hemoglobin.,ExplanationOfBenefit.contained.where(id = %root.supportingInfo.valueReference.reference.substring(1)).code.coding,"{'system': 'http://loinc.org', 'code': '718-7'}",V2_MDCR_CLM_LINE_PRFNL,CLM_LINE_HCT_HGB_TYPE_CD,NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-LINE-HCT-HGB-TYPE-CD,,LINE_HCT_HGB_TYPE_CD,CMS
|
||||
211,ExplanationOfBenefit,Carrier,Carrier Clinical Lab Number,The clinical laboratory identifier for the carrier claim line.,ExplanationOfBenefit.contained.where(id = %root.supportingInfo.valueReference.reference.substring(1)).performer.identifier.value,11D1343434,V2_MDCR_CLM_LINE_PRFNL,CLM_LINE_CARR_CLNCL_LAB_NUM,NCH,,,CARR_LINE_CLIA_LAB_NUM,CMS;Basis;Regular
|
||||
212,ExplanationOfBenefit,Carrier;DME,Line Primary Payer Paid Amount,Line beneficiary primary payer paid amount.,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_BENE_PRMRY_PYR_PD_AMT')).amount.value,123479.22,V2_MDCR_CLM_LINE_PRFNL,CLM_BENE_PRMRY_PYR_PD_AMT,NCH,,,LINE_BENE_PRMRY_PYR_PD_AMT,Regular;CMS
|
||||
213,ExplanationOfBenefit,Carrier;DME,Carrier MTUS Indicator Code,(1) Code indicating the units associated with services needing unit reporting on the line item for the carrier claim (non-DMERC). [NCH] (2) Prior to version H this field was named: CWFB_DME_MTUS_IND_CD. [NCH],ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-MTUS-IND-CD').value.code,3,V2_MDCR_CLM_LINE_PRFNL,CLM_MTUS_IND_CD,NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-MTUS-IND-CD,,CARR_LINE_MTUS_CD;DMERC_LINE_MTUS_CD,CMS
|
||||
214,ExplanationOfBenefit,Carrier;DME,Carrier MTUS Count,"(1) The count of the total units associated with services needing unit reporting such as transportation, miles, anesthesia time units, number of services, volume of oxygen, or blood units. This is a line item field on the carrier claim (non-DMERC) and is used for both allowed and denied services. Note: For anesthesia (MTUS indicator = 2) this field should be reported in time unit intervals, i.e., 15-minute intervals or fraction thereof. It appears that some carriers are reporting minutes instead of time units. [NCH] (2) Effective with NCH version G, the count of the total units associated with the DMERC line item service needing unit reporting, including number of services, volume of oxygen, and drug dose. [NCH]",ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-LINE-PRFNL-MTUS-CNT').value,3.1,V2_MDCR_CLM_LINE_PRFNL,CLM_LINE_PRFNL_MTUS_CNT,NCH,,,CARR_LINE_MTUS_CNT;DMERC_LINE_MTUS_CNT,CMS
|
||||
215,ExplanationOfBenefit,Carrier;DME,Line Pricing Locality Code,Code denoting the carrier-specific locality used for pricing the service for this line item on the carrier claim (non-DMERC). [NCH],ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-PRCNG-LCLTY-CD').value.code,42,V2_MDCR_CLM_LINE_PRFNL,CLM_PRCNG_LCLTY_CD,NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-PRCNG-LCLTY-CD,,CARR_LINE_PRCNG_LCLTY_CD;DMERC_LINE_PRCNG_STATE_CD,CMS;Basis;Regular
|
||||
216,ExplanationOfBenefit,Carrier,Reduced Payment Physician Assistant Code,"Effective 1/92, identification of claims that have been paid a reduced fee schedule amount (65%, 75%, or 85%) because a physician's assistant performed the services.",ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-PHYSN-ASTNT-CD').value.code,1,V2_MDCR_CLM_LINE_PRFNL,CLM_PHYSN_ASTNT_CD,NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-PHYSN-ASTNT-CD,,CARR_LINE_RDCD_PMT_PHYS_ASTN_C,CMS
|
||||
217,ExplanationOfBenefit,Carrier,HPSA Scarcity Code,A code used to track the Health Professional Shortage Area (HPSA) and Physician Scarcity Area (PSA) related bonus payments on Part B professional claims. Reference table: CLM_CARR_HPSA_SCRCTY_CD,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-LINE-CARR-HPSA-SCRCTY-CD').value.code,1,V2_MDCR_CLM_LINE_PRFNL,CLM_LINE_CARR_HPSA_SCRCTY_CD,MCS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-LINE-CARR-HPSA-SCRCTY-CD,CCLFB.CLM_LINE_CARR_HPSA_SCRCTY_CD,HPSA_SCRCTY_IND_CD,CMS
|
||||
218,ExplanationOfBenefit,Carrier;DME,Line Primary Payer Code,A code identifying the coverage type of the primary payer when Medicare is the secondary payer at the claim line as defined by the Common Working File (CWF). Reference table: CLM_PRMRY_PYR_CD,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-PRMRY-PYR-CD').value.code,H,V2_MDCR_CLM_LINE_PRFNL,CLM_PRMRY_PYR_CD,NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-PRMRY-PYR-CD,CCLF5.CLM_LINE_PRMRY_PYR_CD;CCLF6.CLM_PRMRY_PYR_CD,LINE_BENE_PRMRY_PYR_CD,CMS
|
||||
219,ExplanationOfBenefit,Carrier;DME,CMS Service Type Code,"Type of service as defined in the HCFA Medicare Carrier Manual, for this line item on the non-institutional claim. (NCH)",ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-FED-TYPE-SRVC-CD').value.code,D,V2_MDCR_CLM_LINE_PRFNL,CLM_FED_TYPE_SRVC_CD,NCH;VMS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-FED-TYPE-SRVC-CD,CCLF5.CLM_FED_TYPE_SRVC_CD;CCLF6.CLM_FED_TYPE_SRVC_CD,LINE_CMS_TYPE_SRVC_CD,CMS
|
||||
220,ExplanationOfBenefit,Carrier;DME,Payment Code,"The code indicating that the amount shown in the payment field on the non-institutional line item represents either 80% or 100% of the allowed charges less any deductible, or 100% limitation of liability only.",ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-PMT-80-100-CD').value.code,3,V2_MDCR_CLM_LINE_PRFNL,CLM_PMT_80_100_CD,MCS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-PMT-80-100-CD,,LINE_PMT_80_100_CD,CMS
|
||||
221,ExplanationOfBenefit,Carrier;DME,Processing Indicator Code,"The code indicating the reason a line item on the noninstitutional claim was allowed or denied. Note 2: Effective 4/1/02, this field was expanded to two bytes to accommodate new values. The NCH nearline file did not expand the current 1-byte field but instituted a crosswalk of the 2-byte field to the 1-byte character value. See table of codes for the crosswalk. [NCH]",ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-PRCSG-IND-CD').value.code,J,V2_MDCR_CLM_LINE_PRFNL,CLM_PRCSG_IND_CD,NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-PRCSG-IND-CD,CCLF5.CLM_PRCSG_IND_CD;CCLF6.CLM_PRCSG_IND_CD,LINE_PRCSG_IND_CD,CMS
|
||||
222,ExplanationOfBenefit,Carrier;DME,Service Deductible Code,A value identifying whether a service line is subject to the deductible. Reference table: CLM_SRVC_DDCTBL_SW,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-SRVC-DDCTBL-SW').value.code,0,V2_MDCR_CLM_LINE_PRFNL,CLM_SRVC_DDCTBL_SW,MCS;NCH;VMS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-SRVC-DDCTBL-SW,,LINE_SERVICE_DEDUCTIBLE,Basis;Regular;CMS
|
||||
223,ExplanationOfBenefit,Carrier,Provider Speciality Code,A code identifying the Centers for Medicare and Medicaid Services (CMS) specialty of a provider or supplier. For example: 11 = Internal medicine. 49 = Ambulatory surgical center. Reference table: CLM_PRVDR_SPCLTY_CD,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-PRVDR-SPCLTY-CD').value.code,11,V2_MDCR_CLM_LINE_PRFNL,CLM_PRVDR_SPCLTY_CD,MCS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-PRVDR-SPCLTY-CD,CCLF5.CLM_PRVDR_SPCLTY_CD,PRVDR_SPCLTY,CMS
|
||||
224,ExplanationOfBenefit,DME,Screen Savings Amount,Prior to NCH version H this field was named: CWFB_DME_SCRN_SVGS_AMT and the field size was S9(5)V99. [NCH],ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_DMERC_SCRN_SVGS_AMT')).amount.value,15.11,V2_MDCR_CLM_LINE_PRFNL,CLM_LINE_DMERC_SCRN_SVGS_AMT,NCH;VMS,,,DMERC_LINE_SCRN_SVGS_AMT,CMS
|
||||
225,ExplanationOfBenefit,DME,Supplier Type Code,The type of supplier.,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-PRVDR-TYPE-CD').value.code,0,V2_MDCR_CLM_LINE_PRFNL,CLM_SUPLR_TYPE_CD,NCH;VMS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-PRVDR-TYPE-CD,,DMERC_LINE_SUPPLR_TYPE_CD,Basis;Regular;CMS
|
||||
226,ExplanationOfBenefit,Carrier;DME,Purchase Price Amount,"Effective 5/92, the amount representing the lower of fee schedule for purchase of new or used DME, or actual charge. In case of rental DME, this amount represents the purchase cap; rental payments can only be made until the cap is met. This line item field is applicable to non-institutional claims involving DME, prosthetic, orthotic and supply items, immunosuppressive drugs, PEN, ESRD, and oxygen items referred to as DMEPOS. [NCH]",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_PRFNL_DME_PRICE_AMT')).amount.value,11.5,V2_MDCR_CLM_LINE_PRFNL,CLM_LINE_PRFNL_DME_PRICE_AMT,NCH;VMS,,,LINE_DME_PRCHS_PRICE_AMT,
|
||||
227,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Claim Adjustment Type Code,A code identifying the type of adjustment record represented on a claim or encounter. Reference table: CLM_ADJSTMT_TYPE_CD,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_ADJSTMT_TYPE_CD').exists()).code.coding.code,0,V2_MDCR_CLM,CLM_ADJSTMT_TYPE_CD,FISS;MCS;NCH;VMS,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-ADJSTMT-TYPE-CD,CCLF1.CLM_ADJSMT_TYPE_CD;CCLF5.CLM_ADJSMT_TYPE_CD;CCLF6.CLM_ADJSMT_TYPE_CD,,Basis;Regular;CMS
|
||||
228,ExplanationOfBenefit,Carrier;DME,Beneficiary Interest Paid Amount,An amount identifying the interest paid to a beneficiary due to a delay in the payment of a claim.,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_BENE_INTRST_PD_AMT')).amount.value,,V2_MDCR_CLM,CLM_BENE_INTRST_PD_AMT,MCS;VMS,,,,CMS
|
||||
229,ExplanationOfBenefit,Carrier;HHA;Hospice;Inpatient;Outpatient;SNF,Beneficiary Coinsurance Amount,An amount identifying the portion of cost that is the responsibility of a beneficiary for payment.,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_BENE_PMT_COINSRNC_AMT')).amount.value,,V2_MDCR_CLM,CLM_BENE_PMT_COINSRNC_AMT,MCS,,,,Regular;CMS
|
||||
230,ExplanationOfBenefit,Inpatient;SNF,Blood Charge Amount,An amount identifying the total charge for blood usage.,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_BLOOD_CHRG_AMT')).amount.value,10.01,V2_MDCR_CLM,CLM_BLOOD_CHRG_AMT,NCH,,,,CMS
|
||||
231,ExplanationOfBenefit,Inpatient;SNF,Blood Noncovered Charge Amount,An amount identifying the total non-covered charge for blood usage.,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_BLOOD_NCVRD_CHRG_AMT')).amount.value,10.02,V2_MDCR_CLM,CLM_BLOOD_NCVRD_CHRG_AMT,NCH,,,,CMS
|
||||
232,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Coordination of Benefits Patient Responsibility Amount,An amount identifying a beneficiary's patient responsibility on a Coordination of Benefits (COB) claim.,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_COB_PTNT_RESP_AMT')).amount.value,95.01,V2_MDCR_CLM,CLM_COB_PTNT_RESP_AMT,FISS,,,,CMS
|
||||
233,ExplanationOfBenefit,DME,Other Third Party Payer Paid Amount,An amount identifying how much was paid by a third party payer.,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_OTHR_TP_PD_AMT')).amount.value,,V2_MDCR_CLM,CLM_OTHR_TP_PD_AMT,VMS,,,,Regular;CMS
|
||||
234,ExplanationOfBenefit,Carrier;DME;HHA;Hospice;Inpatient;Outpatient;SNF,Provider Interest Paid Amount,An amount identifying the interest paid to a provider due to the late processing of a claim.,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_PRVDR_INTRST_PD_AMT')).amount.value,,V2_MDCR_CLM,CLM_PRVDR_INTRST_PD_AMT,FISS;MCS;VMS,,,,CMS
|
||||
235,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Provider Obligation To Accept as Full Amount,An amount identifying a provider's obligation to accept in full (OTAF) from Medicare as payment. A beneficiary cannot be charged for any amount exceeding the OTAF total.,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_PRVDR_OTAF_AMT')).amount.value,,V2_MDCR_CLM,CLM_PRVDR_OTAF_AMT,FISS;MCS;VMS,,,,CMS
|
||||
236,ExplanationOfBenefit,DME;HHA;Outpatient,Remaining Amount to Provider,"An amount identifying how much payment is still owed to a provider minus prior payments, offsets, or adjustments on a claim.",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_PRVDR_RMNG_DUE_AMT')).amount.value,11.18,V2_MDCR_CLM,CLM_PRVDR_RMNG_DUE_AMT,FISS;VMS,,,,CMS
|
||||
237,ExplanationOfBenefit,Inpatient;Outpatient;SNF,Total Contractual Amount Discrepancy,An amount identifying the portion of a charge that exceeds the maximum allowable amount or a contracted fee arrangement for a service.,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_TOT_CNTRCTL_AMT')).amount.value,10.08,V2_MDCR_CLM,CLM_TOT_CNTRCTL_AMT,FISS,,,,CMS
|
||||
238,ExplanationOfBenefit,HHA;Inpatient,Final Standardized Payment Amount,"A monetary amount signifying the final standard payment amount for hospitals paid under the Inpatient Prospective Payment Systems (IPPS), Maryland hospitals, and home health agencies.",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_FINL_STDZD_PYMT_AMT')).amount.value,98.44,V2_MDCR_CLM_INSTNL,CLM_FINL_STDZD_PYMT_AMT,FISS;NCH,,,,CMS
|
||||
239,ExplanationOfBenefit,Inpatient,Hospital Acquired Condition Reduction Amount,"Section 3008 of the Patient Protection and Affordable Care Act (ACA) established the Hospital-Acquired Condition (HAC) Reduction Program. Effective beginning fiscal year (FY) 2015 (discharges beginning on October 1, 2014), the HAC Reduction Program requires the Secretary of the Department of Health and Human Services to adjust payments to applicable hospitals that rank in the worst-performing quartile of all subsection (D) hospitals with respect to risk-adjusted HAC quality measures. These hospitals will have their payments reduced to 99 percent of what would otherwise have been paid for such discharges.",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_HAC_RDCTN_PYMT_AMT')).amount.value,10.01,V2_MDCR_CLM_INSTNL,CLM_HAC_RDCTN_PYMT_AMT,FISS;NCH,,,,CMS
|
||||
240,ExplanationOfBenefit,Inpatient,Blended Payment Amount,"For hospitals participating in BPCI Model 1, this field represents the amount the claim was reduced by.",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_HIPPS_MODEL_BNDLD_PYMT_AMT')).amount.value,,V2_MDCR_CLM_INSTNL,CLM_HIPPS_MODEL_BNDLD_PMT_AMT,FISS;NCH,,,,CMS
|
||||
241,ExplanationOfBenefit,Inpatient;SNF,Readmission Reduction Amount,This field represents the Hospital Readmission Reduction Program amount. This is a reduction to the claim for readmissions.,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_HIPPS_READMSN_RDCTN_AMT')).amount.value,10.03,V2_MDCR_CLM_INSTNL,CLM_HIPPS_READMSN_RDCTN_AMT,FISS;NCH,,,,CMS
|
||||
242,ExplanationOfBenefit,Inpatient;SNF,HIPPS Value Based Purchasing Amount,"This field represents the Hospital Value Based Purchasing amount. This could be an additional payment on the claim or a reduction, depending on the hospital's score.",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_HIPPS_VBP_AMT')).amount.value,10.04,V2_MDCR_CLM_INSTNL,CLM_HIPPS_VBP_AMT,FISS;NCH,,,,CMS
|
||||
243,ExplanationOfBenefit,Inpatient;SNF,Low Volume Payment Amount,A payment adjustment given to hospitals to account for the higher costs per discharge for low-income hospitals under the Inpatient Prospective Payment System (IPPS).,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_INSTNL_LOW_VOL_PMT_AMT')).amount.value,10.05,V2_MDCR_CLM_INSTNL,CLM_INSTNL_LOW_VOL_PMT_AMT,NCH,,,,CMS
|
||||
244,ExplanationOfBenefit,Inpatient;SNF,First Year Rate Amount,"Effective with NCH version H, the charge for each day of coinsurance during the first year in the bill (used for internal CWFMQA editing purposes). Note: Beginning with NCH weekly process date 10/3/97 this field was populated with data. Claims processed prior to 10/3/97 should contain zeroes in this field. Exception: During the NCH version H conversion invalid data may have been populated for prior periods. Disregard any data present in this field on claims with NCH weekly process date earlier than 10/3/97. [NCH]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_MDCR_IP_1ST_YR_RATE_AMT')).amount.value,10.06,V2_MDCR_CLM_INSTNL,CLM_MDCR_IP_1ST_YR_RATE_AMT,NCH,,,,CMS
|
||||
245,ExplanationOfBenefit,Inpatient;SNF,Second Year Rate Amount,"Effective with NCH version H, the charge for each day of coinsurance during the second year in a bill which spans two years (used for internal CWFMQA editing purposes). Note: Beginning with NCH weekly process date 10/3/97 this field was populated with data. Claims processed prior to 10/3/97 should contain zeroes in this field. Exception: During the NCH version H conversion invalid data may have been populated for prior periods. Disregard any data in this field on claims with NCH weekly process date earlier than 10/3/97. [NCH]",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_MDCR_IP_SCND_YR_RATE_AMT')).amount.value,10.07,V2_MDCR_CLM_INSTNL,CLM_MDCR_IP_SCND_YR_RATE_AMT,NCH,,,,CMS
|
||||
246,ExplanationOfBenefit,Inpatient;SNF,Maryland Waiver Standardized Amount,The standardized amount produced by Pricer for an Inpatient Prospective Payment System (IPPS) and Maryland waiver hospital claim.,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_PPS_MD_WVR_STDZD_VAL_AMT')).amount.value,10.08,V2_MDCR_CLM_INSTNL,CLM_PPS_MD_WVR_STDZD_VAL_AMT,FISS;NCH,,,,CMS
|
||||
247,ExplanationOfBenefit,Inpatient,Site-Neutral Cost-Based Payment Amount,"Section 1206(a) of Public Law 113-67 amended Section 1886(m) of the Act to establish patient-level criteria for payments under the LTCH PPS (Long Term Care Hospital Prospective Payment System) for implementation beginning for cost reporting periods beginning on or after October 1, 2015. The site-neutral cost amount will be paid for patients discharged from the LTCH that do not meet criteria to be paid at the standard LTCH PPS amount.",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_SITE_NTRL_CST_BSD_PYMT_AMT')).amount.value,10.09,V2_MDCR_CLM_INSTNL,CLM_SITE_NTRL_CST_BSD_PYMT_AMT,FISS;NCH,,,,CMS
|
||||
248,ExplanationOfBenefit,Inpatient,Site-Neutral IPPS Payment Amount,"Section 1206(a) of Public Law 113-67 amended Section 1886(m) of the Act to establish patient-level criteria for payments under the LTCH PPS (Long Term Care Hospital Prospective Payment System) for implementation beginning for cost reporting periods beginning on or after October 1, 2015. The site-neutral Inpatient Prospective Payment System (IPPS) amount will be paid for patients discharged from the LTCH that do not meet criteria to be paid at the standard LTCH PPS amount.",ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_SITE_NTRL_IP_PPS_PYMT_AMT')).amount.value,10.1,V2_MDCR_CLM_INSTNL,CLM_SITE_NTRL_IP_PPS_PYMT_AMT,FISS;NCH,,,,CMS
|
||||
249,ExplanationOfBenefit,Inpatient,Short Stay Outlier Payment Amount,This is the short stay outlier (SSO) payment amount.,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_SS_OUTLIER_STD_PYMT_AMT')).amount.value,10.11,V2_MDCR_CLM_INSTNL,CLM_SS_OUTLIER_STD_PYMT_AMT,FISS;NCH,,,,CMS
|
||||
250,ExplanationOfBenefit,Carrier;DME,Provider Account Receivable Offset Amount,Provider Account Receivable Offset Amount,ExplanationOfBenefit.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_PRVDR_ACNT_RCVBL_OFST_AMT')).amount.value,19,V2_MDCR_CLM_PRFNL,CLM_PRVDR_ACNT_RCVBL_OFST_AMT,MCS;VMS,,,,CMS
|
||||
251,ExplanationOfBenefit,Carrier;DME;Outpatient;SNF,Provider Obligation To Accept as Full Amount,An amount identifying a provider's obligation to accept in full (OTAF) from Medicare as payment. A beneficiary cannot be charged for any amount exceeding the OTAF total.,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_OTAF_AMT')).amount.value,,V2_MDCR_CLM_LINE,CLM_LINE_OTAF_AMT,FISS;MCS;NCH;VMS,,,,CMS
|
||||
252,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Related Condition Code,A related condition that has within some set of claims.,ExplanationOfBenefit.supportingInfo.where(code.coding.system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-RLT-COND-CD').code.coding.code,,V2_MDCR_CLM,CLM_RLT_COND_SGNTR_SK,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-RLT-COND-CD,CCLFA.CLM_RLT_COND_CD,,CMS
|
||||
253,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Add On Payment Amount,The new patient or initial Medicare visit add-on payment amount of the Federally Qualified Health Center (FQHC) claim.,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_ADD_ON_PYMT_AMT')).amount.value,,V2_MDCR_CLM_LINE_INSTNL,CLM_LINE_ADD_ON_PYMT_AMT,FISS;NCH,,,,CMS
|
||||
254,ExplanationOfBenefit,Inpatient,Non-EHR Reduction Amount,This field identifies the payment reduction amount for hospitals that are not meaningful users of certified Electronic Health Record (EHR) technology.,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_NON_EHR_RDCTN_AMT')).amount.value,11.12,V2_MDCR_CLM_LINE_INSTNL,CLM_LINE_NON_EHR_RDCTN_AMT,FISS,,,,CMS
|
||||
255,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Transitional Drug Add-On Payment Adjustment,"A monetary amount signifying the Transitional Drug Add-On Payment Adjustment (TDAPA) for End Stage Renal Disease (ESRD) claims for injectable, intravenous, and oral calcimimetics when reported with an AX modifier.",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_REV_CNTR_TDAPA_AMT')).amount.value,,V2_MDCR_CLM_LINE_INSTNL,CLM_REV_CNTR_TDAPA_AMT,FISS;NCH,,,,CMS
|
||||
256,ExplanationOfBenefit,Carrier,Carrier Clinical Charge Amount,Fee schedule charge amount applied for the line item clinical laboratory service on the carrier claim (non-DMERC).,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_CARR_CLNCL_CHRG_AMT')).amount.value,11.11,V2_MDCR_CLM_LINE_PRFNL,CLM_LINE_CARR_CLNCL_CHRG_AMT,MCS;NCH,,,,CMS
|
||||
257,ExplanationOfBenefit,Carrier,Therapy Amount Applied to Limit,"For type of service psychiatric, occupational therapy, or physical therapy, the amount of allowed charges applied toward the limit cap for this line item service on the noninstitutional claim. [NCH]",ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_CARR_PSYCH_OT_LMT_AMT')).amount.value,11.12,V2_MDCR_CLM_LINE_PRFNL,CLM_LINE_CARR_PSYCH_OT_LMT_AMT,MCS;NCH,,,,CMS
|
||||
258,ExplanationOfBenefit,Carrier;DME,Professional Interest Amount,Amount of interest to be paid for this line item service on the non-institutional claim. Note: This is not included in the line item NCH payment (reimbursement) amount.,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_LINE_PRFNL_INTRST_AMT')).amount.value,11.13,V2_MDCR_CLM_LINE_PRFNL,CLM_LINE_PRFNL_INTRST_AMT,MCS;NCH;VMS,,,,CMS
|
||||
259,ExplanationOfBenefit,Carrier;DME,Line Primary Payer Allowed Amount,Line primary payer allowed charge amount.,ExplanationOfBenefit.item.adjudication.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Adjudication') and category.coding.where(code='CLM_MDCR_PRMRY_PYR_ALOWD_AMT')).amount.value,11.14,V2_MDCR_CLM_LINE_PRFNL,CLM_MDCR_PRMRY_PYR_ALOWD_AMT,MCS;NCH;VMS,,,,CMS
|
||||
260,ExplanationOfBenefit,Hospice;Inpatient,Patient Status Code,"Effective with NCH version H, the code on an inpatient/SNF and hospice claim, indicating whether the beneficiary was discharged, died, or is still a patient (used for internal CWFMQA editing purposes). Note: During the NCH version H conversion this field was populated throughout history (back to service year 1991). [NCH]",ExplanationOfBenefit.supportingInfo.where(code.coding.system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-MDCR-NCH-PTNT-STUS-IND-CD').code.coding.code,,V2_MDCR_CLM_INSTNL,CLM_MDCR_NCH_PTNT_STUS_IND_CD,FISS;NCH,https://bluebutton.cms.gov/fhir/CodeSystem/CLM-MDCR-NCH-PTNT-STUS-IND-CD,,,CMS
|
||||
261,ExplanationOfBenefit,Carrier;DME;HHA;Inpatient;Inpatient;Outpatient,Claim Line Prior Authorization Unique Tracking Number (Adjudicated),The unique tracking number for the prior authorization associated with this claim line from claims.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_LINE_PMD_UNIQ_TRKNG_NUM').exists()).value,ALA00000047747,V2_MDCR_CLM_LINE,CLM_LINE_PMD_UNIQ_TRKNG_NUM,NCH,,,,CMS
|
||||
262,ExplanationOfBenefit,Carrier;DME;Hospice;Inpatient;Inpatient;Outpatient;SNF,Claim Line Prior Authorization Unique Tracking Number (Partially Adjudicated),A number identifying a unique tracking number (UTN) for a prior authorization (PA).,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_LINE_PMD_UNIQ_TRKNG_NUM').exists()).value,ALA00000047747,V2_MDCR_CLM_LINE_DCMTN,CLM_LINE_PA_UNIQ_TRKNG_NUM,FISS;MCS,,,,CMS
|
||||
263,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Benefit Enhancement Code 1,A code identifying the first applicable Accountable Care Organization (ACO) Benefit Enhancement Indicator (BEI) that applied to the claim.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value,,V2_MDCR_CLM_DCMTN,CLM_BNFT_ENHNCMT_1_CD,FISS;NCH,,CCLFA.CLM_DEMO_1ST_NUM,,CMS
|
||||
264,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Benefit Enhancement Code 2,A code identifying the second applicable Accountable Care Organization (ACO) Benefit Enhancement Indicator (BEI) that applied to the claim.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value,,V2_MDCR_CLM_DCMTN,CLM_BNFT_ENHNCMT_2_CD,FISS;NCH,,CCLFA.CLM_DEMO_2ND_NUM,,CMS
|
||||
265,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Benefit Enhancement Code 3,A code identifying the third applicable Accountable Care Organization (ACO) Benefit Enhancement Indicator (BEI) that applied to the claim.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value,,V2_MDCR_CLM_DCMTN,CLM_BNFT_ENHNCMT_3_CD,FISS;NCH,,CCLFA.CLM_DEMO_3RD_NUM,,CMS
|
||||
266,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Benefit Enhancement Code 4,A code identifying the fourth applicable Accountable Care Organization (ACO) Benefit Enhancement Indicator (BEI) that applied to the claim.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value,,V2_MDCR_CLM_DCMTN,CLM_BNFT_ENHNCMT_4_CD,FISS;NCH,,CCLFA.CLM_DEMO_4TH_NUM,,CMS
|
||||
267,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim Benefit Enhancement Code 5,A code identifying the fifth applicable Accountable Care Organization (ACO) Benefit Enhancement Indicator (BEI) that applied to the claim.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value,,V2_MDCR_CLM_DCMTN,CLM_BNFT_ENHNCMT_5_CD,FISS;NCH,,CCLFA.CLM_DEMO_5TH_NUM,,CMS
|
||||
268,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim NGACO PBPMT Switch,"An Integrated Data Repository (IDR) derived indicator based on the claim Next Generation (NG) Accountable Care Organization (ACO) indicator code from CWF (Common Working File), which identifies claims that qualify for specific claim processing edits. Valid values: Y = If any of the five claim NG ACO indicator codes contains population-based payments (PBP). N = If applicable codes are found and none of the five NG ACO indicator codes contains PBP. Null = Default",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_NGACO_PBPMT_SW').exists()).value,,V2_MDCR_CLM_DCMTN,CLM_NGACO_PBPMT_SW,NCH,,CCLFA.CLM_NGACO_PBPMT_SW,,CMS
|
||||
269,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim NGACO Post Discharge HCBS Switch,"An Integrated Data Repository (IDR) derived indicator based on the claim Next Generation (NG) Accountable Care Organization (ACO) indicator code from CWF (Common Working File), which identifies claims that qualify for specific claim processing edits. Valid values: Y = If any of the five claim NG ACO indicator codes contains post-discharge home visits. N = If applicable codes are found and none of the five NG ACO indicator codes contains post-discharge home visits. Null = Default",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_NGACO_PDSCHRG_HCBS_SW').exists()).value,,V2_MDCR_CLM_DCMTN,CLM_NGACO_PDSCHRG_HCBS_SW,NCH,,CCLFA.CLM_NGACO_PDSCHRG_HCBS_SW,,CMS
|
||||
270,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim NGACO SNF Waiver Switch,"An Integrated Data Repository (IDR) derived indicator based on the claim Next Generation (NG) Accountable Care Organization (ACO) indicator code from CWF (Common Working File), which identifies claims that qualify for specific claim processing edits. Valid values: Y = If any of the five claim NG ACO indicator codes contains 3-day SNF waiver. N = If applicable codes are found and none of the five NG ACO indicator codes contains 3-day SNF waiver. Null = Default",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_NGACO_SNF_WVR_SW').exists()).value,,V2_MDCR_CLM_DCMTN,CLM_NGACO_SNF_WVR_SW,NCH,,CCLFA.CLM_NGACO_SNF_WVR_SW,,CMS
|
||||
271,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim NGACO Telehealth Switch,"An Integrated Data Repository (IDR) derived indicator based on the claim Next Generation (NG) Accountable Care Organization (ACO) indicator code from CWF (Common Working File), which identifies claims that qualify for specific claim processing edits. Valid values: Y = If any of the five claim NG ACO indicator codes contains telehealth. N = If applicable codes are found and none of the five NG ACO indicator codes contains telehealth. Null = Default",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_NGACO_TLHLTH_SW').exists()).value,,V2_MDCR_CLM_DCMTN,CLM_NGACO_TLHLTH_SW,NCH,,CCLFA.CLM_NGACO_TLHLTH_SW,,CMS
|
||||
272,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim NGACO Capitation Switch,"An Integrated Data Repository (IDR) derived indicator based on the claim Next Generation (NG) Accountable Care Organization (ACO) indicator code from CWF (Common Working File), which identifies claims that qualify for specific claim processing edits. Valid values: Y = If any of the five claim NG ACO indicator codes contains capitation. N = If applicable codes are found and none of the five NG ACO indicator codes contains capitation. Null = Default",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_NGACO_CPTATN_SW').exists()).value,,V2_MDCR_CLM_DCMTN,CLM_NGACO_CPTATN_SW,NCH,,CCLFA.CLM_NGACO_CPTATN_SW,,CMS
|
||||
273,ExplanationOfBenefit,HHA;Hospice;Inpatient;Outpatient;SNF,Claim ACO Care Management HCBS Switch,"An Integrated Data Repository (IDR) derived indicator based on the claim line Next Generation (NG) Accountable Care Organization (ACO) indicator code from CWF (Common Working File), which identifies claims that qualify for specific claim processing edits. Valid values: Y = If any of the five claim line NG ACO indicator codes contains care management home visits. N = If applicable codes are found and none of the five NG ACO indicator codes contains care management home visits. Null = Default",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_ACO_CARE_MGMT_HCBS_SW').exists()).value,,V2_MDCR_CLM_DCMTN,CLM_ACO_CARE_MGMT_HCBS_SW,NCH,,CCLFA.CLM_NGACO_CMG_WVR_SW,,CMS
|
||||
274,ExplanationOfBenefit,Carrier,Claim Line NGACO PBPMT Switch,"An Integrated Data Repository (IDR) derived indicator based on the claim line Next Generation (NG) Accountable Care Organization (ACO) indicator code from CWF (Common Working File), which identifies claims that qualify for specific claim processing edits. Valid values: Y = If any of the five claim NG ACO indicator codes contains population-based payments (PBP). N = If applicable codes are found and none of the five NG ACO indicator codes contains PBP. Null = Default",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_LINE_NGACO_PBPMT_SW').exists()).value,,V2_MDCR_CLM_LINE_DCMTN,CLM_LINE_NGACO_PBPMT_SW,NCH,,CCLFB.CLM_LINE_NGACO_PBPMT_SW,,CMS
|
||||
275,ExplanationOfBenefit,Carrier,Claim Line NGACO Post Discharge HCBS Switch,"An Integrated Data Repository (IDR) derived indicator based on the claim line Next Generation (NG) Accountable Care Organization (ACO) indicator code from CWF (Common Working File), which identifies claims that qualify for specific claim processing edits. Valid values: Y = If any of the five claim NG ACO indicator codes contains post-discharge home visits. N = If applicable codes are found and none of the five NG ACO indicator codes contains post-discharge home visits. Null = Default",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_LINE_NGACO_PDSCHRG_HCBS_SW').exists()).value,,V2_MDCR_CLM_LINE_DCMTN,CLM_LINE_NGACO_PDSCHRG_HCBS_SW,NCH,,CCLFB.CLM_LINE_NGACO_PDSCHRG_HCBS_SW,,CMS
|
||||
276,ExplanationOfBenefit,Carrier,Claim Line NGACO SNF Waiver Switch,"An Integrated Data Repository (IDR) derived indicator based on the claim line Next Generation (NG) Accountable Care Organization (ACO) indicator code from CWF (Common Working File), which identifies claims that qualify for specific claim processing edits. Valid values: Y = If any of the five claim NG ACO indicator codes contains 3-day SNF waiver. N = If applicable codes are found and none of the five NG ACO indicator codes contains 3-day SNF waiver. Null = Default",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_LINE_NGACO_SNF_WVR_SW').exists()).value,,V2_MDCR_CLM_LINE_DCMTN,CLM_LINE_NGACO_SNF_WVR_SW,NCH,,CCLFB.CLM_LINE_NGACO_SNF_WVR_SW,,CMS
|
||||
277,ExplanationOfBenefit,Carrier,Claim Line NGACO Telehealth Switch,"An Integrated Data Repository (IDR) derived indicator based on the claim line Next Generation (NG) Accountable Care Organization (ACO) indicator code from CWF (Common Working File), which identifies claims that qualify for specific claim processing edits. Valid values: Y = If any of the five claim NG ACO indicator codes contains telehealth. N = If applicable codes are found and none of the five NG ACO indicator codes contains telehealth. Null = Default",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_LINE_NGACO_TLHLTH_SW').exists()).value,,V2_MDCR_CLM_LINE_DCMTN,CLM_LINE_NGACO_TLHLTH_SW,NCH,,CCLFB.CLM_LINE_NGACO_TLHLTH_SW,,CMS
|
||||
278,ExplanationOfBenefit,Carrier,Claim Line NGACO Capitation Switch,"An Integrated Data Repository (IDR) derived indicator based on the claim line Next Generation (NG) Accountable Care Organization (ACO) indicator code from CWF (Common Working File), which identifies claims that qualify for specific claim processing edits. Valid values: Y = If any of the five claim NG ACO indicator codes contains capitation. N = If applicable codes are found and none of the five NG ACO indicator codes contains capitation. Null = Default",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_LINE_NGACO_CPTATN_SW').exists()).value,,V2_MDCR_CLM_LINE_DCMTN,CLM_LINE_NGACO_CPTATN_SW,NCH,,CCLFB.CLM_LINE_NGACO_CPTATN_SW,,CMS
|
||||
279,ExplanationOfBenefit,Carrier,Claim Line ACO Care Management HCBS Switch,"An Integrated Data Repository (IDR) derived indicator based on the claim line Next Generation (NG) Accountable Care Organization (ACO) indicator code from CWF (Common Working File), which identifies claims that qualify for specific claim processing edits. Valid values: Y = If any of the five claim line NG ACO indicator codes contains care management home visits. N = If applicable codes are found and none of the five NG ACO indicator codes contains care management home visits. Null = Default",ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_LINE_ACO_CARE_MGMT_HCBS_SW').exists()).value,,V2_MDCR_CLM_LINE_DCMTN,CLM_LINE_ACO_CARE_MGMT_HCBS_SW,NCH,,CCLFB.CLM_NGACO_CMG_WVR_SW,,CMS
|
||||
280,ExplanationOfBenefit,Carrier,Claim Line Benefit Enhancement 1 Code,A code identifying the first applicable Accountable Care Organization (ACO) Benefit Enhancement Indicator (BEI) that applied to the claim line. Reference table: CLM_BNFT_ENHNCMT_CD,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value,,V2_MDCR_CLM_LINE_DCMTN,CLM_LINE_BNFT_ENHNCMT_1_CD,MCS;NCH,,CCLFB.CLM_DEMO_1ST_NUM,,CMS
|
||||
281,ExplanationOfBenefit,Carrier,Claim Line Benefit Enhancement 2 Code,A code identifying the second applicable Accountable Care Organization (ACO) Benefit Enhancement Indicator (BEI) that applied to the claim line. Reference table: CLM_BNFT_ENHNCMT_CD,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value,,V2_MDCR_CLM_LINE_DCMTN,CLM_LINE_BNFT_ENHNCMT_2_CD,MCS;NCH,,CCLFB.CLM_DEMO_2ND_NUM,,CMS
|
||||
282,ExplanationOfBenefit,Carrier,Claim Line Benefit Enhancement 3 Code,A code identifying the third applicable Accountable Care Organization (ACO) Benefit Enhancement Indicator (BEI) that applied to the claim line. Reference table: CLM_BNFT_ENHNCMT_CD,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value,,V2_MDCR_CLM_LINE_DCMTN,CLM_LINE_BNFT_ENHNCMT_3_CD,MCS;NCH,,CCLFB.CLM_DEMO_3RD_NUM,,CMS
|
||||
283,ExplanationOfBenefit,Carrier,Claim Line Benefit Enhancement 4 Code,A code identifying the fourth applicable Accountable Care Organization (ACO) Benefit Enhancement Indicator (BEI) that applied to the claim line. Reference table: CLM_BNFT_ENHNCMT_CD,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value,,V2_MDCR_CLM_LINE_DCMTN,CLM_LINE_BNFT_ENHNCMT_4_CD,MCS;NCH,,CCLFB.CLM_DEMO_4TH_NUM,,CMS
|
||||
284,ExplanationOfBenefit,Carrier,Claim Line Benefit Enhancement 5 Code,A code identifying the fifth applicable Accountable Care Organization (ACO) Benefit Enhancement Indicator (BEI) that applied to the claim line. Reference table: CLM_BNFT_ENHNCMT_CD,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='CLM_BNFT_ENHNCMT_CD').exists()).value,,V2_MDCR_CLM_LINE_DCMTN,CLM_LINE_BNFT_ENHNCMT_5_CD,MCS;NCH,,CCLFB.CLM_DEMO_5TH_NUM,,CMS
|
||||
285,ExplanationOfBenefit,DME;HHA;Hospice;Inpatient;Outpatient;SNF,State FIPS Code,Identifies the state where the facility providing services is located.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='PRVDR_FAC_FIPS_ST_CD').exists()).code,"{'coding': [{'system': 'https://bluebutton.cms.gov/fhir/CodeSystem/US-FIPS-STATE-CODES', 'code': '04'}]}",V2_MDCR_CLM,GEO_BLG_SSA_STATE_CD,NCH,,CCLF1.PRVDR_FAC_FIPS_ST_CD,,CMS
|
||||
286,ExplanationOfBenefit,Carrier;DME,State FIPS Code,Identifies the state that the provider providing the service is located in.,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information').exists() and category.coding.where(code='RNDRG_PRVDR_FIPS_ST_CD').exists()).code,"{'coding': [{'system': 'https://bluebutton.cms.gov/fhir/CodeSystem/US-FIPS-STATE-CODES', 'code': '04'}]}",V2_MDCR_CLM_LINE,GEO_RNDRG_SSA_STATE_CD,NCH,,CCLF5.RNDRG_PRVDR_FIPS_ST_CD,,CMS
|
||||
287,ExplanationOfBenefit,PriorAuth,Last Updated Time,This field represents the last time that an ExplanationOfBenefit was updated.,ExplanationOfBenefit.meta.lastUpdated,2026-01-01T03:02:28.000000Z,,,CWF,,,,
|
||||
288,ExplanationOfBenefit,PriorAuth,Created Date,EOB created date.,ExplanationOfBenefit.created,2020-09-07,,,CWF,,,,
|
||||
289,ExplanationOfBenefit,PriorAuth,Beneficiary Source Key,Beneficiary Source Key,ExplanationOfBenefit.patient.reference.substring(8),-147748784,,,CWF,,,,
|
||||
290,ExplanationOfBenefit,PriorAuth,Derived Outcome,Derived outcome code.,ExplanationOfBenefit.outcome,partial,,,CWF,,,,
|
||||
291,ExplanationOfBenefit,PriorAuth,Claim Type,Claim Type,ExplanationOfBenefit.type.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-TYPE').code,C,,,CWF,,,,
|
||||
292,ExplanationOfBenefit,PriorAuth,Unique Tracking Number,Unique Tracking Number,ExplanationOfBenefit.identifier.where(system='https://bluebutton.cms.gov/identifiers/Unique-Tracking-Number').value,-9CKKWTEAH0AHP,,,CWF,,,,
|
||||
293,ExplanationOfBenefit,PriorAuth,Internal Control Number / DCN,Internal Control Number / DCN,ExplanationOfBenefit.identifier.where(system='https://bluebutton.cms.gov/identifiers/PA-ICN-DCN').value,,,,CWF,,,,
|
||||
294,ExplanationOfBenefit,PriorAuth,UTN Valid Start Date,UTN Valid Start Date,ExplanationOfBenefit.preAuthRefPeriod.start,2020-09-17,,,CWF,,,,
|
||||
295,ExplanationOfBenefit,PriorAuth,UTN Valid End Date,UTN Valid End Date,ExplanationOfBenefit.preAuthRefPeriod.end,2021-09-17,,,CWF,,,,
|
||||
296,ExplanationOfBenefit,PriorAuth,MAC ID,MAC ID,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/Supporting-Information' and code='CLM_CNTRCTR_NUM').exists()).code.coding.where(system='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-CNTRCTR-NUM').code,04111,,,CWF,,,,
|
||||
297,ExplanationOfBenefit,PriorAuth,Type of Bill,Type of Bill,ExplanationOfBenefit.supportingInfo.where(category.coding.where(system='http://terminology.hl7.org/CodeSystem/claiminformationcategory' and code='info').exists() and code.coding.system='https://www.nubc.org/CodeSystem/TypeOfBill').code.coding.code,32X,,,CWF,,,,
|
||||
298,ExplanationOfBenefit,PriorAuth,NPI,NPI,ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://hl7.org/fhir/sid/us-npi').value,2560707830,,,CWF,,,,
|
||||
299,ExplanationOfBenefit,PriorAuth,Name,Name,ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).name,HEALTHCARE CENTER,,,CWF,,,,
|
||||
300,ExplanationOfBenefit,PriorAuth,CMS Certification Number,CMS Certification Number,ExplanationOfBenefit.contained.where(id = %root.provider.reference.substring(1)).identifier.where(system='http://terminology.hl7.org/NamingSystem/CCN').value,39T14,,,CWF,,,,
|
||||
301,ExplanationOfBenefit,PriorAuth,Current Segment,Current Segment,ExplanationOfBenefit.item.sequence,1,,,CWF,,,,
|
||||
302,ExplanationOfBenefit,PriorAuth,HCPCS/CPT/HIPPS,HCPCS/CPT/HIPPS code,ExplanationOfBenefit.item.productOrService.coding.code,G0493,,,CWF,,,,
|
||||
303,ExplanationOfBenefit,PriorAuth,Price Modifier 1,Price Modifier 1,ExplanationOfBenefit.item.modifier.coding.code,RR,,,CWF,,,,
|
||||
304,ExplanationOfBenefit,PriorAuth,Price Modifier 2,Price Modifier 2,ExplanationOfBenefit.item.modifier.coding.code,RR,,,CWF,,,,
|
||||
305,ExplanationOfBenefit,PriorAuth,Place of Service,Place of Service,ExplanationOfBenefit.item.location.coding.code,41,,,CWF,,,,
|
||||
306,ExplanationOfBenefit,PriorAuth,Revenue Code 1,Revenue Code 1,ExplanationOfBenefit.item.revenue.coding.code,,,,CWF,,,,
|
||||
307,ExplanationOfBenefit,PriorAuth,PA Date Added,PA Date Added,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/PA-DT-ADDED').value,2020-09-07,,,CWF,,,,
|
||||
308,ExplanationOfBenefit,PriorAuth,PA Date Updated,PA Date Updated,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/PA-DT-UPDATED').value,2020-09-07,,,CWF,,,,
|
||||
309,ExplanationOfBenefit,PriorAuth,PA Decision,PA Decision,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/PA-DECISION').value.code,P,,,CWF,,,,
|
||||
310,ExplanationOfBenefit,PriorAuth,PA Request Submitted Date,PA Request Submitted Date,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/PA-REQ-SUB-DT').value,2020-09-08,,,CWF,,,,
|
||||
311,ExplanationOfBenefit,PriorAuth,PA Request Received Date,PA Request Received Date,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/PA-REQ-REC-DT').value,2020-09-07,,,CWF,,,,
|
||||
312,ExplanationOfBenefit,PriorAuth,PA Decision Date,PA Decision Date,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/PA-DECISION-DT').value,2020-09-08,,,CWF,,,,
|
||||
313,ExplanationOfBenefit,PriorAuth,PA Decision Expiration Date,PA Decision Expiration Date,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/PA-DECISION-EXP-DT').value,2021-09-08,,,CWF,,,,
|
||||
314,ExplanationOfBenefit,PriorAuth,Service Counts,Service Counts,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/SERVICE-CNTS').value,13,,,CWF,,,,
|
||||
315,ExplanationOfBenefit,PriorAuth,Service Rendering State,Service Rendering State,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/SVC-RENDER-ST').value.code,TX,,,CWF,,,,
|
||||
316,ExplanationOfBenefit,PriorAuth,MR Count Indicator,MR Count Indicator,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/MR-COUNT-IND').value,43,,,CWF,,,,
|
||||
317,ExplanationOfBenefit,PriorAuth,MR Count Start Date,MR Count Start Date,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/MR-COUNT-ST-DT').value,2020-08-19,,,CWF,,,,
|
||||
318,ExplanationOfBenefit,PriorAuth,MR Count End Date,MR Count End Date,ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/MR-COUNT-END-DT').value,2021-08-19,,,CWF,,,,
|
||||
319,ExplanationOfBenefit,PriorAuth,RRB Exclusion Indicator,RRB Exclusion Indicator,"iif(ExplanationOfBenefit.item.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/RRB-EXCL-IND').value = true, 'Y', ' ')",['Y'],,,CWF,,,,
|
||||
320,Patient,,Beneficiary First Name,A first name for a Medicare beneficiary.,Patient.name.given[0],Frankie,V2_MDCR_BENE_HSTRY,BENE_1ST_NAME,,,CCLF8.BENE_1ST_NAME,BENE_GVN_NAME,
|
||||
321,Patient,,Beneficiary Last Name,"A last name or surname, including any following titles or suffixes, for a Medicare beneficiary.",Patient.name.family,Sheep,V2_MDCR_BENE_HSTRY,BENE_LAST_NAME,,,CCLF8.BENE_LAST_NAME,BENE_SRNM_NAME,
|
||||
322,Patient,,Beneficiary Middle Name,The first initial of the Medicare beneficiarys middle name.,Patient.name.given[1],Le Petit Prince,V2_MDCR_BENE_HSTRY,BENE_MIDL_NAME,,,CCLF8.BENE_MIDL_NAME,BENE_MDL_NAME,
|
||||
323,Patient,,Beneficiary Date of Birth,A date identifying when a beneficiary is born.,Patient.birthDate,1995-03-11,V2_MDCR_BENE_HSTRY,BENE_BRTH_DT,,,CCLF8.BENE_DOB,BENE_BIRTH_DT,
|
||||
324,Patient,,Beneficiary Date of Death,A date identifying when a beneficiary died.,Patient.deceasedDateTime,2024-03-11,V2_MDCR_BENE_HSTRY,BENE_DEATH_DT,,,CCLF8.BENE_DEATH_DT,BENE_DEATH_DT,
|
||||
325,Patient,,Current Patient FHIR ID,The current Patient ID for the beneficary.,"iif(Patient.link.where(type = 'replaced-by').other.exists(),Patient.link.where(type = 'replaced-by').other.reference.substring(8),Patient.id)",['123456789'],V2_MDCR_BENE_HSTRY,BENE_XREF_EFCTV_SK,,,,,
|
||||
326,Patient,,Beneficiary Source Key List,A list of all source keys for the beneficiary.,Patient.link.other.display.union(Patient.id),['123456789'],,,,,,,
|
||||
327,Patient,,Patient FHIR ID,A unique number assigned by the enrollment database (EDB) to each EDB record to identify a beneficiary.,Patient.id,123456789,V2_MDCR_BENE_HSTRY,BENE_SK,,,,,
|
||||
328,Patient,,Last Updated Time,The time the Patient resource was last updated.,Patient.meta.lastUpdated,2020-01-07T03:02:28.000000Z,,,,,,,
|
||||
329,Patient,,USPS State Code,A code identifying the two-character alphabetic abbreviation for a state in the United States as defined by the United States Postal Service (USPS). Reference table: GEO_USPS_STATE_CD,Patient.address.state,TX,V2_MDCR_BENE_HSTRY,GEO_USPS_STATE_CD,,,CCLF8.GEO_USPS_STATE_CD,BENE_STATE_CD,
|
||||
330,Patient,,Beneficiary Zip Code - First 5,A five-digit ZIP code defined by the United States Postal Service (USPS) that identifies the destination post office or delivery area. Reference table: GEO_ZIP5_CD,Patient.address.postalCode,77840,V2_MDCR_BENE_HSTRY,GEO_ZIP5_CD,,,CCLF8.GEO_ZIP5_CD,BENE_MLG_CNTCT_ZIP_CD,
|
||||
331,Patient,,City Name,A name of the city for a given ZIP code of a Medicare beneficiary's mailing address. Reference table: GEO_ZIP5_CD,Patient.address.city,College Station,V2_MDCR_BENE_HSTRY,GEO_ZIP_PLC_NAME,,,CCLF8.GEO_ZIP_PLC_NAME,CITY_NAME,
|
||||
332,Patient,,Contact Language Code,A code identifying the language that the beneficiary requested Centers for Medicare and Medicaid Services (CMS) use when sending the Medicare handbook. English and Spanish are the only language choices that CMS supports. This language preference code is used exclusively for the Medicare handbook. It is not used for any other type of mail sent to beneficiaries. Reference table: CNTCT_LANG_CD,Patient.communication.language.coding.where(system='urn:ietf:bcp:47').code,en,V2_MDCR_BENE_HSTRY,CNTCT_LANG_CD,,,,,
|
||||
333,Patient,,Beneficiary Sex Code,A code identifying the sex of a Medicare beneficiary. Reference table: BENE_SEX_CD,Patient.extension.where(url='http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex').value,248152002,V2_MDCR_BENE_HSTRY,BENE_SEX_CD,,,CCLF8.BENE_SEX_CD,BENE_SEX_IDENT_CD,
|
||||
334,Patient,,Beneficiary Race Code,A code identifying a beneficiary's race. Reference table: BENE_RACE_CD,Patient.extension.where(url='http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity' or url='http://hl7.org/fhir/us/core/StructureDefinition/us-core-race').extension.valueCoding,"{'system': 'urn:oid:2.16.840.1.113883.6.238', 'code': '2135-2', 'display': 'Hispanic or Latino'}",V2_MDCR_BENE_HSTRY,BENE_RACE_CD,,,CCLF8.BENE_RACE_CD,BENE_RACE_CD,
|
||||
335,Patient,,Medicare Beneficiary Identifier,"An identifier that uniquely identifies a beneficiary and replaces the Health Insurance Claim Number (HICN) on Medicare cards. The format of the Medicare Beneficiary Identifier (MBI) is 11-positions in length and contains the following values: position 1 numeric values: 1 - 9 position 2 alphabetic values: A - Z (minus S, L, O, I, B, Z) position 3 alphanumeric values: 0 - 9 and A - Z (minus S, L, O, I, B, Z) position 4 numeric values: 0 - 9 position 5 alphabetic values: A - Z (minus S, L, O, I, B, Z) position 6 alphanumeric values: 0 - 9 and a - z (minus S, L, O, I, B, Z) position 7 numeric values: 0 - 9 position 8 alphabetic values: A - Z (minus S, L, O, I, B, Z) position 9 alphabetic values: A - Z (minus S, L, O, I, B, Z) position 10 numeric values: 0 - 9 position 11 numeric values: 0 - 9",Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').value,AAA1AA0AA11,V2_MDCR_BENE_HSTRY,BENE_MBI_ID,,,CCLF1.BENE_MBI_ID;CCLF2.BENE_MBI_ID;CCLF3.BENE_MBI_ID;CCLF4.BENE_MBI_ID;CCLF5.BENE_MBI_ID;CCLF6.BENE_MBI_ID;CCLF7.BENE_MBI_ID;CCLF8.BENE_MBI_ID;CCLF9.CRNT_NUM;CCLF9.PRVS_NUM;CCLFA.BENE_MBI_ID;CCLFB.BENE_MBI_ID,MBI_NUM,
|
||||
336,Patient,,MBI Effective Date,The effective date when an MBI is assigned to a beneficiary.,Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').period.start,2017-05-11,V2_MDCR_BENE_MBI_ID,BENE_MBI_EFCTV_DT,,,CCLF9.PRVS_ID_EFCTV_DT,EFCTV_BGN_DT,
|
||||
337,Patient,,MBI Obsolete Date,The end date when an MBI period is closed due to being compromised or involved in a merge cross reference action. (replaced by a new MBI).,Patient.identifier.where(system='http://hl7.org/fhir/sid/us-mbi').period.end,2017-07-01,V2_MDCR_BENE_MBI_ID,BENE_MBI_OBSLT_DT,,,CCLF9.PRVS_ID_OBSLT_DT,EFCTV_END_DT,
|
||||
338,Coverage,PartA;PartB,Coverage Part,The 'Part' of Medicare Coverage desired to transform.,Coverage.class.where(type.coding.code='plan').value,Part A,,,,,,,
|
||||
339,Coverage,PartA;PartB,Beneficiary MBI ID,"An identifier that uniquely identifies a beneficiary and replaces the Health Insurance Claim Number (HICN) on Medicare cards. The format of the Medicare Beneficiary Identifier (MBI) is 11-positions in length and contains the following values: position 1 numeric values: 1 - 9 position 2 alphabetic values: A - Z (minus S, L, O, I, B, Z position 3 alphanumeric values: 0 - 9 and A - Z (minus S, L, O, I, B, Z) position 4 numeric values: 0 - 9 position 5 alphabetic values: A - Z (minus S, L, O, I, B, Z) position 6 alphanumeric values: 0 - 9 and a - z (minus S, L, O, I, B, Z) position 7 numeric values: 0 - 9 position 8 alphabetic values: A - Z (minus S, L, O, I, B, Z) position 9 alphabetic values: A - Z (minus S, L, O, I, B, Z) position 10 numeric values: 0 - 9 position 11 numeric values: 0 - 9",Coverage.subscriberId,ABB2BB0BB22,V2_MDCR_BENE,BENE_MBI_ID,,,,,
|
||||
340,Coverage,PartA;PartB,Beneficiary FHIR ID,A unique number assigned by the Enrollment Database (EDB) to each EDB record to identify a beneficiary.,Coverage.beneficiary.reference.substring(8),123456789,V2_MDCR_BENE,BENE_SK,,,,,
|
||||
341,Coverage,PartA;PartB,Medicare Status Code,A code identifying the reason for a beneficiary's entitlement to Medicare benefits. Reference table: BENE_MDCR_STUS_CD,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD').value.code,31,V2_MDCR_BENE_MDCR_STUS,BENE_MDCR_STUS_CD,,https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD,CCLF8.BENE_MDCR_STUS_CD,BENE_MDCR_STATUS_CD,
|
||||
342,Coverage,PartA;PartB,Medicare Entitlement Status Code,The reason for entitlement or termination of a beneficiary's benefits during a period of coverage.,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD').value.code,E,V2_MDCR_BENE_MDCR_ENTLMT,BENE_MDCR_ENTLMT_STUS_CD,,https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD,,BENE_PTA_TRMNTN_CD;BENE_PTB_TRMNTN_CD,
|
||||
343,Coverage,PartA;PartB,Buy-in Code,A code that indicates the reason for part a/part b state buy-in eligibility.,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD').value.code,A,V2_MDCR_BENE_TP,BENE_BUYIN_CD,,https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD,CCLF8.BENE_ENTLMT_BUYIN_IND,MDCR_ENTLMT_BUYIN_1_IND;MDCR_ENTLMT_BUYIN_2_IND;MDCR_ENTLMT_BUYIN_3_IND;MDCR_ENTLMT_BUYIN_4_IND;MDCR_ENTLMT_BUYIN_5_IND;MDCR_ENTLMT_BUYIN_6_IND;MDCR_ENTLMT_BUYIN_7_IND;MDCR_ENTLMT_BUYIN_8_IND;MDCR_ENTLMT_BUYIN_9_IND;MDCR_ENTLMT_BUYIN_10_IND;MDCR_ENTLMT_BUYIN_11_IND;MDCR_ENTLMT_BUYIN_12_IND,
|
||||
344,Coverage,PartA;PartB,Beneficiary Range Begin Date,The primary begin date for a beneficiary date range.,Coverage.period.start,2018-04-11,V2_MDCR_BENE_MDCR_ENTLMT,BENE_RNG_BGN_DT,,,CCLF8.BENE_PART_A_ENRLMT_BGN_DT;CCLF8.BENE_PART_B_ENRLMT_BGN_DT,COVSTART,
|
||||
345,Coverage,PartA;PartB,Beneficiary Range End Date,The primary end date for a beneficiary date range.,Coverage.period.end,,V2_MDCR_BENE_MDCR_ENTLMT,BENE_RNG_END_DT,,,,,
|
||||
346,Coverage,PartA;PartB,Last Updated Time,The date the coverage information was last updated,Coverage.meta.lastUpdated,2020-01-07T03:02:28.000000Z,,,,,,,
|
||||
347,Coverage,PartA;PartB,Beneficiary Enrollment Reason Code,The reason for a beneficiary's enrolment to Part A/Part B benefits.,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD').value.code,I,V2_MDCR_BENE_MDCR_ENTLMT,BENE_MDCR_ENRLMT_RSN_CD,,https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENRLMT-RSN-CD,,,
|
||||
348,Coverage,PartA;PartB,Beneficiary Entitlement Reason Code,A code identifying the basis in determining a beneficiary's entitlement to Medicare benefits.,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD').value.code,2,V2_MDCR_BENE_MDCR_ENTLMT_RSN,BENE_MDCR_ENTLMT_RSN_CD,,https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD,CCLF8.BENE_ORGNL_ENTLMT_RSN_CD,BENE_ENTLMT_RSN_ORIG,
|
||||
349,Coverage,PartA;PartB,Beneficiary ESRD Status ID,A beneficiary's end stage renal disease status indicator.,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID').value.code,Y,V2_MDCR_BENE_MDCR_STUS_CD,BENE_ESRD_STUS_ID,,https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID,,BENE_ESRD_IND,
|
||||
350,Coverage,PartA;PartB,Beneficiary Disabled Status Code,AN IDENTIFIER INDICATING WHETHER DISABILITY IS A REASON FOR A BENEFICIARYS ENTITLEMENT TO MEDICARE.,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID').value.code,N,V2_MDCR_BENE_MDCR_STUS_CD,BENE_DSBLD_STUS_ID,,https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID,,,
|
||||
351,Coverage,DUAL,Beneficiary Dual Status Code,A code identifying the entitlement status for a dual eligible beneficiary.,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD').value.code,01,V2_MDCR_BENE_CMBND_DUAL_MDCR,BENE_DUAL_STUS_CD,,https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD,CCLF8.BENE_DUAL_STUS_CD,DUAL_STUS_CD_01;DUAL_STUS_CD_02;DUAL_STUS_CD_03;DUAL_STUS_CD_04;DUAL_STUS_CD_05;DUAL_STUS_CD_06;DUAL_STUS_CD_07;DUAL_STUS_CD_08;DUAL_STUS_CD_09;DUAL_STUS_CD_10;DUAL_STUS_CD_11;DUAL_STUS_CD_12,
|
||||
352,Coverage,DUAL,Medicare/Medicaid Dual Type Code,"A code identifying a beneficiary's dual Medicaid designation, whether a beneficiary is partial or dual Medicare.",Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD').value.code,P,V2_MDCR_BENE_CMBND_DUAL_MDCR,BENE_DUAL_TYPE_CD,,https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD,,,
|
||||
353,Coverage,DUAL,Medicaid State Code,"A code identifying the two-character alphabetic abbreviation for a state in the United States as defined by the United States Postal Service (USPS) associated with a beneficiary, provider, or claim address and used in the geocoding process.",Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD').value.code,TX,V2_MDCR_BENE_CMBND_DUAL_MDCR,GEO_USPS_STATE_CD,,,,,
|
||||
354,Coverage,DUAL,Medicaid Eligibility Begin Date,A date that indicates the beginning of a beneficiary's Medicaid eligibility period. It is the effective start date of the Medicaid period calculated according to Medicare Advantage Prescription Drug (MARX) requirements. The date will always be the first of a month.,Coverage.period.start,2018-04-11,V2_MDCR_BENE_CMBND_DUAL_MDCR,BENE_MDCD_ELGBLTY_BGN_DT,,,,,
|
||||
355,Coverage,DUAL,Medicaid Eligibility End Date,A date that indicates the end of a beneficiary's Medicaid eligibility period. It is the effective end date of the Medicaid period calculated according to Medicare Advantage Prescription Drug (MARX) requirements. The date will always be the end of a month or 12/31/9999.,Coverage.period.end,,V2_MDCR_BENE_CMBND_DUAL_MDCR,BENE_MDCD_ELGBLTY_END_DT,,,,,
|
||||
356,Coverage,PartC;PartD,Beneficiary Enrollment Begin Date,"The date that the beneficiary enrolled in the service election. [Source: plan transaction, automatic enrollment]",Coverage.period.start,2018-04-11,V2_MDCR_BENE_MAPD_ENRLMT,BENE_ENRLMT_BGN_DT,,,,,
|
||||
357,Coverage,PartC;PartD,Beneficiary Enrollment End Date,The date that the beneficiary disenrolled in the service elections.,Coverage.period.end,,V2_MDCR_BENE_MAPD_ENRLMT,BENE_ENRLMT_END_DT,,,,,
|
||||
358,Coverage,PartC;PartD,Beneficiary Contract Number,Unique identifier enabling an entity to provide coverage to eligible Medicare beneficiaries.,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM').value,H1234,V2_MDCR_BENE_MAPD_ENRLMT,BENE_CNTRCT_NUM,,,,PTC_CNTRCT_ID_01;PTC_CNTRCT_ID_02;PTC_CNTRCT_ID_03;PTC_CNTRCT_ID_04;PTC_CNTRCT_ID_05;PTC_CNTRCT_ID_06;PTC_CNTRCT_ID_07;PTC_CNTRCT_ID_08;PTC_CNTRCT_ID_09;PTC_CNTRCT_ID_10;PTC_CNTRCT_ID_11;PTC_CNTRCT_ID_12;PTD_CNTRCT_ID_01;PTD_CNTRCT_ID_02;PTD_CNTRCT_ID_03;PTD_CNTRCT_ID_04;PTD_CNTRCT_ID_05;PTD_CNTRCT_ID_06;PTD_CNTRCT_ID_07;PTD_CNTRCT_ID_08;PTD_CNTRCT_ID_09;PTD_CNTRCT_ID_10;PTD_CNTRCT_ID_11;PTD_CNTRCT_ID_12,
|
||||
359,Coverage,PartC;PartD,Beneficiary PBP Number,A unique identifier for the plan benefit package offered under the contract. For Part D this number is a unique identification for an agreement between CMS and a Part D provider enabling the Part D provider to provide drug coverage to eligible beneficiaries. MARX definition: a 3-position numeric identifier assigned to a Plan Benefit Package (PBP) offered within a managed care or prescription drug contract. Values beginning with 8 are reserved for employer group plans. A value of 999 is reserved for cost contractors who do not choose to offer a prescription drug benefit,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM').value,001,V2_MDCR_BENE_MAPD_ENRLMT,BENE_PBP_NUM,,,,PTC_PBP_ID_01;PTC_PBP_ID_02;PTC_PBP_ID_03;PTC_PBP_ID_04;PTC_PBP_ID_05;PTC_PBP_ID_06;PTC_PBP_ID_07;PTC_PBP_ID_08;PTC_PBP_ID_09;PTC_PBP_ID_10;PTC_PBP_ID_11;PTC_PBP_ID_12;PTD_PBP_ID_01;PTD_PBP_ID_02;PTD_PBP_ID_03;PTD_PBP_ID_04;PTD_PBP_ID_05;PTD_PBP_ID_06;PTD_PBP_ID_07;PTD_PBP_ID_08;PTD_PBP_ID_09;PTD_PBP_ID_10;PTD_PBP_ID_11;PTD_PBP_ID_12,
|
||||
360,Coverage,PartC;PartD,Beneficiary Coverage Type Code,A code identifying the type of coverage in which the beneficiary is enrolled. Reference table: BENE_CVRG_TYPE_CD,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD').value.code,3,V2_MDCR_BENE_MAPD_ENRLMT,BENE_CVRG_TYPE_CD,,https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD,,PTC_PLAN_TYPE_CD_01;PTC_PLAN_TYPE_CD_02;PTC_PLAN_TYPE_CD_03;PTC_PLAN_TYPE_CD_04;PTC_PLAN_TYPE_CD_05;PTC_PLAN_TYPE_CD_06;PTC_PLAN_TYPE_CD_07;PTC_PLAN_TYPE_CD_08;PTC_PLAN_TYPE_CD_09;PTC_PLAN_TYPE_CD_10;PTC_PLAN_TYPE_CD_11;PTC_PLAN_TYPE_CD_12,
|
||||
361,Coverage,PartC;PartD,Contract PBP Name,"Text label describing the PBP, usually the product name.",Coverage.contained.where(resourceType='Organization').name,Sample Medicare Advantage Plan,V2_MDCR_CNTRCT_PBP_NUM,CNTRCT_PBP_NAME,,,,,
|
||||
362,Coverage,PartC;PartD,Contract Plan Contact Telephone Number,A sequence of numbers that identifies a particular telephone and that must be dialed for the caller to connect to the telephone of the contact.,Coverage.contained.where(resourceType='Organization').contact.telecom.where(system='phone').value,1-800-555-1234,V2_MDCR_CNTRCT_PBP_CNTCT,CNTRCT_PLAN_CNTCT_TEL_NUM,,,,,
|
||||
363,Coverage,PartD,Beneficiary PDP Enrollment Member ID Number,Member ID assigned to the beneficiary.,Coverage.class.where(type.coding.code='rxid').value,M123456789,V2_MDCR_BENE_MAPD_ENRLMT_RX,BENE_PDP_ENRLMT_MMBR_ID_NUM,,,,,
|
||||
364,Coverage,PartD,Beneficiary PDP Enrollment Group Number,Identifying number assigned to the cardholder group or employer group.,Coverage.class.where(type.coding.code='rxgroup').value,G987654321,V2_MDCR_BENE_MAPD_ENRLMT_RX,BENE_PDP_ENRLMT_GRP_NUM,,,,,
|
||||
365,Coverage,PartD,Beneficiary PDP Enrollment Processor Number,Number assigned by the processor.,Coverage.class.where(type.coding.code='rxpcn').value,P123456,V2_MDCR_BENE_MAPD_ENRLMT_RX,BENE_PDP_ENRLMT_PRCSR_NUM,,,,,
|
||||
366,Coverage,PartD,Beneficiary PDP Enrollment Bank ID Number,A card issuer identifier or a bank identifying number used for network routing.,Coverage.class.where(type.coding.code='rxbin').value,BIN123456,V2_MDCR_BENE_MAPD_ENRLMT_RX,BENE_PDP_ENRLMT_BANK_ID_NUM,,,,,
|
||||
367,Coverage,PartD,Beneficiary LIS Effective Code,Switch indicating that this record is the current effective Low Income Subsidy (LIS) determination record.,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-LIS-EFCTV-CD').value.code,Y,V2_MDCR_BENE_LIS,BENE_LIS_EFCTV_CD,,https://bluebutton.cms.gov/fhir/CodeSystem/BENE-LIS-EFCTV-CD,,CST_SHR_GRP_CD_01;CST_SHR_GRP_CD_02;CST_SHR_GRP_CD_03;CST_SHR_GRP_CD_04;CST_SHR_GRP_CD_05;CST_SHR_GRP_CD_06;CST_SHR_GRP_CD_07;CST_SHR_GRP_CD_08;CST_SHR_GRP_CD_09;CST_SHR_GRP_CD_10;CST_SHR_GRP_CD_11;CST_SHR_GRP_CD_12,
|
||||
368,Coverage,PartD,Beneficiary LIS Copayment Level Code,A code identifying the generic level used to compute the Low Income Subsidy (LIS) co-payment amount. This generic level translates to a specific numeric value that will be used in the computation. Reference table: BENE_LIS_COPMT_LVL_CD,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-LIS-COPMT-LVL-CD').value.code,1,V2_MDCR_BENE_LIS,BENE_LIS_COPMT_LVL_CD,,https://bluebutton.cms.gov/fhir/CodeSystem/BENE-LIS-COPMT-LVL-CD,,CST_SHR_GRP_CD_01;CST_SHR_GRP_CD_02;CST_SHR_GRP_CD_03;CST_SHR_GRP_CD_04;CST_SHR_GRP_CD_05;CST_SHR_GRP_CD_06;CST_SHR_GRP_CD_07;CST_SHR_GRP_CD_08;CST_SHR_GRP_CD_09;CST_SHR_GRP_CD_10;CST_SHR_GRP_CD_11;CST_SHR_GRP_CD_12,
|
||||
369,Coverage,PartD,Beneficiary LIS Part D Premium Percentage,"Identifies the portion of the Part D premium subsidized, based on a sliding scale linked to the Federal Poverty Level (FPL) percentage. If the person is under 135% FPL the premium subsidy percent will be 100%. If the person is 136-140% FPL the premium subsidy percent will be 75%. If the person is 141-145% FPL the premium subsidy will be 50%. If the person is 146-149% FPL the premium subsidy will be 25%.",Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-LIS-PTD-PRM-PCT').value,100,V2_MDCR_BENE_LIS,BENE_LIS_PTD_PRM_PCT,,,,CST_SHR_GRP_CD_01;CST_SHR_GRP_CD_02;CST_SHR_GRP_CD_03;CST_SHR_GRP_CD_04;CST_SHR_GRP_CD_05;CST_SHR_GRP_CD_06;CST_SHR_GRP_CD_07;CST_SHR_GRP_CD_08;CST_SHR_GRP_CD_09;CST_SHR_GRP_CD_10;CST_SHR_GRP_CD_11;CST_SHR_GRP_CD_12,
|
||||
370,Coverage,PartD,Contract PBP Segment Number,Identification number for a portion of the PBP designated as a Segment. Must be present.,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/CNTRCT-PBP-SGMT-NUM').value,000,V2_MDCR_CNTRCT_PBP_SGMT,CNTRCT_PBP_SGMT_NUM,,,,PTD_SGMT_ID_01;PTD_SGMT_ID_02;PTD_SGMT_ID_03;PTD_SGMT_ID_04;PTD_SGMT_ID_05;PTD_SGMT_ID_06;PTD_SGMT_ID_07;PTD_SGMT_ID_08;PTD_SGMT_ID_09;PTD_SGMT_ID_10;PTD_SGMT_ID_11;PTD_SGMT_ID_12,
|
||||
371,Coverage,PartD,Retiree Drug Subsidy Switch,A switch indicating that enrollment in Part D was requested by the beneficiary who has employer subsidy enrollment.,Coverage.extension.where(url='https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-EMPLR-SBSDY-SW').value,"{'system': 'https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-EMPLR-SBSDY-SW', 'code': 'Y'}",V2_MDCR_BENE_MAPD_ENRLMT,BENE_ENRLMT_EMPLR_SBSDY_SW,,https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-EMPLR-SBSDY-SW,,RDS_IND_01;RDS_IND_02;RDS_IND_03;RDS_IND_04;RDS_IND_05;RDS_IND_06;RDS_IND_07;RDS_IND_08;RDS_IND_09;RDS_IND_10;RDS_IND_11;RDS_IND_12,
|
||||
|
114
dev/vendor/MANIFEST.toml
vendored
Normal file
114
dev/vendor/MANIFEST.toml
vendored
Normal file
@@ -0,0 +1,114 @@
|
||||
# Sparse vendoring manifest — regenerate with
|
||||
# uv run python dev/scripts/vendor_bcda_app.py --sync
|
||||
# Check for upstream drift (no changes written) with --check.
|
||||
|
||||
[[source]]
|
||||
name = "bcda-app"
|
||||
kind = "github"
|
||||
repo = "CMSgov/bcda-app"
|
||||
ref = "main"
|
||||
commit = "7decdcc2b813a8007bddee35b55fa3991df0bec4"
|
||||
license = "LICENSE"
|
||||
files = [
|
||||
"LICENSE",
|
||||
"swagger.json",
|
||||
"bcda/api/requests.go",
|
||||
"bcda/web/middleware/validation.go",
|
||||
"bcda/web/middleware/validation_test.go",
|
||||
"bcda/api/v3/api.go",
|
||||
"bcda/api/v3/api_test.go",
|
||||
"bcda/responseutils/v3/writer.go",
|
||||
"bcda/responseutils/v3/writer_test.go",
|
||||
"test/postman_test/BCDA_V3_Tests.postman_collection.json",
|
||||
"test/postman_test/sandbox.postman_environment.json",
|
||||
"shared_files/gzip_feature_test/corrupt_gz_file.ndjson",
|
||||
"shared_files/gzip_feature_test/test_gzip_encoded.ndjson",
|
||||
"shared_files/gzip_feature_test/test_no_encoding.ndjson",
|
||||
"conf/configs/sandbox.yml",
|
||||
"conf/configs/prod.yml",
|
||||
"bcda/fhir/param.go",
|
||||
"bcda/client/bluebutton.go",
|
||||
"bcda/service/service.go",
|
||||
"bcda/constants/constants.go",
|
||||
"bcda/constants/types.go",
|
||||
"bcda/models/models.go",
|
||||
]
|
||||
|
||||
[[source]]
|
||||
name = "bcda-static-site"
|
||||
kind = "github"
|
||||
repo = "CMSgov/bcda-static-site"
|
||||
ref = "main"
|
||||
commit = "cd14babf8eca7247c35a6ba63ae5c221764ba236"
|
||||
license = "LICENSE"
|
||||
files = [
|
||||
"LICENSE",
|
||||
"src/_pages/api-documentation/filter-claims-data.md",
|
||||
"src/_pages/api-documentation/access-claims-data.md",
|
||||
"src/_pages/api-documentation/how-to-migrate-v3.md",
|
||||
"src/_pages/bcda-data/partially-adjudicated-claims-data.md",
|
||||
"src/_pages/bcda-data/comparison-bcda-cclf-files.md",
|
||||
"src/_pages/support/faqs.md",
|
||||
"src/_announcements/2025-py-data-limit-ended.md",
|
||||
"src/_announcements/bcda-data-limited-in-jan-2026-for-yearly-updates.md",
|
||||
"src/_announcements/bcda-launches-v3.md",
|
||||
"src/_announcements/bcda-v3-expanded-access-general-availability.md",
|
||||
"src/_announcements/bcda-performance-improvement-to-speed-up-job-requests.md",
|
||||
]
|
||||
|
||||
[[source]]
|
||||
name = "bcda-site"
|
||||
kind = "https"
|
||||
base = "https://bcda.cms.gov/assets/downloads/"
|
||||
files = [
|
||||
"BCDA_v3_Data_Dictionary.xlsx",
|
||||
"BCDA_v2_Data_Dictionary.xlsx",
|
||||
"BCDA_Partially_Adjudicated_Data_Dictionary.xlsx",
|
||||
"unmapped-fields-between-cclf-and-bcda.xlsx",
|
||||
"v3_Patient.ndjson",
|
||||
"v3_Coverage.ndjson",
|
||||
"v3_ExplanationOfBenefit.ndjson",
|
||||
]
|
||||
|
||||
[sha256]
|
||||
"bcda-app/LICENSE" = "6d489af6292662d9e36d34ce49423784984a5f6e41d7b58f49b01264df59fa03"
|
||||
"bcda-app/bcda/api/requests.go" = "3ae1b33dec6e0d9c2c93352f3da7a713ffeeda545e5be4d00643b43e65569456"
|
||||
"bcda-app/bcda/api/v3/api.go" = "18a1dbc627d01a4d9f53113a6e45671494445da3fb8f9c877437f4ed8d62d871"
|
||||
"bcda-app/bcda/api/v3/api_test.go" = "97c0ca1d0af2f5fe2fa68102b8c6d6d9709f2775ed58cd291886e62e66cd869c"
|
||||
"bcda-app/bcda/client/bluebutton.go" = "e70841e241d3b1a8a6b9dff6d029fdfc28d87f007ca86a4e7e0e202d3b729d62"
|
||||
"bcda-app/bcda/constants/constants.go" = "bbfbcaf66ed1e9d4cf8160a2d3b18c9cc38a47444868181e36643e3d8f74fdef"
|
||||
"bcda-app/bcda/constants/types.go" = "dafa4f745ef57c71289d65e05b642dd9e165db98a53ec2f3e6865ce2c9bf2b8c"
|
||||
"bcda-app/bcda/fhir/param.go" = "693c26317f01741bfc5bd62b7955438858459e607b37e3caa8a56bbff7088ada"
|
||||
"bcda-app/bcda/models/models.go" = "496a4c0212de5a7f86930c7b00b8d880f89b6708b29da2e99d015d46ef3b25df"
|
||||
"bcda-app/bcda/responseutils/v3/writer.go" = "d5bb9e8dfcad75bc3cf5cadf0f811e1b16d4e09cd0755970517ab3ab0867f56c"
|
||||
"bcda-app/bcda/responseutils/v3/writer_test.go" = "9056a6f0c4e6dc747375e232a982064d3e616b9832baa90f94c7bbe241bd58bc"
|
||||
"bcda-app/bcda/service/service.go" = "f98c770026ec19cea0543937dc402f8c59a4be5415fac9632925ef8e78465158"
|
||||
"bcda-app/bcda/web/middleware/validation.go" = "dc4dfdf730c24961746f0b8f576b5a1cf912d7cec5e237401126738e6a82ed6a"
|
||||
"bcda-app/bcda/web/middleware/validation_test.go" = "c16f268ae3186b6881aa06ef1374d93117a969e87eafd13edcde0ac766a6b5e1"
|
||||
"bcda-app/conf/configs/prod.yml" = "e644db4b609ce3f72a2b281db6a1bd24fe9648e8013a1de570710500173f0bc5"
|
||||
"bcda-app/conf/configs/sandbox.yml" = "a954b23194796658ddcfc8282ef3de488356a6076ed84266cfce6959df68e7f5"
|
||||
"bcda-app/shared_files/gzip_feature_test/corrupt_gz_file.ndjson" = "41b355a94e96ef4ed92c6fde19ca67d7341a5f95bd67e6b1e8a65f1b83be2b36"
|
||||
"bcda-app/shared_files/gzip_feature_test/test_gzip_encoded.ndjson" = "b5a7caf480fec615a1487f7bde4974f373395d98f245598c146844b1003f9a8f"
|
||||
"bcda-app/shared_files/gzip_feature_test/test_no_encoding.ndjson" = "6a0f9ee6a9dc1764a718f6c509d5758c315789ad5e4cfba5c39a3343fe6eca8f"
|
||||
"bcda-app/swagger.json" = "3565bdea5a5f0817b3abb95432645ef15e32179dbc18fc2a4d3de434d293e03f"
|
||||
"bcda-app/test/postman_test/BCDA_V3_Tests.postman_collection.json" = "fbb0c523f078f215bee178a9010fd331287c3b52ea6d712ea328e392ed77c237"
|
||||
"bcda-app/test/postman_test/sandbox.postman_environment.json" = "6d1866a8ae06185390ff80180bff0c38d93f591d71066d51b6a1f3a80cf6377c"
|
||||
"bcda-site/BCDA_Partially_Adjudicated_Data_Dictionary.xlsx" = "9451a3988d7d1c8c3375c5a64c370bd19f35abc0febe3c0c8d36927d4bb1f233"
|
||||
"bcda-site/BCDA_v2_Data_Dictionary.xlsx" = "9c91eae07869f573c5578da9606336b00f1768180a947e2c4275864877f88810"
|
||||
"bcda-site/BCDA_v3_Data_Dictionary.xlsx" = "335547374a66ce88b4c88cf0657ec09f5e731af6b7ede998e0b162f6594ec3bc"
|
||||
"bcda-site/unmapped-fields-between-cclf-and-bcda.xlsx" = "9818933895ce58bed27f9208758f7edd0594a6f6bc48770726b8f89c6af01313"
|
||||
"bcda-site/v3_Coverage.ndjson" = "cbe8820255f7a15d896b9098a33422d1e012cacc059316ac4894272132ff2986"
|
||||
"bcda-site/v3_ExplanationOfBenefit.ndjson" = "fafd76d16c335de44d1b28c388ac3de873809d3b2c429612ec6b8741db0fa82f"
|
||||
"bcda-site/v3_Patient.ndjson" = "7eb427266676415c6beee0fa705d7ad31d2335971f711bdfe0c63712392ba351"
|
||||
"bcda-static-site/LICENSE" = "6d489af6292662d9e36d34ce49423784984a5f6e41d7b58f49b01264df59fa03"
|
||||
"bcda-static-site/src/_announcements/2025-py-data-limit-ended.md" = "ff8014d6f2bbe232d176c62ea7999ad941fb584444242524b2e3615b2b8203d6"
|
||||
"bcda-static-site/src/_announcements/bcda-data-limited-in-jan-2026-for-yearly-updates.md" = "bcf226627c84fe91c99f47c3987b426806ed458da474b7ce38e1a3029209410e"
|
||||
"bcda-static-site/src/_announcements/bcda-launches-v3.md" = "efadb9f0a157844ff5b818273eb53fb5c719f12db35bc0f80384fffc3ab4f99c"
|
||||
"bcda-static-site/src/_announcements/bcda-performance-improvement-to-speed-up-job-requests.md" = "9729ffa12daac14a6ae398fb841a0b0df414046cd5fb625ecf1eb862069313ba"
|
||||
"bcda-static-site/src/_announcements/bcda-v3-expanded-access-general-availability.md" = "e0404747067c0c2723ec49b357eba68f5b3d8f934bf4c9221b1b3810cbbf44ff"
|
||||
"bcda-static-site/src/_pages/api-documentation/access-claims-data.md" = "c48ef7cbc7a9fd54161758245d8de0ce3b81f030453da7ecb2f37ccc4eea6e57"
|
||||
"bcda-static-site/src/_pages/api-documentation/filter-claims-data.md" = "e098ac1af2283796a1b64eb9b30c396a98f281e7a13de0f74a926f13c7412a69"
|
||||
"bcda-static-site/src/_pages/api-documentation/how-to-migrate-v3.md" = "b07d928b182e41cfef65eb50a9d04d846cbca2120b8d4eab472b4d2df2689d76"
|
||||
"bcda-static-site/src/_pages/bcda-data/comparison-bcda-cclf-files.md" = "c87000f64a7a16e1180d654881ce561ad7c63885f9228c8d78be10e703792a28"
|
||||
"bcda-static-site/src/_pages/bcda-data/partially-adjudicated-claims-data.md" = "cc65fa79d657b6c41d5c989b830bf7e64adb62270cd7fbc0728123265d5423d8"
|
||||
"bcda-static-site/src/_pages/support/faqs.md" = "f8655fb91ba744485a70adcf08491e04ee059ace7e7054769059b75cfbfed875"
|
||||
121
dev/vendor/bcda-app/LICENSE
vendored
Normal file
121
dev/vendor/bcda-app/LICENSE
vendored
Normal file
@@ -0,0 +1,121 @@
|
||||
Creative Commons Legal Code
|
||||
|
||||
CC0 1.0 Universal
|
||||
|
||||
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
|
||||
LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
|
||||
ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
|
||||
INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
|
||||
REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
|
||||
PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
|
||||
THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
|
||||
HEREUNDER.
|
||||
|
||||
Statement of Purpose
|
||||
|
||||
The laws of most jurisdictions throughout the world automatically confer
|
||||
exclusive Copyright and Related Rights (defined below) upon the creator
|
||||
and subsequent owner(s) (each and all, an "owner") of an original work of
|
||||
authorship and/or a database (each, a "Work").
|
||||
|
||||
Certain owners wish to permanently relinquish those rights to a Work for
|
||||
the purpose of contributing to a commons of creative, cultural and
|
||||
scientific works ("Commons") that the public can reliably and without fear
|
||||
of later claims of infringement build upon, modify, incorporate in other
|
||||
works, reuse and redistribute as freely as possible in any form whatsoever
|
||||
and for any purposes, including without limitation commercial purposes.
|
||||
These owners may contribute to the Commons to promote the ideal of a free
|
||||
culture and the further production of creative, cultural and scientific
|
||||
works, or to gain reputation or greater distribution for their Work in
|
||||
part through the use and efforts of others.
|
||||
|
||||
For these and/or other purposes and motivations, and without any
|
||||
expectation of additional consideration or compensation, the person
|
||||
associating CC0 with a Work (the "Affirmer"), to the extent that he or she
|
||||
is an owner of Copyright and Related Rights in the Work, voluntarily
|
||||
elects to apply CC0 to the Work and publicly distribute the Work under its
|
||||
terms, with knowledge of his or her Copyright and Related Rights in the
|
||||
Work and the meaning and intended legal effect of CC0 on those rights.
|
||||
|
||||
1. Copyright and Related Rights. A Work made available under CC0 may be
|
||||
protected by copyright and related or neighboring rights ("Copyright and
|
||||
Related Rights"). Copyright and Related Rights include, but are not
|
||||
limited to, the following:
|
||||
|
||||
i. the right to reproduce, adapt, distribute, perform, display,
|
||||
communicate, and translate a Work;
|
||||
ii. moral rights retained by the original author(s) and/or performer(s);
|
||||
iii. publicity and privacy rights pertaining to a person's image or
|
||||
likeness depicted in a Work;
|
||||
iv. rights protecting against unfair competition in regards to a Work,
|
||||
subject to the limitations in paragraph 4(a), below;
|
||||
v. rights protecting the extraction, dissemination, use and reuse of data
|
||||
in a Work;
|
||||
vi. database rights (such as those arising under Directive 96/9/EC of the
|
||||
European Parliament and of the Council of 11 March 1996 on the legal
|
||||
protection of databases, and under any national implementation
|
||||
thereof, including any amended or successor version of such
|
||||
directive); and
|
||||
vii. other similar, equivalent or corresponding rights throughout the
|
||||
world based on applicable law or treaty, and any national
|
||||
implementations thereof.
|
||||
|
||||
2. Waiver. To the greatest extent permitted by, but not in contravention
|
||||
of, applicable law, Affirmer hereby overtly, fully, permanently,
|
||||
irrevocably and unconditionally waives, abandons, and surrenders all of
|
||||
Affirmer's Copyright and Related Rights and associated claims and causes
|
||||
of action, whether now known or unknown (including existing as well as
|
||||
future claims and causes of action), in the Work (i) in all territories
|
||||
worldwide, (ii) for the maximum duration provided by applicable law or
|
||||
treaty (including future time extensions), (iii) in any current or future
|
||||
medium and for any number of copies, and (iv) for any purpose whatsoever,
|
||||
including without limitation commercial, advertising or promotional
|
||||
purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
|
||||
member of the public at large and to the detriment of Affirmer's heirs and
|
||||
successors, fully intending that such Waiver shall not be subject to
|
||||
revocation, rescission, cancellation, termination, or any other legal or
|
||||
equitable action to disrupt the quiet enjoyment of the Work by the public
|
||||
as contemplated by Affirmer's express Statement of Purpose.
|
||||
|
||||
3. Public License Fallback. Should any part of the Waiver for any reason
|
||||
be judged legally invalid or ineffective under applicable law, then the
|
||||
Waiver shall be preserved to the maximum extent permitted taking into
|
||||
account Affirmer's express Statement of Purpose. In addition, to the
|
||||
extent the Waiver is so judged Affirmer hereby grants to each affected
|
||||
person a royalty-free, non transferable, non sublicensable, non exclusive,
|
||||
irrevocable and unconditional license to exercise Affirmer's Copyright and
|
||||
Related Rights in the Work (i) in all territories worldwide, (ii) for the
|
||||
maximum duration provided by applicable law or treaty (including future
|
||||
time extensions), (iii) in any current or future medium and for any number
|
||||
of copies, and (iv) for any purpose whatsoever, including without
|
||||
limitation commercial, advertising or promotional purposes (the
|
||||
"License"). The License shall be deemed effective as of the date CC0 was
|
||||
applied by Affirmer to the Work. Should any part of the License for any
|
||||
reason be judged legally invalid or ineffective under applicable law, such
|
||||
partial invalidity or ineffectiveness shall not invalidate the remainder
|
||||
of the License, and in such case Affirmer hereby affirms that he or she
|
||||
will not (i) exercise any of his or her remaining Copyright and Related
|
||||
Rights in the Work or (ii) assert any associated claims and causes of
|
||||
action with respect to the Work, in either case contrary to Affirmer's
|
||||
express Statement of Purpose.
|
||||
|
||||
4. Limitations and Disclaimers.
|
||||
|
||||
a. No trademark or patent rights held by Affirmer are waived, abandoned,
|
||||
surrendered, licensed or otherwise affected by this document.
|
||||
b. Affirmer offers the Work as-is and makes no representations or
|
||||
warranties of any kind concerning the Work, express, implied,
|
||||
statutory or otherwise, including without limitation warranties of
|
||||
title, merchantability, fitness for a particular purpose, non
|
||||
infringement, or the absence of latent or other defects, accuracy, or
|
||||
the present or absence of errors, whether or not discoverable, all to
|
||||
the greatest extent permissible under applicable law.
|
||||
c. Affirmer disclaims responsibility for clearing rights of other persons
|
||||
that may apply to the Work or any use thereof, including without
|
||||
limitation any person's Copyright and Related Rights in the Work.
|
||||
Further, Affirmer disclaims responsibility for obtaining any necessary
|
||||
consents, permissions or other rights required for any use of the
|
||||
Work.
|
||||
d. Affirmer understands and acknowledges that Creative Commons is not a
|
||||
party to this document and has no duty or obligation with respect to
|
||||
this CC0 or use of the Work.
|
||||
957
dev/vendor/bcda-app/bcda/api/requests.go
vendored
Normal file
957
dev/vendor/bcda-app/bcda/api/requests.go
vendored
Normal file
@@ -0,0 +1,957 @@
|
||||
package api
|
||||
|
||||
import (
|
||||
"context"
|
||||
"database/sql"
|
||||
"encoding/json"
|
||||
goerrors "errors"
|
||||
"fmt"
|
||||
"os"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"github.com/go-chi/chi/v5"
|
||||
"github.com/sirupsen/logrus"
|
||||
|
||||
"github.com/pkg/errors"
|
||||
|
||||
"net/http"
|
||||
"time"
|
||||
|
||||
"github.com/pborman/uuid"
|
||||
|
||||
"github.com/CMSgov/bcda-app/bcda/auth"
|
||||
"github.com/CMSgov/bcda-app/bcda/constants"
|
||||
"github.com/CMSgov/bcda-app/bcda/fhir"
|
||||
"github.com/CMSgov/bcda-app/bcda/models"
|
||||
"github.com/CMSgov/bcda-app/bcda/models/postgres"
|
||||
responseutils "github.com/CMSgov/bcda-app/bcda/responseutils"
|
||||
responseutilsv2 "github.com/CMSgov/bcda-app/bcda/responseutils/v2"
|
||||
responseutilsv3 "github.com/CMSgov/bcda-app/bcda/responseutils/v3"
|
||||
"github.com/CMSgov/bcda-app/bcda/service"
|
||||
"github.com/CMSgov/bcda-app/bcda/servicemux"
|
||||
"github.com/CMSgov/bcda-app/bcda/utils"
|
||||
"github.com/CMSgov/bcda-app/bcda/web/middleware"
|
||||
"github.com/CMSgov/bcda-app/bcdaworker/queueing"
|
||||
"github.com/CMSgov/bcda-app/bcdaworker/queueing/worker_types"
|
||||
"github.com/CMSgov/bcda-app/conf"
|
||||
"github.com/CMSgov/bcda-app/log"
|
||||
m "github.com/CMSgov/bcda-app/middleware"
|
||||
pgxv5Pool "github.com/jackc/pgx/v5/pgxpool"
|
||||
)
|
||||
|
||||
type Handler struct {
|
||||
JobTimeout time.Duration
|
||||
Enq queueing.Enqueuer
|
||||
Svc service.Service
|
||||
|
||||
supportedDataTypes map[string]service.ClaimType
|
||||
supportedResourceTypes []string
|
||||
supportedStatuses map[models.JobStatus]struct{}
|
||||
bbBasePath string
|
||||
apiVersion string
|
||||
RespWriter fhirResponseWriter
|
||||
// cfg *service.Config
|
||||
|
||||
// Needed to have access to the repository/db for lookup needed in the bulkRequest.
|
||||
// TODO (BCDA-3412): Remove this reference once we've captured all of the necessary
|
||||
// logic into a service method.
|
||||
r models.Repository
|
||||
}
|
||||
|
||||
type fhirResponseWriter interface {
|
||||
Success(context.Context, http.ResponseWriter, int, string, string)
|
||||
Exception(context.Context, http.ResponseWriter, int, string, string)
|
||||
NotFound(context.Context, http.ResponseWriter, int, string, string)
|
||||
OpOutcome(context.Context, http.ResponseWriter, int, string, string)
|
||||
JobsBundle(context.Context, http.ResponseWriter, []*models.Job, string)
|
||||
}
|
||||
|
||||
func NewHandler(dataTypes map[string]service.ClaimType, basePath string, apiVersion string, db *sql.DB, pool *pgxv5Pool.Pool) *Handler {
|
||||
return newHandler(dataTypes, basePath, apiVersion, db, pool)
|
||||
}
|
||||
|
||||
func newHandler(dataTypes map[string]service.ClaimType, basePath string, apiVersion string, db *sql.DB, pool *pgxv5Pool.Pool) *Handler {
|
||||
h := &Handler{JobTimeout: time.Hour * time.Duration(utils.GetEnvInt("ARCHIVE_THRESHOLD_HR", 24))}
|
||||
|
||||
h.Enq = queueing.NewEnqueuer(db, pool)
|
||||
|
||||
cfg, err := service.LoadConfig()
|
||||
if err != nil {
|
||||
log.API.Fatalf("Failed to load service config. Err: %v", err)
|
||||
}
|
||||
if len(cfg.ACOConfigs) == 0 {
|
||||
log.API.Fatalf("no ACO configs found, these are required for processing logic")
|
||||
}
|
||||
|
||||
repository := postgres.NewRepository(db)
|
||||
h.r = repository
|
||||
h.Svc = service.NewService(repository, cfg, basePath)
|
||||
|
||||
h.supportedDataTypes = dataTypes
|
||||
|
||||
// Build string array of supported Resource types
|
||||
h.supportedResourceTypes = make([]string, 0, len(h.supportedDataTypes))
|
||||
|
||||
for k := range h.supportedDataTypes {
|
||||
h.supportedResourceTypes = append(h.supportedResourceTypes, k)
|
||||
}
|
||||
|
||||
h.supportedStatuses = make(map[models.JobStatus]struct{}, len(models.AllJobStatuses))
|
||||
for _, r := range models.AllJobStatuses {
|
||||
h.supportedStatuses[r] = struct{}{}
|
||||
}
|
||||
|
||||
h.bbBasePath = basePath
|
||||
h.apiVersion = apiVersion
|
||||
|
||||
switch h.apiVersion {
|
||||
case "v1":
|
||||
h.RespWriter = responseutils.NewFhirResponseWriter()
|
||||
case "v2":
|
||||
h.RespWriter = responseutilsv2.NewFhirResponseWriter()
|
||||
case constants.V3Version:
|
||||
h.RespWriter = responseutilsv3.NewFhirResponseWriter()
|
||||
default:
|
||||
log.API.Fatalf("unexpected API version: %s", h.apiVersion)
|
||||
}
|
||||
|
||||
return h
|
||||
}
|
||||
|
||||
func (h *Handler) BulkPatientRequest(w http.ResponseWriter, r *http.Request) {
|
||||
reqType := constants.DefaultRequest // historical data for new beneficiaries will not be retrieved (this capability is only available with /Group)
|
||||
h.bulkRequest(w, r, reqType)
|
||||
}
|
||||
|
||||
func (h *Handler) BulkGroupRequest(w http.ResponseWriter, r *http.Request) {
|
||||
const (
|
||||
groupAll = "all"
|
||||
groupRunout = "runout"
|
||||
)
|
||||
reqType := constants.DefaultRequest
|
||||
groupID := chi.URLParam(r, "groupId")
|
||||
ctx := r.Context()
|
||||
|
||||
switch groupID {
|
||||
case groupAll:
|
||||
// Set flag to retrieve new beneficiaries' historical data if _since param is provided and feature is turned on
|
||||
_, ok := r.URL.Query()["_since"]
|
||||
if ok && utils.GetEnvBool("BCDA_ENABLE_NEW_GROUP", false) {
|
||||
reqType = constants.RetrieveNewBeneHistData
|
||||
}
|
||||
case groupRunout:
|
||||
if utils.GetEnvBool("BCDA_ENABLE_RUNOUT", true) {
|
||||
reqType = constants.Runout
|
||||
break
|
||||
}
|
||||
fallthrough
|
||||
default:
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Invalid group ID (%+v)", responseutils.RequestErr, groupID),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
h.RespWriter.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.RequestErr, "Invalid group ID")
|
||||
return
|
||||
}
|
||||
h.bulkRequest(w, r, reqType)
|
||||
}
|
||||
|
||||
func (h *Handler) JobsStatus(w http.ResponseWriter, r *http.Request) {
|
||||
var (
|
||||
ad auth.AuthData
|
||||
statusTypes []models.JobStatus
|
||||
err error
|
||||
)
|
||||
statusTypes = models.AllJobStatuses // default request to retrieve jobs with all statuses
|
||||
params, ok := r.URL.Query()["_status"]
|
||||
ctx := r.Context()
|
||||
|
||||
if ok {
|
||||
statusMap := make(map[string]struct{})
|
||||
rawStatusTypes := strings.Split(params[0], ",")
|
||||
statusTypes = nil
|
||||
|
||||
// validate no duplicate status types
|
||||
for _, status := range rawStatusTypes {
|
||||
if _, ok := statusMap[status]; !ok {
|
||||
statusMap[status] = struct{}{}
|
||||
statusTypes = append(statusTypes, models.JobStatus(status))
|
||||
} else {
|
||||
errMsg := fmt.Sprintf("Repeated status type %s", status)
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %+v", responseutils.RequestErr, errMsg),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
h.RespWriter.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.RequestErr, errMsg)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
// validate status types provided match our valid list of statuses
|
||||
if err = h.validateStatuses(statusTypes); err != nil {
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %+v", responseutils.RequestErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
h.RespWriter.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.RequestErr, err.Error())
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
if ad, err = GetAuthDataFromCtx(r); err != nil {
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %+v", responseutils.TokenErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusUnauthorized},
|
||||
)
|
||||
h.RespWriter.OpOutcome(ctx, w, http.StatusUnauthorized, responseutils.TokenErr, "")
|
||||
return
|
||||
}
|
||||
|
||||
jobs, err := h.Svc.GetJobs(ctx, uuid.Parse(ad.ACOID), statusTypes...)
|
||||
if err != nil {
|
||||
if ok := goerrors.As(err, &service.JobsNotFoundError{}); ok {
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %+v", responseutils.DbErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusNotFound},
|
||||
)
|
||||
h.RespWriter.NotFound(ctx, w, http.StatusNotFound, responseutils.DbErr, err.Error())
|
||||
} else {
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %+v", responseutils.InternalErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusInternalServerError},
|
||||
)
|
||||
h.RespWriter.Exception(ctx, w, http.StatusInternalServerError, responseutils.InternalErr, "")
|
||||
}
|
||||
}
|
||||
|
||||
scheme := "http"
|
||||
if servicemux.IsHTTPS(r) {
|
||||
scheme = "https"
|
||||
}
|
||||
host := fmt.Sprintf("%s://%s", scheme, r.Host)
|
||||
|
||||
// pass in the ctx here and log with the ctx logger
|
||||
h.RespWriter.JobsBundle(ctx, w, jobs, host)
|
||||
}
|
||||
|
||||
func (h *Handler) validateStatuses(statusTypes []models.JobStatus) error {
|
||||
for _, statusType := range statusTypes {
|
||||
if _, ok := h.supportedStatuses[statusType]; !ok {
|
||||
return fmt.Errorf("invalid status type %s. Supported types %s", statusType, h.supportedStatuses)
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (h *Handler) JobStatus(w http.ResponseWriter, r *http.Request) {
|
||||
logger := log.GetCtxLogger(r.Context())
|
||||
jobIDStr := chi.URLParam(r, "jobID")
|
||||
ctx := r.Context()
|
||||
|
||||
jobID, err := strconv.ParseUint(jobIDStr, 10, 64)
|
||||
if err != nil {
|
||||
err = errors.Wrap(err, "cannot convert jobID to uint")
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %+v", responseutils.RequestErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
//We don't need to return the full error to a consumer.
|
||||
//We pass a bad request header (400) for this exception due to the inputs always being invalid for our purposes
|
||||
h.RespWriter.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.RequestErr, "could not parse job id")
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
job, jobKeys, err := h.Svc.GetJobAndKeys(ctx, uint(jobID))
|
||||
if err != nil {
|
||||
if errors.Is(err, sql.ErrNoRows) {
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Requested job not found. Error: %+v", responseutils.DbErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusNotFound, "job_id": jobID},
|
||||
)
|
||||
h.RespWriter.NotFound(ctx, w, http.StatusNotFound, responseutils.DbErr, "Job not found.")
|
||||
} else {
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Error attempting to request job. Error: %+v", responseutils.InternalErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusInternalServerError, "job_id": jobID},
|
||||
)
|
||||
h.RespWriter.Exception(ctx, w, http.StatusInternalServerError, responseutils.InternalErr, "Error trying to fetch job. Please try again.")
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
switch job.Status {
|
||||
case models.JobStatusFailed, models.JobStatusFailedExpired:
|
||||
logger.Error(job.Status)
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Status: %+v", responseutils.JobFailed, job.Status),
|
||||
logrus.Fields{"resp_status": http.StatusInternalServerError, "job_id": jobID},
|
||||
)
|
||||
h.RespWriter.Exception(ctx, w, http.StatusInternalServerError, responseutils.JobFailed, responseutils.DetailJobFailed)
|
||||
case models.JobStatusPending, models.JobStatusInProgress:
|
||||
completedSubJobs := make(map[int64]struct{})
|
||||
for _, key := range jobKeys {
|
||||
if key != nil && key.QueJobID != nil {
|
||||
completedSubJobs[*key.QueJobID] = struct{}{}
|
||||
}
|
||||
}
|
||||
w.Header().Set("X-Progress", job.StatusMessage(len(completedSubJobs)))
|
||||
w.WriteHeader(http.StatusAccepted)
|
||||
return
|
||||
case models.JobStatusCompleted:
|
||||
// If the job should be expired, but the cleanup job hasn't run for some reason, still respond with 410
|
||||
if job.UpdatedAt.Add(h.JobTimeout).Before(time.Now()) {
|
||||
w.Header().Set("Expires", job.UpdatedAt.Add(h.JobTimeout).String())
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Job is expired but was not archived in time", responseutils.NotFoundErr),
|
||||
logrus.Fields{"resp_status": http.StatusGone, "job_id": jobID},
|
||||
)
|
||||
h.RespWriter.OpOutcome(ctx, w, http.StatusGone, responseutils.NotFoundErr, "")
|
||||
return
|
||||
}
|
||||
w.Header().Set("Content-Type", constants.JsonContentType)
|
||||
w.Header().Set("Expires", job.UpdatedAt.Add(h.JobTimeout).String())
|
||||
scheme := "http"
|
||||
if servicemux.IsHTTPS(r) {
|
||||
scheme = "https"
|
||||
}
|
||||
|
||||
rb := BulkResponseBody{
|
||||
TransactionTime: job.TransactionTime,
|
||||
RequestURL: job.RequestURL,
|
||||
RequiresAccessToken: true,
|
||||
Files: []FileItem{},
|
||||
Errors: []FileItem{},
|
||||
JobID: job.ID,
|
||||
}
|
||||
|
||||
// Add warnings-and-info file to Errors array if it exists
|
||||
filePath := fmt.Sprintf("%s/%d/%s", conf.GetEnv("FHIR_PAYLOAD_DIR"), jobID, constants.WarningsAndInfoFileName)
|
||||
if _, err := os.Stat(filePath); !os.IsNotExist(err) { // #nosec G703
|
||||
rb.Errors = append(rb.Errors, FileItem{
|
||||
Type: "OperationOutcome",
|
||||
URL: fmt.Sprintf("%s://%s/data/%d/%s", scheme, r.Host, jobID, constants.WarningsAndInfoFileName),
|
||||
})
|
||||
}
|
||||
|
||||
for _, jobKey := range jobKeys {
|
||||
if strings.TrimSpace(jobKey.FileName) == models.BlankFileName {
|
||||
continue
|
||||
}
|
||||
|
||||
// data files
|
||||
fi := FileItem{
|
||||
Type: jobKey.ResourceType,
|
||||
URL: fmt.Sprintf("%s://%s/data/%d/%s", scheme, r.Host, jobID, strings.TrimSpace(jobKey.FileName)),
|
||||
}
|
||||
|
||||
// Filter out unwanted files by name, (error files, warning and info file, and empty/blank files)
|
||||
if !strings.Contains(strings.ToLower(jobKey.FileName), "-error.ndjson") &&
|
||||
jobKey.FileName != constants.WarningsAndInfoFileName &&
|
||||
jobKey.FileName != models.BlankFileName {
|
||||
rb.Files = append(rb.Files, fi)
|
||||
}
|
||||
|
||||
// Error files
|
||||
errFileName := strings.Split(jobKey.FileName, ".")[0]
|
||||
errFilePath := fmt.Sprintf("%s/%d/%s-error.ndjson", conf.GetEnv("FHIR_PAYLOAD_DIR"), jobID, errFileName)
|
||||
|
||||
// Check if the error file exists
|
||||
if _, err := os.Stat(errFilePath); !os.IsNotExist(err) { // #nosec G703
|
||||
errFI := FileItem{
|
||||
Type: "OperationOutcome",
|
||||
URL: fmt.Sprintf("%s://%s/data/%d/%s-error.ndjson", scheme, r.Host, jobID, errFileName),
|
||||
}
|
||||
rb.Errors = append(rb.Errors, errFI)
|
||||
}
|
||||
}
|
||||
|
||||
jsonData, err := json.Marshal(rb)
|
||||
if err != nil {
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Error marshaling response body: %+v", responseutils.InternalErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusInternalServerError, "job_id": jobID},
|
||||
)
|
||||
h.RespWriter.Exception(ctx, w, http.StatusInternalServerError, responseutils.InternalErr, "")
|
||||
return
|
||||
}
|
||||
|
||||
_, err = w.Write([]byte(jsonData))
|
||||
if err != nil {
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Error writing response body: %+v", responseutils.InternalErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusInternalServerError, "job_id": jobID},
|
||||
)
|
||||
h.RespWriter.Exception(ctx, w, http.StatusInternalServerError, responseutils.InternalErr, "")
|
||||
return
|
||||
}
|
||||
|
||||
w.WriteHeader(http.StatusOK)
|
||||
case models.JobStatusArchived, models.JobStatusExpired:
|
||||
w.Header().Set("Expires", job.UpdatedAt.Add(h.JobTimeout).String())
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Job is Archived or Expired", responseutils.NotFoundErr),
|
||||
logrus.Fields{"resp_status": http.StatusGone, "job_id": jobID},
|
||||
)
|
||||
h.RespWriter.OpOutcome(ctx, w, http.StatusGone, responseutils.NotFoundErr, "")
|
||||
case models.JobStatusCancelled, models.JobStatusCancelledExpired:
|
||||
h.RespWriter.NotFound(ctx, w, http.StatusNotFound, responseutils.NotFoundErr, "Job has been cancelled.")
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
func (h *Handler) DeleteJob(w http.ResponseWriter, r *http.Request) {
|
||||
jobIDStr := chi.URLParam(r, "jobID")
|
||||
ctx := r.Context()
|
||||
|
||||
jobID, err := strconv.ParseUint(jobIDStr, 10, 64)
|
||||
if err != nil {
|
||||
err = errors.Wrap(err, "cannot convert jobID to uint")
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %+v", responseutils.RequestErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
h.RespWriter.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.RequestErr, err.Error())
|
||||
return
|
||||
}
|
||||
|
||||
_, err = h.Svc.CancelJob(ctx, uint(jobID))
|
||||
if err != nil {
|
||||
switch err {
|
||||
case service.ErrJobNotCancellable:
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Job is not cancellable", responseutils.DeletedErr),
|
||||
logrus.Fields{"resp_status": http.StatusGone, "job_id": jobID},
|
||||
)
|
||||
h.RespWriter.OpOutcome(ctx, w, http.StatusGone, responseutils.DeletedErr, err.Error())
|
||||
return
|
||||
default:
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %+v", responseutils.DbErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusInternalServerError, "job_id": jobID},
|
||||
)
|
||||
h.RespWriter.Exception(ctx, w, http.StatusInternalServerError, responseutils.DbErr, err.Error())
|
||||
return
|
||||
}
|
||||
}
|
||||
h.RespWriter.Success(ctx, w, http.StatusAccepted, "", "Job files will be designated for deletion")
|
||||
}
|
||||
|
||||
type AttributionFileStatus struct {
|
||||
Timestamp time.Time `json:"timestamp"`
|
||||
Type string `json:"type"`
|
||||
}
|
||||
|
||||
type AttributionFileStatusResponse struct {
|
||||
IngestionDates []AttributionFileStatus `json:"ingestion_dates"`
|
||||
ExpirationDates []AttributionFileStatus `json:"expiration_dates"`
|
||||
}
|
||||
|
||||
func (h *Handler) AttributionStatus(w http.ResponseWriter, r *http.Request) {
|
||||
ctx := r.Context()
|
||||
var (
|
||||
ad auth.AuthData
|
||||
resp AttributionFileStatusResponse
|
||||
err error
|
||||
)
|
||||
if ad, err = GetAuthDataFromCtx(r); err != nil {
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %+v", responseutils.TokenErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusUnauthorized},
|
||||
)
|
||||
h.RespWriter.OpOutcome(ctx, w, http.StatusUnauthorized, responseutils.TokenErr, "")
|
||||
return
|
||||
}
|
||||
|
||||
timeConstraints, err := h.Svc.GetTimeConstraints(ctx, ad.CMSID)
|
||||
if err != nil {
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: could not fetch time constraints: %+v", responseutils.InternalErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusInternalServerError},
|
||||
)
|
||||
h.RespWriter.Exception(ctx, w, http.StatusInternalServerError, responseutils.InternalErr, "")
|
||||
return
|
||||
}
|
||||
|
||||
group := chi.URLParam(r, "groupId")
|
||||
notFoundMsg := fmt.Sprintf("Unable to perform export operations for this Group. No up-to-date attribution information is available for Group '%s'. Usually this is due to awaiting new attribution information at the beginning of a Performance Year.", group)
|
||||
|
||||
defaultLastUpdated, defaultExpirationDate, defaultErr := h.Svc.GetAttributionStatusDates(ctx, ad.CMSID, timeConstraints, models.FileTypeDefault)
|
||||
runoutLastUpdated, runoutExpirationDate, runoutErr := h.Svc.GetAttributionStatusDates(ctx, ad.CMSID, timeConstraints, models.FileTypeRunout)
|
||||
|
||||
if defaultErr == nil {
|
||||
resp.IngestionDates = append(resp.IngestionDates, AttributionFileStatus{Type: "last_attribution_update", Timestamp: defaultLastUpdated})
|
||||
resp.ExpirationDates = append(resp.ExpirationDates, AttributionFileStatus{Type: "attribution_access_expiration", Timestamp: defaultExpirationDate})
|
||||
}
|
||||
if runoutErr == nil {
|
||||
resp.IngestionDates = append(resp.IngestionDates, AttributionFileStatus{Type: "last_runout_update", Timestamp: runoutLastUpdated})
|
||||
resp.ExpirationDates = append(resp.ExpirationDates, AttributionFileStatus{Type: "runout_access_expiration", Timestamp: runoutExpirationDate})
|
||||
}
|
||||
_, defaultNotFound := goerrors.AsType[service.CCLFNotFoundError](defaultErr)
|
||||
_, runoutNotFound := goerrors.AsType[service.CCLFNotFoundError](runoutErr)
|
||||
|
||||
if defaultErr != nil && !defaultNotFound { // an unexpected error occurred with the default file status
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: could not fetch default attribution status dates: %+v", responseutils.InternalErr, defaultErr),
|
||||
logrus.Fields{"resp_status": http.StatusInternalServerError},
|
||||
)
|
||||
h.RespWriter.Exception(ctx, w, http.StatusInternalServerError, responseutils.InternalErr, "")
|
||||
return
|
||||
} else if runoutErr != nil && !runoutNotFound { // an unexpected error occurred with the runout file status
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: could not fetch runout attribution status dates: %+v", responseutils.InternalErr, runoutErr),
|
||||
logrus.Fields{"resp_status": http.StatusInternalServerError},
|
||||
)
|
||||
h.RespWriter.Exception(ctx, w, http.StatusInternalServerError, responseutils.InternalErr, "")
|
||||
return
|
||||
} else if defaultNotFound && runoutNotFound { // neither CCLF was found -- return a 404
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %+v Error: %+v", responseutils.NotFoundErr, notFoundMsg, defaultErr),
|
||||
logrus.Fields{"resp_status": http.StatusNotFound},
|
||||
)
|
||||
h.RespWriter.NotFound(ctx, w, http.StatusNotFound, responseutils.NotFoundErr, notFoundMsg)
|
||||
return
|
||||
}
|
||||
|
||||
w.Header().Set("Content-Type", "application/json")
|
||||
|
||||
err = json.NewEncoder(w).Encode(resp)
|
||||
if err != nil {
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Failed to encode JSON response: %+v", responseutils.RequestErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusInternalServerError},
|
||||
)
|
||||
h.RespWriter.Exception(ctx, w, http.StatusInternalServerError, responseutils.RequestErr, "")
|
||||
}
|
||||
|
||||
w.WriteHeader(http.StatusOK)
|
||||
}
|
||||
|
||||
// bulkRequest generates a job ID for a bulk export request. It will not queue a job
|
||||
// until auth, attribution, and request resources are validated.
|
||||
func (h *Handler) bulkRequest(w http.ResponseWriter, r *http.Request, reqType constants.DataRequestType) {
|
||||
// Create context to encapsulate the entire workflow. In the future, we can define child context's for timing.
|
||||
ctx, cancel := context.WithCancel(r.Context())
|
||||
defer cancel()
|
||||
|
||||
logger := log.GetCtxLogger(ctx)
|
||||
|
||||
var (
|
||||
ad auth.AuthData
|
||||
err error
|
||||
)
|
||||
|
||||
if ad, err = GetAuthDataFromCtx(r); err != nil {
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %+v", responseutils.TokenErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusUnauthorized},
|
||||
)
|
||||
h.RespWriter.OpOutcome(ctx, w, http.StatusUnauthorized, responseutils.TokenErr, "")
|
||||
return
|
||||
}
|
||||
|
||||
rp, ok := middleware.GetRequestParamsFromCtx(ctx)
|
||||
if !ok {
|
||||
panic("Request parameters must be set prior to calling this handler.")
|
||||
}
|
||||
|
||||
// Validate PAC eligibility for v3 _typeFilter tags that require it
|
||||
if h.apiVersion == constants.V3Version {
|
||||
if err = h.validateTypeFilterPACEligibility(ctx, rp.TypeFilter, ad.CMSID, w); err != nil {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
resourceTypes := h.getResourceTypes(rp, ad.CMSID)
|
||||
if err = h.validateResources(resourceTypes, ad.CMSID); err != nil {
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Error validating resources: %+v", responseutils.RequestErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
h.RespWriter.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.RequestErr, err.Error())
|
||||
return
|
||||
}
|
||||
|
||||
// For v3, ensure any ACOs requesting ExplanationOfBenefit default to NCH and DDPS data only
|
||||
// This ensures they do not get SharedSystem data by default
|
||||
if h.apiVersion == constants.V3Version {
|
||||
if utils.ContainsString(resourceTypes, "ExplanationOfBenefit") {
|
||||
rp.TypeFilter = h.omitSharedSystemByDefault(rp.TypeFilter)
|
||||
}
|
||||
}
|
||||
|
||||
acoID := uuid.Parse(ad.ACOID)
|
||||
|
||||
scheme := "http"
|
||||
if servicemux.IsHTTPS(r) {
|
||||
scheme = "https"
|
||||
}
|
||||
|
||||
newJob := models.Job{
|
||||
ACOID: acoID,
|
||||
RequestURL: fmt.Sprintf("%s://%s%s", scheme, r.Host, r.URL),
|
||||
Status: models.JobStatusPending,
|
||||
}
|
||||
|
||||
fileType := models.FileTypeDefault
|
||||
if reqType == constants.Runout {
|
||||
fileType = models.FileTypeRunout
|
||||
}
|
||||
|
||||
timeConstraints, err := h.Svc.GetTimeConstraints(ctx, ad.CMSID)
|
||||
if err != nil {
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Error setting time constraints: %+v", responseutils.InternalErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusInternalServerError},
|
||||
)
|
||||
h.RespWriter.Exception(ctx, w, http.StatusInternalServerError, responseutils.InternalErr, "")
|
||||
return
|
||||
}
|
||||
|
||||
cutoffTime, complexDataRequestType := h.Svc.GetCutoffTime(ctx, reqType, rp.Since, timeConstraints, fileType)
|
||||
if complexDataRequestType == "" {
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Invalid complex data request type: %+v", responseutils.RequestErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
h.RespWriter.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.RequestErr, "invalid complex data request type")
|
||||
return
|
||||
}
|
||||
|
||||
cclfFileNew, err := h.Svc.GetLatestCCLFFile(
|
||||
ctx,
|
||||
ad.CMSID,
|
||||
cutoffTime,
|
||||
timeConstraints.AttributionDate,
|
||||
fileType,
|
||||
)
|
||||
if err != nil {
|
||||
if errors.As(err, &service.CCLFNotFoundError{}) {
|
||||
// Check if this is an expired runout data request
|
||||
if fileType == models.FileTypeRunout && !cutoffTime.IsZero() {
|
||||
msg := "runout data is no longer available. Runout data expires 180 days after ingestion"
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %+v", responseutils.NotFoundErr, msg),
|
||||
logrus.Fields{"resp_status": http.StatusNotFound},
|
||||
)
|
||||
h.RespWriter.NotFound(ctx, w, http.StatusNotFound, responseutils.NotFoundErr, msg)
|
||||
return
|
||||
}
|
||||
|
||||
msg := "failed to start job; attribution file not found"
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %+v", responseutils.NotFoundErr, msg),
|
||||
logrus.Fields{"resp_status": http.StatusNotFound},
|
||||
)
|
||||
h.RespWriter.NotFound(ctx, w, http.StatusNotFound, responseutils.NotFoundErr, msg)
|
||||
return
|
||||
}
|
||||
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Failed to retrieve latest cclf file: %+v", responseutils.DbErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusInternalServerError},
|
||||
)
|
||||
h.RespWriter.Exception(ctx, w, http.StatusInternalServerError, responseutils.DbErr, responseutils.DbErr)
|
||||
return
|
||||
}
|
||||
|
||||
performanceYear := utils.GetPY()
|
||||
if fileType == models.FileTypeRunout {
|
||||
performanceYear -= 1
|
||||
}
|
||||
|
||||
// validate cclffile and PY
|
||||
if cclfFileNew == nil || performanceYear != cclfFileNew.PerformanceYear {
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Failed to validate cclf file or performance year of found cclf file", responseutils.NotFoundErr),
|
||||
logrus.Fields{"resp_status": http.StatusNotFound},
|
||||
)
|
||||
h.RespWriter.NotFound(ctx, w, http.StatusNotFound, responseutils.NotFoundErr, fmt.Sprintf("unable to perform export operations for this Group. No up-to-date attribution information is available for ACOID '%s'. Usually this is due to awaiting new attribution information at the beginning of a Performance Year", ad.CMSID))
|
||||
return
|
||||
}
|
||||
|
||||
var cclfFileOldID uint
|
||||
if complexDataRequestType == constants.GetNewAndExistingBenes {
|
||||
cclfFileOldID, err = h.Svc.FindOldCCLFFile(ctx, ad.CMSID, rp.Since, cclfFileNew.Timestamp)
|
||||
if err != nil {
|
||||
if errors.As(err, &service.CCLFNotFoundError{}) {
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: CCLF file not found for given _since parameter: %s", responseutils.NotFoundErr, rp.Since.String()),
|
||||
logrus.Fields{"resp_status": http.StatusNotFound},
|
||||
)
|
||||
h.RespWriter.NotFound(ctx, w, http.StatusNotFound, responseutils.NotFoundErr, "failed to start job; attribution file not found for given _since parameter.")
|
||||
return
|
||||
}
|
||||
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: failed to retrieve cclf file: %+v", responseutils.DbErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusInternalServerError},
|
||||
)
|
||||
h.RespWriter.Exception(ctx, w, http.StatusInternalServerError, responseutils.DbErr, "")
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
newJob.ID, err = h.r.CreateJob(ctx, newJob)
|
||||
if err != nil {
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Failed to create job: %+v", responseutils.DbErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusInternalServerError},
|
||||
)
|
||||
h.RespWriter.Exception(ctx, w, http.StatusInternalServerError, responseutils.DbErr, "")
|
||||
return
|
||||
}
|
||||
|
||||
if newJob.ID != 0 {
|
||||
ctx, _ = log.WriteInfoWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("job id created: %d", newJob.ID),
|
||||
logrus.Fields{"job_id": newJob.ID},
|
||||
)
|
||||
}
|
||||
|
||||
// lots of things needed for downstream logic!
|
||||
prepJob := worker_types.PrepareJobArgs{
|
||||
Job: newJob,
|
||||
ACOID: acoID,
|
||||
CMSID: ad.CMSID,
|
||||
CCLFFileNewID: cclfFileNew.ID,
|
||||
CCLFFileOldID: cclfFileOldID,
|
||||
BFDPath: h.bbBasePath,
|
||||
RequestType: reqType,
|
||||
ComplexDataRequestType: complexDataRequestType,
|
||||
ResourceTypes: resourceTypes,
|
||||
Since: rp.Since,
|
||||
TypeFilter: rp.TypeFilter,
|
||||
CreationTime: time.Now(),
|
||||
ClaimsDate: timeConstraints.ClaimsDate,
|
||||
OptOutDate: timeConstraints.OptOutDate,
|
||||
TransactionID: ctx.Value(m.CtxTransactionKey).(string),
|
||||
}
|
||||
|
||||
logger.Infof("Adding jobs using %T", h.Enq)
|
||||
err = h.Enq.AddPrepareJob(ctx, prepJob)
|
||||
if err != nil {
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Failed to add job to the queue: %+v", responseutils.InternalErr, err),
|
||||
logrus.Fields{"resp_status": http.StatusInternalServerError},
|
||||
)
|
||||
h.RespWriter.Exception(ctx, w, http.StatusInternalServerError, responseutils.InternalErr, "")
|
||||
return
|
||||
}
|
||||
|
||||
w.Header().Set("Content-Location", fmt.Sprintf("%s://%s/api/%s/jobs/%d", scheme, r.Host, h.apiVersion, newJob.ID))
|
||||
w.WriteHeader(http.StatusAccepted)
|
||||
}
|
||||
|
||||
func (h *Handler) getResourceTypes(parameters middleware.RequestParameters, cmsID string) []string {
|
||||
resourceTypes := parameters.ResourceTypes
|
||||
|
||||
// If caller does not supply resource types, we default to all supported resource types for the specific ACO
|
||||
if len(resourceTypes) == 0 {
|
||||
if acoConfig, found := h.Svc.GetACOConfigForID(cmsID); found {
|
||||
if utils.ContainsString(acoConfig.Data, constants.Adjudicated) {
|
||||
resourceTypes = append(resourceTypes, "Patient", "ExplanationOfBenefit", "Coverage")
|
||||
}
|
||||
|
||||
if utils.ContainsString(acoConfig.Data, constants.PartiallyAdjudicated) && h.apiVersion == "v2" {
|
||||
resourceTypes = append(resourceTypes, "Claim", "ClaimResponse")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return resourceTypes
|
||||
}
|
||||
|
||||
func (h *Handler) validateResources(resourceTypes []string, cmsID string) error {
|
||||
for _, resourceType := range resourceTypes {
|
||||
dataType, ok := h.supportedDataTypes[resourceType]
|
||||
|
||||
if !ok {
|
||||
return fmt.Errorf("invalid resource type %s. Supported types %s", resourceType, h.supportedResourceTypes)
|
||||
}
|
||||
|
||||
if !h.authorizedResourceAccess(dataType, cmsID) {
|
||||
return fmt.Errorf("unauthorized resource type %s", resourceType)
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (h *Handler) authorizedResourceAccess(dataType service.ClaimType, cmsID string) bool {
|
||||
if cfg, ok := h.Svc.GetACOConfigForID(cmsID); ok {
|
||||
return (dataType.Adjudicated && utils.ContainsString(cfg.Data, constants.Adjudicated)) ||
|
||||
(dataType.PartiallyAdjudicated && utils.ContainsString(cfg.Data, constants.PartiallyAdjudicated))
|
||||
}
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
// validateTypeFilterPACEligibility validates that ACOs requesting SharedSystem
|
||||
// tags in _typeFilter have PAC data access. Handles parsing of multiple comma-separated tag codes.
|
||||
// Returns error if validation fails (and writes response).
|
||||
func (h *Handler) validateTypeFilterPACEligibility(ctx context.Context, typeFilter fhir.TypeFilterSubquery, cmsID string, w http.ResponseWriter) error {
|
||||
// Tags that require PAC eligibility
|
||||
tagsRequiringPAC := []string{"SharedSystem"}
|
||||
|
||||
// Extract all _tag parameter codes
|
||||
var requestedTagCodes []string
|
||||
tagParams, err := fhir.GetTagParams(typeFilter)
|
||||
if err != nil {
|
||||
return fmt.Errorf("unable to parse typefilter _tag codes: %w", err)
|
||||
}
|
||||
|
||||
for _, tagParam := range tagParams {
|
||||
for _, tagValue := range tagParam.Values {
|
||||
requestedTagCodes = append(requestedTagCodes, tagValue.Code)
|
||||
}
|
||||
}
|
||||
|
||||
// Check if any requested tags require PAC eligibility
|
||||
requiresPAC := false
|
||||
for _, tagCode := range requestedTagCodes {
|
||||
if utils.ContainsString(tagsRequiringPAC, tagCode) {
|
||||
requiresPAC = true
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
// If PAC is required, check if ACO has PAC access
|
||||
if requiresPAC {
|
||||
acoConfig, ok := h.Svc.GetACOConfigForID(cmsID)
|
||||
if !ok {
|
||||
ctx, _ = log.WriteErrorWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Unable to determine ACO configuration", responseutils.RequestErr),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
h.RespWriter.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.RequestErr, "Unable to determine ACO configuration")
|
||||
return fmt.Errorf("ACO configuration not found")
|
||||
}
|
||||
|
||||
if h.Svc.IsV3NoPartialClaimsModel(acoConfig.Model) {
|
||||
errMsg := fmt.Sprintf("Model entities in %s are not eligible to access SharedSystem data. Requests using the following tags require access to SharedSystem data: %v", acoConfig.Model, tagsRequiringPAC)
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %s", responseutils.RequestErr, errMsg),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
h.RespWriter.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.RequestErr, errMsg)
|
||||
return fmt.Errorf("not eligible for SharedSystem data")
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// omitSharedSystemByDefault ensures that all ACOs in v3 do not receive SharedSystem data by default
|
||||
// by adding a System-Type tag filter if no explicit filter is provided
|
||||
func (h *Handler) omitSharedSystemByDefault(typeFilter fhir.TypeFilterSubquery) fhir.TypeFilterSubquery {
|
||||
// If relevant filter is already present, no need to add default
|
||||
if middleware.HasSystemTypeTag(typeFilter) {
|
||||
return typeFilter
|
||||
}
|
||||
|
||||
// For all ACOs without a qualifying filter, add System-Type filter
|
||||
// to ensure they do not receive SharedSystem data by default.
|
||||
// This tag filters response data by System-Type=NCH OR System-Type=DDPS
|
||||
// This function is only called when ExplanationOfBenefit is in the resource types
|
||||
tagValue := constants.BFDSystemTypeURL + "|NationalClaimsHistory," + constants.BFDSystemTypeURL + "|DDPS"
|
||||
subqueryParam := fhir.TypeFilterSubqueryParam{
|
||||
Name: string(fhir.TypeFilterParamTag),
|
||||
Value: tagValue,
|
||||
}
|
||||
|
||||
// if there is no _typeFilter param passed, create a new one and add this _tag filter
|
||||
if len(typeFilter.QueryParameters) == 0 {
|
||||
return fhir.TypeFilterSubquery{
|
||||
ResourceType: "ExplanationOfBenefit",
|
||||
QueryParameters: []fhir.TypeFilterSubqueryParam{subqueryParam},
|
||||
}
|
||||
}
|
||||
|
||||
// If there is an existing typeFilter, add the _tag subquery param to the existing _typeFilter param
|
||||
typeFilter.QueryParameters = append(typeFilter.QueryParameters, subqueryParam)
|
||||
|
||||
return typeFilter
|
||||
}
|
||||
|
||||
func GetAuthDataFromCtx(r *http.Request) (data auth.AuthData, err error) {
|
||||
var ok bool
|
||||
data, ok = r.Context().Value(auth.AuthDataContextKey).(auth.AuthData)
|
||||
if !ok {
|
||||
err = goerrors.New("no auth data in context")
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// swagger:model fileItem
|
||||
type FileItem struct {
|
||||
// FHIR resource type of file contents
|
||||
Type string `json:"type"`
|
||||
// URL of the file
|
||||
URL string `json:"url"`
|
||||
}
|
||||
|
||||
/*
|
||||
Data export job has completed successfully. The response body will contain a JSON object providing metadata about the transaction.
|
||||
swagger:response completedJobResponse
|
||||
*/
|
||||
// nolint
|
||||
type CompletedJobResponse struct {
|
||||
// in: body
|
||||
Body BulkResponseBody
|
||||
}
|
||||
|
||||
type BulkResponseBody struct {
|
||||
// Server time when the query was run
|
||||
TransactionTime time.Time `json:"transactionTime"`
|
||||
// URL of the bulk data export request
|
||||
RequestURL string `json:"request"`
|
||||
// Indicates whether an access token is required to download generated data files
|
||||
RequiresAccessToken bool `json:"requiresAccessToken"`
|
||||
// Information about generated data files, including URLs for downloading
|
||||
Files []FileItem `json:"output"`
|
||||
// Information about error files, including URLs for downloading
|
||||
Errors []FileItem `json:"error"`
|
||||
JobID uint
|
||||
}
|
||||
376
dev/vendor/bcda-app/bcda/api/v3/api.go
vendored
Normal file
376
dev/vendor/bcda-app/bcda/api/v3/api.go
vendored
Normal file
@@ -0,0 +1,376 @@
|
||||
package v3
|
||||
|
||||
import (
|
||||
"database/sql"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"net/http"
|
||||
"time"
|
||||
|
||||
"github.com/CMSgov/bcda-app/bcda/api"
|
||||
"github.com/CMSgov/bcda-app/bcda/constants"
|
||||
"github.com/CMSgov/bcda-app/bcda/fhir"
|
||||
"github.com/CMSgov/bcda-app/bcda/fhir/r4"
|
||||
"github.com/CMSgov/bcda-app/bcda/service"
|
||||
"github.com/CMSgov/bcda-app/bcda/servicemux"
|
||||
"github.com/CMSgov/bcda-app/conf"
|
||||
"github.com/CMSgov/bcda-app/log"
|
||||
pgxv5Pool "github.com/jackc/pgx/v5/pgxpool"
|
||||
)
|
||||
|
||||
type ApiV3 struct {
|
||||
handler *api.Handler
|
||||
db *sql.DB
|
||||
}
|
||||
|
||||
func NewApiV3(db *sql.DB, pool *pgxv5Pool.Pool) *ApiV3 {
|
||||
resources, ok := service.GetClaimTypesMap([]string{
|
||||
"Patient",
|
||||
"Coverage",
|
||||
"ExplanationOfBenefit",
|
||||
}...)
|
||||
|
||||
if !ok {
|
||||
panic("Failed to configure resource DataTypes")
|
||||
} else {
|
||||
h := api.NewHandler(resources, constants.BFDV3Path, constants.V3Version, db, pool)
|
||||
return &ApiV3{handler: h, db: db}
|
||||
}
|
||||
}
|
||||
|
||||
// NOTE: The below are all just copies of v3/api
|
||||
|
||||
/*
|
||||
swagger:route GET /api/v3/Patient/$export bulkDatav3 bulkPatientRequestv3
|
||||
|
||||
Start FHIR R4 data export for all supported resource types.
|
||||
|
||||
Initiates a job to collect data from the Blue Button API for your ACO. Supported resource types are Patient, Coverage, and ExplanationOfBenefit.
|
||||
|
||||
Produces:
|
||||
- application/fhir+json
|
||||
|
||||
Security:
|
||||
|
||||
bearer_token:
|
||||
|
||||
Responses:
|
||||
|
||||
202: BulkRequestResponse
|
||||
400: badRequestResponse
|
||||
401: invalidCredentials
|
||||
429: tooManyRequestsResponse
|
||||
500: errorResponse
|
||||
*/
|
||||
func (a ApiV3) BulkPatientRequest(w http.ResponseWriter, r *http.Request) {
|
||||
a.handler.BulkPatientRequest(w, r)
|
||||
}
|
||||
|
||||
/*
|
||||
swagger:route GET /api/v3/Group/{groupId}/$export bulkDatav3 bulkGroupRequestv3
|
||||
|
||||
# Start FHIR R4 data export (for the specified group identifier) for all supported resource types
|
||||
|
||||
Initiates a job to collect data from the Blue Button API for your ACO. The only Group identifier supported by the system are `all` and `runout`.
|
||||
|
||||
The `all` identifier returns data for the group of all patients attributed to the requesting ACO. If 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; and all historical claims data will be returned for beneficiaries which have been newly attributed to the ACO since the specified date.
|
||||
|
||||
The `runout` identifier returns claims runouts data.
|
||||
|
||||
Produces:
|
||||
- application/fhir+json
|
||||
|
||||
Security:
|
||||
|
||||
bearer_token:
|
||||
|
||||
Responses:
|
||||
|
||||
202: BulkRequestResponse
|
||||
400: badRequestResponse
|
||||
401: invalidCredentials
|
||||
429: tooManyRequestsResponse
|
||||
500: errorResponse
|
||||
*/
|
||||
func (a ApiV3) BulkGroupRequest(w http.ResponseWriter, r *http.Request) {
|
||||
a.handler.BulkGroupRequest(w, r)
|
||||
}
|
||||
|
||||
/*
|
||||
swagger:route GET /api/v3/jobs/{jobId} jobv3 jobStatusv3
|
||||
|
||||
# Get job status
|
||||
|
||||
Returns the current status of an export job.
|
||||
|
||||
Produces:
|
||||
- application/fhir+json
|
||||
|
||||
Schemes: http, https
|
||||
|
||||
Security:
|
||||
|
||||
bearer_token:
|
||||
|
||||
Responses:
|
||||
|
||||
202: jobStatusResponse
|
||||
200: completedJobResponse
|
||||
400: badRequestResponse
|
||||
401: invalidCredentials
|
||||
404: notFoundResponse
|
||||
410: goneResponse
|
||||
500: errorResponse
|
||||
*/
|
||||
func (a ApiV3) JobStatus(w http.ResponseWriter, r *http.Request) {
|
||||
a.handler.JobStatus(w, r)
|
||||
}
|
||||
|
||||
/*
|
||||
swagger:route GET /api/v3/jobs jobv3 jobsStatusv3
|
||||
|
||||
# Get jobs statuses
|
||||
|
||||
Returns the current statuses of export jobs. Supported status types are Completed, Archived, Expired, Failed, FailedExpired,
|
||||
In Progress, Pending, Cancelled, and CancelledExpired. If no status(s) is provided, all jobs will be returned.
|
||||
|
||||
Note on job status to fhir task resource status mapping:
|
||||
Due to the fhir task status field having a smaller set of values, the following statuses will be set to different fhir values in the response
|
||||
|
||||
Archived, Expired -> Completed
|
||||
FailedExpired -> Failed
|
||||
Pending -> In Progress
|
||||
CancelledExpired -> Cancelled
|
||||
|
||||
Though the status name has been remapped the response will still only contain jobs pertaining to the provided job status in the request.
|
||||
|
||||
Produces:
|
||||
- application/fhir+json
|
||||
|
||||
Schemes: http, https
|
||||
|
||||
Security:
|
||||
|
||||
bearer_token:
|
||||
|
||||
Responses:
|
||||
|
||||
200: jobsStatusResponse
|
||||
400: badRequestResponse
|
||||
401: invalidCredentials
|
||||
404: notFoundResponse
|
||||
410: goneResponse
|
||||
500: errorResponse
|
||||
*/
|
||||
func (a ApiV3) JobsStatus(w http.ResponseWriter, r *http.Request) {
|
||||
a.handler.JobsStatus(w, r)
|
||||
}
|
||||
|
||||
/*
|
||||
swagger:route DELETE /api/v3/jobs/{jobId} jobv3 deleteJobv3
|
||||
|
||||
# Cancel a job
|
||||
|
||||
Cancels a currently running job.
|
||||
|
||||
Produces:
|
||||
- application/fhir+json
|
||||
|
||||
Schemes: http, https
|
||||
|
||||
Security:
|
||||
|
||||
bearer_token:
|
||||
|
||||
Responses:
|
||||
|
||||
202: deleteJobResponse
|
||||
400: badRequestResponse
|
||||
401: invalidCredentials
|
||||
404: notFoundResponse
|
||||
410: goneResponse
|
||||
500: errorResponse
|
||||
*/
|
||||
func (a ApiV3) DeleteJob(w http.ResponseWriter, r *http.Request) {
|
||||
a.handler.DeleteJob(w, r)
|
||||
}
|
||||
|
||||
/*
|
||||
swagger:route GET /api/v3/attribution_status attributionStatusv3 attributionStatus
|
||||
|
||||
# Get attribution status
|
||||
|
||||
Returns the status of the latest ingestion for attribution and claims runout files. The response will contain the Type to identify which ingestion and a Timestamp for the last time it was updated.
|
||||
|
||||
Produces:
|
||||
- application/json
|
||||
|
||||
Schemes: http, https
|
||||
|
||||
Security:
|
||||
|
||||
bearer_token:
|
||||
|
||||
Responses:
|
||||
|
||||
200: AttributionFileStatusResponse
|
||||
404: notFoundResponse
|
||||
*/
|
||||
func (a ApiV3) AttributionStatus(w http.ResponseWriter, r *http.Request) {
|
||||
a.handler.AttributionStatus(w, r)
|
||||
}
|
||||
|
||||
/*
|
||||
swagger:route GET /api/v3/metadata metadatav3 metadata
|
||||
|
||||
# Get metadata
|
||||
|
||||
Returns metadata about the API.
|
||||
|
||||
Produces:
|
||||
- application/fhir+json
|
||||
|
||||
Schemes: http, https
|
||||
|
||||
Responses:
|
||||
|
||||
200: MetadataResponse
|
||||
*/
|
||||
func (a ApiV3) Metadata(w http.ResponseWriter, r *http.Request) {
|
||||
dt := time.Now()
|
||||
bbServer := conf.GetEnv("BB_SERVER_LOCATION")
|
||||
|
||||
scheme := "http"
|
||||
if servicemux.IsHTTPS(r) {
|
||||
scheme = "https"
|
||||
}
|
||||
baseURL := fmt.Sprintf("%s://%s", scheme, r.Host)
|
||||
|
||||
statement := &r4.CapabilityStatement{
|
||||
ResourceType: "CapabilityStatement",
|
||||
Status: r4.PublicationStatusActive,
|
||||
Date: dt.UTC().Format("2006-01-02T15:04:05Z"),
|
||||
Publisher: constants.PublisherName,
|
||||
Kind: r4.CapabilityStatementKindInstance,
|
||||
Instantiates: []string{
|
||||
bbServer + "/v3/fhir/metadata",
|
||||
"http://hl7.org/fhir/uv/bulkdata/CapabilityStatement/bulk-data",
|
||||
},
|
||||
Software: r4.Software{
|
||||
Name: constants.SoftwareName,
|
||||
Version: constants.Version,
|
||||
ReleaseDate: dt.UTC().Format("2006-01-02T15:04:05Z"),
|
||||
},
|
||||
Implementation: r4.Implementation{
|
||||
Description: constants.SoftwareDescription,
|
||||
Url: baseURL,
|
||||
},
|
||||
FhirVersion: "4.0.1",
|
||||
Format: []string{
|
||||
constants.JsonContentType,
|
||||
constants.FHIRJsonContentType,
|
||||
},
|
||||
Rest: []r4.CapabilityStatementRest{
|
||||
{
|
||||
Mode: r4.RestfulCapabilityModeServer,
|
||||
Security: &r4.Security{
|
||||
Cors: true,
|
||||
Service: []r4.CodeableConcept{
|
||||
{
|
||||
Coding: []r4.Coding{
|
||||
{
|
||||
Display: "OAuth",
|
||||
Code: "OAuth",
|
||||
System: constants.RestfulSecurityServiceSystem,
|
||||
},
|
||||
},
|
||||
Text: "OAuth",
|
||||
},
|
||||
},
|
||||
Extension: []r4.Extension{
|
||||
{
|
||||
Url: constants.SmartOAuthURIsExtensionURL,
|
||||
Extension: []r4.Extension{
|
||||
{
|
||||
Url: "token",
|
||||
ValueUri: baseURL + "/auth/token",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
Interaction: []r4.Interaction{
|
||||
{
|
||||
Code: r4.SystemRestfulInteractionBatch,
|
||||
},
|
||||
{
|
||||
Code: r4.SystemRestfulInteractionSearchSystem,
|
||||
},
|
||||
},
|
||||
Resource: []r4.RestResource{
|
||||
{
|
||||
Type: r4.ResourceTypeCodePatient,
|
||||
Operation: []r4.RestOperation{
|
||||
{
|
||||
Name: "export",
|
||||
Definition: "http://hl7.org/fhir/uv/bulkdata/OperationDefinition/patient-export",
|
||||
Documentation: "By default, the patient $export will return ExplanationOfBenefit resources with a meta.tag with a system of '" + constants.BFDSystemTypeURL + "' and code of either NationalClaimsHistory or DDPS. In order to return ExplanationOfBenefit resources with other system types (like SharedSystem), use the _typeFilter parameter.",
|
||||
},
|
||||
},
|
||||
SearchParam: []r4.SearchParam{
|
||||
restResourceSearchParam("_since", r4.SearchParamTypeDate, "Return resources updated after the date provided for existing and newly attributed enrollees."),
|
||||
restResourceSearchParam("_type", r4.SearchParamTypeString, "Comma-delimited list of FHIR resource types to include in the export. By default, all supported resource types are returned."),
|
||||
restResourceSearchParam("_typeFilter", r4.SearchParamTypeString, "Use a URL-encoded FHIR subquery to further-refine patient export results."),
|
||||
},
|
||||
},
|
||||
{
|
||||
Type: r4.ResourceTypeCodeGroup,
|
||||
Operation: []r4.RestOperation{
|
||||
{
|
||||
Name: "export",
|
||||
Definition: "http://hl7.org/fhir/uv/bulkdata/OperationDefinition/group-export",
|
||||
Documentation: "By default, the group $export will return ExplanationOfBenefit resources with a meta.tag with a system of '" + constants.BFDSystemTypeURL + "' and code of either NationalClaimsHistory or DDPS. In order to return ExplanationOfBenefit resources with other system types (like SharedSystem), use the _typeFilter parameter.",
|
||||
},
|
||||
},
|
||||
SearchParam: []r4.SearchParam{
|
||||
restResourceSearchParam("_since", r4.SearchParamTypeDate, "Return resources updated after the date provided for existing enrollees and all resources for newly attributed enrollees."),
|
||||
restResourceSearchParam("_type", r4.SearchParamTypeString, "Comma-delimited list of FHIR resource types to include in the export. By default, all supported resource types are returned."),
|
||||
restResourceSearchParam("_typeFilter", r4.SearchParamTypeString, "Use a URL-encoded FHIR subquery to further-refine group export results."),
|
||||
},
|
||||
},
|
||||
{
|
||||
Type: r4.ResourceTypeCodeExplanationOfBenefit,
|
||||
SearchParam: []r4.SearchParam{
|
||||
restResourceSearchParam(string(fhir.TypeFilterParamTag), r4.SearchParamTypeToken, "Filter ExplanationOfBenefit by the meta.tag element. Pass full token as <system>|<code>. Supported codes in the '"+constants.BFDSystemTypeURL+"' system are: 'SharedSystem', 'NationalClaimsHistory', and 'DDPS'. By Default, only NationalClaimsHistory and DDPS claims will be returned."),
|
||||
restResourceSearchParam(string(fhir.TypeFilterParamOutcome), r4.SearchParamTypeToken, "Filter ExplanationOfBenefit by the outcome element. Supported values: 'partial' and 'complete'."),
|
||||
restResourceSearchParam(string(fhir.TypeFilterParamServiceDate), r4.SearchParamTypeDate, "Filter ExplanationOfBenefit based on the claim's service date. The service date is the date that the care occurred within a billable period. This is a FHIR date param format (ex. `gt2026-01-14`)"),
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
b, err := json.Marshal(statement)
|
||||
if err != nil {
|
||||
log.API.WithField("resp_status", http.StatusInternalServerError).Errorf("Failed to marshal Capability Statement %s", err.Error())
|
||||
http.Error(w, err.Error(), http.StatusInternalServerError)
|
||||
return
|
||||
}
|
||||
|
||||
w.Header().Set(constants.ContentType, constants.JsonContentType)
|
||||
if _, err = w.Write(b); err != nil { // #nosec G705
|
||||
log.API.WithField("resp_status", http.StatusInternalServerError).Errorf("Failed to write data %s", err.Error())
|
||||
http.Error(w, err.Error(), http.StatusInternalServerError)
|
||||
}
|
||||
}
|
||||
|
||||
func restResourceSearchParam(n string, t r4.SearchParamType, d string) r4.SearchParam {
|
||||
p := r4.SearchParam{
|
||||
Name: n,
|
||||
Type: t,
|
||||
Documentation: d,
|
||||
}
|
||||
|
||||
return p
|
||||
}
|
||||
683
dev/vendor/bcda-app/bcda/api/v3/api_test.go
vendored
Normal file
683
dev/vendor/bcda-app/bcda/api/v3/api_test.go
vendored
Normal file
@@ -0,0 +1,683 @@
|
||||
package v3
|
||||
|
||||
import (
|
||||
"context"
|
||||
"database/sql"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"io"
|
||||
"net/http"
|
||||
"net/http/httptest"
|
||||
"net/url"
|
||||
"os"
|
||||
"strings"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/CMSgov/bcda-app/bcda/api"
|
||||
"github.com/CMSgov/bcda-app/bcda/auth"
|
||||
"github.com/CMSgov/bcda-app/bcda/client"
|
||||
"github.com/CMSgov/bcda-app/bcda/constants"
|
||||
"github.com/CMSgov/bcda-app/bcda/database"
|
||||
"github.com/CMSgov/bcda-app/bcda/fhir/r4"
|
||||
"github.com/CMSgov/bcda-app/bcda/models"
|
||||
"github.com/CMSgov/bcda-app/bcda/models/postgres/postgrestest"
|
||||
"github.com/CMSgov/bcda-app/bcda/service"
|
||||
"github.com/CMSgov/bcda-app/bcda/testUtils"
|
||||
"github.com/CMSgov/bcda-app/bcda/utils"
|
||||
"github.com/CMSgov/bcda-app/bcda/web/middleware"
|
||||
"github.com/CMSgov/bcda-app/conf"
|
||||
"github.com/CMSgov/bcda-app/log"
|
||||
appMiddleware "github.com/CMSgov/bcda-app/middleware"
|
||||
"github.com/go-chi/chi/v5"
|
||||
pgxv5Pool "github.com/jackc/pgx/v5/pgxpool"
|
||||
"github.com/pborman/uuid"
|
||||
"github.com/sirupsen/logrus"
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/mock"
|
||||
"github.com/stretchr/testify/suite"
|
||||
)
|
||||
|
||||
const (
|
||||
expiryHeaderFormat = "2006-01-02 15:04:05.999999999 -0700 MST"
|
||||
)
|
||||
|
||||
var (
|
||||
acoUnderTest = uuid.Parse(constants.LargeACOUUID)
|
||||
)
|
||||
|
||||
type APITestSuite struct {
|
||||
suite.Suite
|
||||
db *sql.DB
|
||||
pool *pgxv5Pool.Pool
|
||||
apiV3 *ApiV3
|
||||
}
|
||||
|
||||
func (s *APITestSuite) SetupSuite() {
|
||||
s.db = database.Connect()
|
||||
s.pool = database.ConnectPool()
|
||||
s.apiV3 = NewApiV3(s.db, s.pool)
|
||||
|
||||
origDate := conf.GetEnv("CCLF_REF_DATE")
|
||||
conf.SetEnv(s.T(), "CCLF_REF_DATE", time.Now().Format("060102 15:01:01"))
|
||||
conf.SetEnv(s.T(), "BB_REQUEST_RETRY_INTERVAL_MS", "10")
|
||||
origBBCert := conf.GetEnv("BB_CLIENT_CERT_FILE")
|
||||
conf.SetEnv(s.T(), "BB_CLIENT_CERT_FILE", "../../../shared_files/decrypted/bfd-dev-test-cert.pem")
|
||||
origBBKey := conf.GetEnv("BB_CLIENT_KEY_FILE")
|
||||
conf.SetEnv(s.T(), "BB_CLIENT_KEY_FILE", "../../../shared_files/decrypted/bfd-dev-test-key.pem")
|
||||
|
||||
s.T().Cleanup(func() {
|
||||
conf.SetEnv(s.T(), "CCLF_REF_DATE", origDate)
|
||||
conf.SetEnv(s.T(), "BB_CLIENT_CERT_FILE", origBBCert)
|
||||
conf.SetEnv(s.T(), "BB_CLIENT_KEY_FILE", origBBKey)
|
||||
})
|
||||
|
||||
// Set up the logger since we're using the real client
|
||||
client.SetLogger(log.BFDAPI)
|
||||
}
|
||||
|
||||
func (s *APITestSuite) TearDownTest() {
|
||||
postgrestest.DeleteJobsByACOID(s.T(), s.db, acoUnderTest)
|
||||
}
|
||||
|
||||
func TestAPITestSuite(t *testing.T) {
|
||||
suite.Run(t, new(APITestSuite))
|
||||
}
|
||||
|
||||
func (s *APITestSuite) TestJobStatusBadInputs() {
|
||||
tests := []struct {
|
||||
name string
|
||||
jobID string
|
||||
expFHIRCode r4.IssueTypeCode
|
||||
expErrCode string
|
||||
}{
|
||||
{"InvalidJobID", "abcd", r4.IssueTypeCodeStructure, "could not parse job id"},
|
||||
{"DoesNotExist", "0", r4.IssueTypeCodeNotFound, "Job not found."},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
s.T().Run(tt.name, func(t *testing.T) {
|
||||
req := httptest.NewRequest("GET", fmt.Sprintf("%sjobs/%s", constants.V3Path, tt.jobID), nil)
|
||||
rr := httptest.NewRecorder()
|
||||
|
||||
rctx := chi.NewRouteContext()
|
||||
rctx.URLParams.Add("jobID", tt.jobID)
|
||||
req = req.WithContext(context.WithValue(req.Context(), chi.RouteCtxKey, rctx))
|
||||
ad := s.makeContextValues(acoUnderTest)
|
||||
req = req.WithContext(context.WithValue(req.Context(), auth.AuthDataContextKey, ad))
|
||||
newLogEntry := MakeTestStructuredLoggerEntry(logrus.Fields{"cms_id": "A9999", "request_id": uuid.NewRandom().String()})
|
||||
req = req.WithContext(context.WithValue(req.Context(), log.CtxLoggerKey, newLogEntry))
|
||||
|
||||
s.apiV3.JobStatus(rr, req)
|
||||
|
||||
respOO := getOperationOutcome(t, rr.Body.Bytes())
|
||||
|
||||
assert.Equal(t, r4.IssueSeverityError, respOO.Issue[0].Severity)
|
||||
assert.Equal(t, tt.expFHIRCode, respOO.Issue[0].Code)
|
||||
assert.Equal(t, tt.expErrCode, respOO.Issue[0].Diagnostics)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func (s *APITestSuite) TestJobStatusNotComplete() {
|
||||
tests := []struct {
|
||||
status models.JobStatus
|
||||
expStatusCode int
|
||||
}{
|
||||
{models.JobStatusPending, http.StatusAccepted},
|
||||
{models.JobStatusInProgress, http.StatusAccepted},
|
||||
{models.JobStatusFailed, http.StatusInternalServerError},
|
||||
{models.JobStatusFailedExpired, http.StatusInternalServerError},
|
||||
{models.JobStatusExpired, http.StatusGone},
|
||||
{models.JobStatusArchived, http.StatusGone},
|
||||
{models.JobStatusCancelled, http.StatusNotFound},
|
||||
{models.JobStatusCancelledExpired, http.StatusNotFound},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
s.T().Run(string(tt.status), func(t *testing.T) {
|
||||
j := models.Job{
|
||||
ACOID: uuid.Parse("DBBD1CE1-AE24-435C-807D-ED45953077D3"),
|
||||
RequestURL: constants.V3Path + constants.PatientEOBPath,
|
||||
Status: tt.status,
|
||||
}
|
||||
postgrestest.CreateJobs(t, s.db, &j)
|
||||
defer postgrestest.DeleteJobByID(t, s.db, j.ID)
|
||||
|
||||
req := s.createJobStatusRequest(acoUnderTest, j.ID)
|
||||
rr := httptest.NewRecorder()
|
||||
|
||||
s.apiV3.JobStatus(rr, req)
|
||||
assert.Equal(t, tt.expStatusCode, rr.Code)
|
||||
switch rr.Code {
|
||||
case http.StatusAccepted:
|
||||
assert.Contains(t, rr.Header().Get("X-Progress"), tt.status)
|
||||
assert.Equal(t, "", rr.Header().Get("Expires"))
|
||||
case http.StatusInternalServerError:
|
||||
assert.Contains(t, rr.Body.String(), "Service encountered numerous errors")
|
||||
case http.StatusGone:
|
||||
assertExpiryEquals(t, j.UpdatedAt.Add(s.apiV3.handler.JobTimeout), rr.Header().Get("Expires"))
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: V3
|
||||
// Some of the JobStatus tests seem to rely on existing non-cleaned up state.
|
||||
// They are failing when run as part of the whole unit-test suite however succeed when run independently.
|
||||
// These tests also cause failures in api/v2 tests when run as part of the whole suite.
|
||||
|
||||
// https://stackoverflow.com/questions/34585957/postgresql-9-3-how-to-insert-upper-case-uuid-into-table
|
||||
func (s *APITestSuite) TestJobStatusCompleted() {
|
||||
j := models.Job{
|
||||
ACOID: acoUnderTest,
|
||||
RequestURL: constants.V3Path + constants.PatientEOBPath,
|
||||
Status: models.JobStatusCompleted,
|
||||
}
|
||||
postgrestest.CreateJobs(s.T(), s.db, &j)
|
||||
defer postgrestest.DeleteJobByID(s.T(), s.db, j.ID)
|
||||
|
||||
var expectedUrls []string
|
||||
for i := 1; i <= 10; i++ {
|
||||
fileName := fmt.Sprintf("%s.ndjson", uuid.NewRandom().String())
|
||||
expectedurl := fmt.Sprintf("%s/%s/%s", constants.ExpectedTestUrl, fmt.Sprint(j.ID), fileName)
|
||||
expectedUrls = append(expectedUrls, expectedurl)
|
||||
postgrestest.CreateJobKeys(s.T(), s.db,
|
||||
models.JobKey{JobID: j.ID, FileName: fileName, ResourceType: "ExplanationOfBenefit"})
|
||||
defer postgrestest.DeleteJobKeysByJobIDs(s.T(), s.db, j.ID)
|
||||
}
|
||||
|
||||
req := s.createJobStatusRequest(acoUnderTest, j.ID)
|
||||
rr := httptest.NewRecorder()
|
||||
|
||||
s.apiV3.JobStatus(rr, req)
|
||||
|
||||
assert.Equal(s.T(), http.StatusOK, rr.Code)
|
||||
assert.Equal(s.T(), constants.JsonContentType, rr.Header().Get(constants.ContentType))
|
||||
str := rr.Header().Get("Expires")
|
||||
fmt.Println(str)
|
||||
assertExpiryEquals(s.T(), j.UpdatedAt.Add(s.apiV3.handler.JobTimeout), rr.Header().Get("Expires"))
|
||||
|
||||
var rb api.BulkResponseBody
|
||||
err := json.Unmarshal(rr.Body.Bytes(), &rb)
|
||||
if err != nil {
|
||||
s.T().Error(err)
|
||||
}
|
||||
|
||||
assert.Equal(s.T(), j.RequestURL, rb.RequestURL)
|
||||
assert.Equal(s.T(), true, rb.RequiresAccessToken)
|
||||
assert.Equal(s.T(), "ExplanationOfBenefit", rb.Files[0].Type)
|
||||
assert.Equal(s.T(), len(expectedUrls), len(rb.Files))
|
||||
// Order of these values is impossible to know so this is the only way
|
||||
for _, fileItem := range rb.Files {
|
||||
inOutput := false
|
||||
for _, expectedUrl := range expectedUrls {
|
||||
if fileItem.URL == expectedUrl {
|
||||
inOutput = true
|
||||
break
|
||||
}
|
||||
}
|
||||
assert.True(s.T(), inOutput)
|
||||
|
||||
}
|
||||
assert.Empty(s.T(), rb.Errors)
|
||||
}
|
||||
|
||||
func (s *APITestSuite) TestJobStatusCompletedErrorAndWarningFilesExist() {
|
||||
j := models.Job{
|
||||
ACOID: acoUnderTest,
|
||||
RequestURL: constants.V3Path + constants.PatientEOBPath,
|
||||
Status: models.JobStatusCompleted,
|
||||
}
|
||||
postgrestest.CreateJobs(s.T(), s.db, &j)
|
||||
defer postgrestest.DeleteJobByID(s.T(), s.db, j.ID)
|
||||
|
||||
fileName := fmt.Sprintf("%s.ndjson", uuid.NewRandom().String())
|
||||
jobKey := models.JobKey{
|
||||
JobID: j.ID,
|
||||
FileName: fileName,
|
||||
ResourceType: "ExplanationOfBenefit",
|
||||
}
|
||||
postgrestest.CreateJobKeys(s.T(), s.db, jobKey)
|
||||
defer postgrestest.DeleteJobKeysByJobIDs(s.T(), s.db, jobKey.JobID)
|
||||
|
||||
f := fmt.Sprintf("%s/%s", conf.GetEnv("FHIR_PAYLOAD_DIR"), fmt.Sprint(j.ID))
|
||||
if _, err := os.Stat(f); os.IsNotExist(err) {
|
||||
err = os.MkdirAll(f, os.ModePerm)
|
||||
if err != nil {
|
||||
s.T().Error(err)
|
||||
}
|
||||
}
|
||||
|
||||
errFileName := strings.Split(jobKey.FileName, ".")[0]
|
||||
errFilePath := fmt.Sprintf("%s/%s/%s-error.ndjson", conf.GetEnv("FHIR_PAYLOAD_DIR"), fmt.Sprint(j.ID), errFileName)
|
||||
_, err := os.Create(errFilePath)
|
||||
if err != nil {
|
||||
s.T().Error(err)
|
||||
}
|
||||
|
||||
warningFilePath := fmt.Sprintf("%s/%s/%s", conf.GetEnv("FHIR_PAYLOAD_DIR"), fmt.Sprint(j.ID), constants.WarningsAndInfoFileName)
|
||||
_, err = os.Create(warningFilePath)
|
||||
if err != nil {
|
||||
s.T().Error(err)
|
||||
}
|
||||
postgrestest.CreateJobKeys(s.T(), s.db, models.JobKey{
|
||||
JobID: 11,
|
||||
FileName: constants.WarningsAndInfoFileName,
|
||||
ResourceType: "OperationOutcome",
|
||||
})
|
||||
defer postgrestest.DeleteJobKeysByJobIDs(s.T(), s.db, 11)
|
||||
|
||||
req := s.createJobStatusRequest(acoUnderTest, j.ID)
|
||||
rr := httptest.NewRecorder()
|
||||
|
||||
s.apiV3.JobStatus(rr, req)
|
||||
|
||||
assert.Equal(s.T(), http.StatusOK, rr.Code)
|
||||
assert.Equal(s.T(), constants.JsonContentType, rr.Header().Get(constants.ContentType))
|
||||
|
||||
var rb api.BulkResponseBody
|
||||
err = json.Unmarshal(rr.Body.Bytes(), &rb)
|
||||
if err != nil {
|
||||
s.T().Error(err)
|
||||
}
|
||||
|
||||
dataurl := fmt.Sprintf("%s/%s/%s", constants.ExpectedTestUrl, fmt.Sprint(j.ID), fileName)
|
||||
errorurl := fmt.Sprintf("%s/%s/%s-error.ndjson", constants.ExpectedTestUrl, fmt.Sprint(j.ID), errFileName)
|
||||
warningURL := fmt.Sprintf("%s/%s/%s", constants.ExpectedTestUrl, fmt.Sprint(j.ID), constants.WarningsAndInfoFileName)
|
||||
|
||||
assert.Equal(s.T(), j.RequestURL, rb.RequestURL)
|
||||
assert.Equal(s.T(), true, rb.RequiresAccessToken)
|
||||
assert.Equal(s.T(), "ExplanationOfBenefit", rb.Files[0].Type)
|
||||
assert.Equal(s.T(), dataurl, rb.Files[0].URL)
|
||||
for _, file := range rb.Files {
|
||||
assert.NotContains(s.T(), file.URL, "-error.ndjson")
|
||||
}
|
||||
assert.Equal(s.T(), "OperationOutcome", rb.Errors[0].Type)
|
||||
assert.Equal(s.T(), warningURL, rb.Errors[0].URL)
|
||||
assert.Equal(s.T(), "OperationOutcome", rb.Errors[1].Type)
|
||||
assert.Equal(s.T(), errorurl, rb.Errors[1].URL)
|
||||
assert.Equal(s.T(), 2, len(rb.Errors))
|
||||
|
||||
os.Remove(errFilePath)
|
||||
}
|
||||
|
||||
// This job is old, but has not yet been marked as expired.
|
||||
func (s *APITestSuite) TestJobStatusNotExpired() {
|
||||
j := models.Job{
|
||||
ACOID: acoUnderTest,
|
||||
RequestURL: constants.V3Path + constants.PatientEOBPath,
|
||||
Status: models.JobStatusCompleted,
|
||||
}
|
||||
postgrestest.CreateJobs(s.T(), s.db, &j)
|
||||
defer postgrestest.DeleteJobByID(s.T(), s.db, j.ID)
|
||||
|
||||
j.UpdatedAt = time.Now().Add(-(s.apiV3.handler.JobTimeout + time.Second))
|
||||
postgrestest.UpdateJob(s.T(), s.db, j)
|
||||
|
||||
req := s.createJobStatusRequest(acoUnderTest, j.ID)
|
||||
rr := httptest.NewRecorder()
|
||||
|
||||
s.apiV3.JobStatus(rr, req)
|
||||
|
||||
assert.Equal(s.T(), http.StatusGone, rr.Code)
|
||||
assertExpiryEquals(s.T(), j.UpdatedAt.Add(s.apiV3.handler.JobTimeout), rr.Header().Get("Expires"))
|
||||
}
|
||||
|
||||
func (s *APITestSuite) TestJobsStatus() {
|
||||
req := httptest.NewRequest("GET", fmt.Sprintf("%sjobs", constants.V3Path), nil)
|
||||
ad := s.makeContextValues(acoUnderTest)
|
||||
req = req.WithContext(context.WithValue(req.Context(), auth.AuthDataContextKey, ad))
|
||||
newLogEntry := MakeTestStructuredLoggerEntry(logrus.Fields{"cms_id": "A9999", "request_id": uuid.NewRandom().String()})
|
||||
req = req.WithContext(context.WithValue(req.Context(), log.CtxLoggerKey, newLogEntry))
|
||||
rr := httptest.NewRecorder()
|
||||
|
||||
j := models.Job{
|
||||
ACOID: acoUnderTest,
|
||||
RequestURL: fmt.Sprintf("%sPatient/$export?_type=ExplanationOfBenefit", constants.V3Path),
|
||||
Status: models.JobStatusCompleted,
|
||||
}
|
||||
postgrestest.CreateJobs(s.T(), s.db, &j)
|
||||
defer postgrestest.DeleteJobByID(s.T(), s.db, j.ID)
|
||||
|
||||
s.apiV3.JobsStatus(rr, req)
|
||||
assert.Equal(s.T(), http.StatusOK, rr.Code)
|
||||
}
|
||||
|
||||
func (s *APITestSuite) TestJobsStatusNotFound() {
|
||||
req := httptest.NewRequest("GET", fmt.Sprintf("%sjobs", constants.V3Path), nil)
|
||||
ad := s.makeContextValues(acoUnderTest)
|
||||
req = req.WithContext(context.WithValue(req.Context(), auth.AuthDataContextKey, ad))
|
||||
newLogEntry := MakeTestStructuredLoggerEntry(logrus.Fields{"cms_id": "A9999", "request_id": uuid.NewRandom().String()})
|
||||
req = req.WithContext(context.WithValue(req.Context(), log.CtxLoggerKey, newLogEntry))
|
||||
rr := httptest.NewRecorder()
|
||||
|
||||
s.apiV3.JobsStatus(rr, req)
|
||||
assert.Equal(s.T(), http.StatusNotFound, rr.Code)
|
||||
}
|
||||
|
||||
func (s *APITestSuite) TestJobsStatusNotFoundWithStatus() {
|
||||
req := httptest.NewRequest("GET", fmt.Sprintf("%sjobs?_status=Failed", constants.V3Path), nil)
|
||||
ad := s.makeContextValues(acoUnderTest)
|
||||
req = req.WithContext(context.WithValue(req.Context(), auth.AuthDataContextKey, ad))
|
||||
newLogEntry := MakeTestStructuredLoggerEntry(logrus.Fields{"cms_id": "A9999", "request_id": uuid.NewRandom().String()})
|
||||
req = req.WithContext(context.WithValue(req.Context(), log.CtxLoggerKey, newLogEntry))
|
||||
rr := httptest.NewRecorder()
|
||||
|
||||
j := models.Job{
|
||||
ACOID: acoUnderTest,
|
||||
RequestURL: fmt.Sprintf("%sPatient/$export?_type=ExplanationOfBenefit", constants.V3Path),
|
||||
Status: models.JobStatusCompleted,
|
||||
}
|
||||
postgrestest.CreateJobs(s.T(), s.db, &j)
|
||||
defer postgrestest.DeleteJobByID(s.T(), s.db, j.ID)
|
||||
|
||||
s.apiV3.JobsStatus(rr, req)
|
||||
assert.Equal(s.T(), http.StatusNotFound, rr.Code)
|
||||
}
|
||||
|
||||
func (s *APITestSuite) TestJobsStatusWithStatus() {
|
||||
req := httptest.NewRequest("GET", fmt.Sprintf("%sjobs?_status=Failed", constants.V3Path), nil)
|
||||
ad := s.makeContextValues(acoUnderTest)
|
||||
req = req.WithContext(context.WithValue(req.Context(), auth.AuthDataContextKey, ad))
|
||||
newLogEntry := MakeTestStructuredLoggerEntry(logrus.Fields{"cms_id": "A9999", "request_id": uuid.NewRandom().String()})
|
||||
req = req.WithContext(context.WithValue(req.Context(), log.CtxLoggerKey, newLogEntry))
|
||||
rr := httptest.NewRecorder()
|
||||
|
||||
j := models.Job{
|
||||
ACOID: acoUnderTest,
|
||||
RequestURL: fmt.Sprintf("%sPatient/$export?_type=ExplanationOfBenefit", constants.V3Path),
|
||||
Status: models.JobStatusFailed,
|
||||
}
|
||||
postgrestest.CreateJobs(s.T(), s.db, &j)
|
||||
defer postgrestest.DeleteJobByID(s.T(), s.db, j.ID)
|
||||
|
||||
s.apiV3.JobsStatus(rr, req)
|
||||
assert.Equal(s.T(), http.StatusOK, rr.Code)
|
||||
}
|
||||
|
||||
func (s *APITestSuite) TestJobsStatusWithStatuses() {
|
||||
req := httptest.NewRequest("GET", fmt.Sprintf("%sjobs?_status=Completed,Failed", constants.V3Path), nil)
|
||||
ad := s.makeContextValues(acoUnderTest)
|
||||
req = req.WithContext(context.WithValue(req.Context(), auth.AuthDataContextKey, ad))
|
||||
newLogEntry := MakeTestStructuredLoggerEntry(logrus.Fields{"cms_id": "A9999", "request_id": uuid.NewRandom().String()})
|
||||
req = req.WithContext(context.WithValue(req.Context(), log.CtxLoggerKey, newLogEntry))
|
||||
rr := httptest.NewRecorder()
|
||||
|
||||
j := models.Job{
|
||||
ACOID: acoUnderTest,
|
||||
RequestURL: fmt.Sprintf("%sPatient/$export?_type=ExplanationOfBenefit", constants.V3Path),
|
||||
Status: models.JobStatusFailed,
|
||||
}
|
||||
postgrestest.CreateJobs(s.T(), s.db, &j)
|
||||
defer postgrestest.DeleteJobByID(s.T(), s.db, j.ID)
|
||||
|
||||
s.apiV3.JobsStatus(rr, req)
|
||||
assert.Equal(s.T(), http.StatusOK, rr.Code)
|
||||
}
|
||||
|
||||
func (s *APITestSuite) TestDeleteJobBadInputs() {
|
||||
tests := []struct {
|
||||
name string
|
||||
jobID string
|
||||
expFHIRCode r4.IssueTypeCode
|
||||
expErrCode string
|
||||
}{
|
||||
{"InvalidJobID", "abcd", r4.IssueTypeCodeStructure, "could not parse job id"},
|
||||
{"DoesNotExist", "0", r4.IssueTypeCodeNotFound, "Job not found."},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
s.T().Run(tt.name, func(t *testing.T) {
|
||||
req := httptest.NewRequest("DELETE", fmt.Sprintf("%sjobs/%s", constants.V3Path, tt.jobID), nil)
|
||||
rr := httptest.NewRecorder()
|
||||
|
||||
rctx := chi.NewRouteContext()
|
||||
rctx.URLParams.Add("jobID", tt.jobID)
|
||||
req = req.WithContext(context.WithValue(req.Context(), chi.RouteCtxKey, rctx))
|
||||
ad := s.makeContextValues(acoUnderTest)
|
||||
req = req.WithContext(context.WithValue(req.Context(), auth.AuthDataContextKey, ad))
|
||||
newLogEntry := MakeTestStructuredLoggerEntry(logrus.Fields{"cms_id": "A9999", "request_id": uuid.NewRandom().String()})
|
||||
req = req.WithContext(context.WithValue(req.Context(), log.CtxLoggerKey, newLogEntry))
|
||||
s.apiV3.JobStatus(rr, req)
|
||||
|
||||
respOO := getOperationOutcome(t, rr.Body.Bytes())
|
||||
|
||||
assert.Equal(t, r4.IssueSeverityError, respOO.Issue[0].Severity)
|
||||
assert.Equal(t, tt.expFHIRCode, respOO.Issue[0].Code)
|
||||
assert.Equal(t, tt.expErrCode, respOO.Issue[0].Diagnostics)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func (s *APITestSuite) TestDeleteJob() {
|
||||
tests := []struct {
|
||||
status models.JobStatus
|
||||
expStatusCode int
|
||||
}{
|
||||
{models.JobStatusPending, http.StatusAccepted},
|
||||
{models.JobStatusInProgress, http.StatusAccepted},
|
||||
{models.JobStatusFailed, http.StatusGone},
|
||||
{models.JobStatusExpired, http.StatusGone},
|
||||
{models.JobStatusArchived, http.StatusGone},
|
||||
{models.JobStatusCompleted, http.StatusAccepted},
|
||||
{models.JobStatusCancelled, http.StatusGone},
|
||||
{models.JobStatusFailedExpired, http.StatusGone},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
s.T().Run(string(tt.status), func(t *testing.T) {
|
||||
j := models.Job{
|
||||
ACOID: uuid.Parse("DBBD1CE1-AE24-435C-807D-ED45953077D3"),
|
||||
RequestURL: fmt.Sprintf("%sPatient/$export?_type=Patient,Coverage", constants.V3Path),
|
||||
Status: tt.status,
|
||||
}
|
||||
postgrestest.CreateJobs(t, s.db, &j)
|
||||
defer postgrestest.DeleteJobByID(t, s.db, j.ID)
|
||||
|
||||
req := s.createJobStatusRequest(acoUnderTest, j.ID)
|
||||
rr := httptest.NewRecorder()
|
||||
|
||||
newLogEntry := MakeTestStructuredLoggerEntry(logrus.Fields{"cms_id": "A9999", "request_id": uuid.NewRandom().String()})
|
||||
req = req.WithContext(context.WithValue(req.Context(), log.CtxLoggerKey, newLogEntry))
|
||||
|
||||
s.apiV3.DeleteJob(rr, req)
|
||||
assert.Equal(t, tt.expStatusCode, rr.Code)
|
||||
if rr.Code == http.StatusGone {
|
||||
assert.Contains(t, rr.Body.String(), "job was not cancelled because it is not Pending or In Progress")
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
func (s *APITestSuite) TestMetadataResponse() {
|
||||
ts := httptest.NewServer(http.HandlerFunc(s.apiV3.Metadata))
|
||||
defer ts.Close()
|
||||
|
||||
res, err := http.Get(ts.URL)
|
||||
assert.NoError(s.T(), err)
|
||||
|
||||
assert.Equal(s.T(), "application/json", res.Header.Get(constants.ContentType))
|
||||
assert.Equal(s.T(), http.StatusOK, res.StatusCode)
|
||||
|
||||
resp, err := io.ReadAll(res.Body)
|
||||
assert.NoError(s.T(), err)
|
||||
|
||||
var cs r4.CapabilityStatement
|
||||
assert.NoError(s.T(), json.Unmarshal(resp, &cs))
|
||||
|
||||
// Expecting an R4 response so we'll evaluate some fields to reflect that
|
||||
assert.Equal(s.T(), "4.0.1", cs.FhirVersion)
|
||||
assert.Equal(s.T(), 1, len(cs.Rest))
|
||||
assert.Equal(s.T(), 3, len(cs.Rest[0].Resource))
|
||||
assert.Len(s.T(), cs.Instantiates, 2)
|
||||
assert.Contains(s.T(), cs.Instantiates[0], fmt.Sprintf("%s/metadata", constants.BFDV3Path))
|
||||
resourceData := []struct {
|
||||
rt r4.ResourceTypeCode
|
||||
opName string
|
||||
opDefinition string
|
||||
}{
|
||||
{r4.ResourceTypeCodePatient, "export", "http://hl7.org/fhir/uv/bulkdata/OperationDefinition/patient-export"},
|
||||
{r4.ResourceTypeCodeGroup, "export", "http://hl7.org/fhir/uv/bulkdata/OperationDefinition/group-export"},
|
||||
}
|
||||
|
||||
for _, rd := range resourceData {
|
||||
for _, r := range cs.Rest[0].Resource {
|
||||
if r.Type == rd.rt {
|
||||
assert.NotNil(s.T(), r)
|
||||
assert.Equal(s.T(), 1, len(r.Operation))
|
||||
assert.Equal(s.T(), rd.opName, r.Operation[0].Name)
|
||||
assert.Equal(s.T(), rd.opDefinition, r.Operation[0].Definition)
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
extensions := cs.Rest[0].Security.Extension
|
||||
assert.Len(s.T(), extensions, 1)
|
||||
assert.Equal(s.T(), "http://fhir-registry.smarthealthit.org/StructureDefinition/oauth-uris", extensions[0].Url)
|
||||
|
||||
subExtensions := extensions[0].Extension
|
||||
assert.Len(s.T(), subExtensions, 1)
|
||||
assert.Equal(s.T(), "token", subExtensions[0].Url)
|
||||
assert.Equal(s.T(), ts.URL+"/auth/token", subExtensions[0].ValueUri)
|
||||
}
|
||||
|
||||
func (s *APITestSuite) TestResourceTypes() {
|
||||
tests := []struct {
|
||||
name string
|
||||
resourceTypes []string
|
||||
statusCode int
|
||||
}{
|
||||
{"Supported type - Patient", []string{"Patient"}, http.StatusAccepted},
|
||||
{"Supported type - Coverage", []string{"Coverage"}, http.StatusAccepted},
|
||||
{"Supported type - Patient,Coverage", []string{"Patient", "Coverage"}, http.StatusAccepted},
|
||||
{"Supported type - EOB", []string{"ExplanationOfBenefit"}, http.StatusAccepted},
|
||||
{"Supported type - default", nil, http.StatusAccepted},
|
||||
}
|
||||
|
||||
resources, _ := service.GetClaimTypesMap([]string{
|
||||
"Patient",
|
||||
"Coverage",
|
||||
"ExplanationOfBenefit",
|
||||
}...)
|
||||
|
||||
h := api.NewHandler(resources, constants.BFDV3Path, constants.V3Version, s.db, s.pool)
|
||||
mockSvc := &service.MockService{}
|
||||
|
||||
mockSvc.On("GetLatestCCLFFile", mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything).Return(&models.CCLFFile{PerformanceYear: utils.GetPY()}, nil)
|
||||
mockAco := service.ACOConfig{
|
||||
Data: []string{"adjudicated"},
|
||||
}
|
||||
mockSvc.On("GetACOConfigForID", mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything, mock.Anything).Return(&mockAco, true)
|
||||
mockSvc.On("GetTimeConstraints", testUtils.CtxMatcher, mock.AnythingOfType("string")).Return(service.TimeConstraints{}, nil)
|
||||
mockSvc.On("GetCutoffTime", testUtils.CtxMatcher, mock.Anything, mock.Anything, mock.Anything, mock.Anything).Return(time.Time{}, constants.GetExistingBenes)
|
||||
mockSvc.On("IsV3NoPartialClaimsModel", mock.Anything).Return(false)
|
||||
h.Svc = mockSvc
|
||||
|
||||
for idx, handler := range []http.HandlerFunc{h.BulkGroupRequest, h.BulkPatientRequest} {
|
||||
for _, tt := range tests {
|
||||
s.T().Run(fmt.Sprintf("%s-%d", tt.name, idx), func(t *testing.T) {
|
||||
rr := httptest.NewRecorder()
|
||||
|
||||
ep := "Group"
|
||||
if idx == 1 {
|
||||
ep = "Patient"
|
||||
}
|
||||
|
||||
u, err := url.Parse(fmt.Sprintf("%s%s/$export", constants.V3Path, ep))
|
||||
assert.NoError(t, err)
|
||||
|
||||
rp := middleware.RequestParameters{
|
||||
Version: constants.V3Version,
|
||||
ResourceTypes: tt.resourceTypes,
|
||||
}
|
||||
|
||||
req := httptest.NewRequest("GET", u.String(), nil)
|
||||
rctx := chi.NewRouteContext()
|
||||
rctx.URLParams.Add("groupId", "all")
|
||||
req = req.WithContext(context.WithValue(req.Context(), chi.RouteCtxKey, rctx))
|
||||
req = req.WithContext(context.WithValue(req.Context(), appMiddleware.CtxTransactionKey, uuid.New()))
|
||||
ad := s.getAuthData()
|
||||
req = req.WithContext(context.WithValue(req.Context(), auth.AuthDataContextKey, ad))
|
||||
req = req.WithContext(middleware.SetRequestParamsCtx(req.Context(), rp))
|
||||
newLogEntry := MakeTestStructuredLoggerEntry(logrus.Fields{"cms_id": "A9999", "request_id": uuid.NewRandom().String()})
|
||||
req = req.WithContext(context.WithValue(req.Context(), log.CtxLoggerKey, newLogEntry))
|
||||
|
||||
handler(rr, req)
|
||||
assert.Equal(t, tt.statusCode, rr.Code)
|
||||
assert.Empty(t, rr.Body.String())
|
||||
if rr.Code == http.StatusAccepted {
|
||||
assert.NotEmpty(t, rr.Header().Get("Content-Location"))
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func (s *APITestSuite) TestGetAttributionStatus() {
|
||||
req := httptest.NewRequest("GET", fmt.Sprintf("%sattribution_status", constants.V3Path), nil)
|
||||
ad := s.makeContextValues(acoUnderTest)
|
||||
req = req.WithContext(context.WithValue(req.Context(), auth.AuthDataContextKey, ad))
|
||||
newLogEntry := MakeTestStructuredLoggerEntry(logrus.Fields{"cms_id": "A9999", "request_id": uuid.NewRandom().String()})
|
||||
req = req.WithContext(context.WithValue(req.Context(), log.CtxLoggerKey, newLogEntry))
|
||||
rr := httptest.NewRecorder()
|
||||
|
||||
s.apiV3.AttributionStatus(rr, req)
|
||||
assert.Equal(s.T(), http.StatusOK, rr.Code)
|
||||
|
||||
var resp api.AttributionFileStatusResponse
|
||||
err := json.Unmarshal(rr.Body.Bytes(), &resp)
|
||||
assert.NoError(s.T(), err)
|
||||
|
||||
aco := postgrestest.GetACOByUUID(s.T(), s.db, acoUnderTest)
|
||||
cclfFile := postgrestest.GetLatestCCLFFileByCMSIDAndType(s.T(), s.db, *aco.CMSID, models.FileTypeDefault)
|
||||
|
||||
assert.Equal(s.T(), "last_attribution_update", resp.IngestionDates[0].Type)
|
||||
assert.Equal(s.T(), cclfFile.Timestamp.Format("2006-01-02 15:04:05"), resp.IngestionDates[0].Timestamp.Format("2006-01-02 15:04:05"))
|
||||
assert.Equal(s.T(), "attribution_access_expiration", resp.ExpirationDates[0].Type)
|
||||
}
|
||||
|
||||
func (s *APITestSuite) getAuthData() (data auth.AuthData) {
|
||||
aco := postgrestest.GetACOByUUID(s.T(), s.db, acoUnderTest)
|
||||
return auth.AuthData{ACOID: acoUnderTest.String(), CMSID: *aco.CMSID, TokenID: uuid.NewRandom().String()}
|
||||
}
|
||||
|
||||
func (s *APITestSuite) makeContextValues(acoID uuid.UUID) (data auth.AuthData) {
|
||||
aco := postgrestest.GetACOByUUID(s.T(), s.db, acoID)
|
||||
return auth.AuthData{ACOID: aco.UUID.String(), CMSID: *aco.CMSID, TokenID: uuid.NewRandom().String()}
|
||||
}
|
||||
|
||||
func (s *APITestSuite) createJobStatusRequest(acoID uuid.UUID, jobID uint) *http.Request {
|
||||
req := httptest.NewRequest("GET", fmt.Sprintf("%sjobs/%d", constants.V3Path, jobID), nil)
|
||||
rctx := chi.NewRouteContext()
|
||||
rctx.URLParams.Add("jobID", fmt.Sprint(jobID))
|
||||
req = req.WithContext(context.WithValue(req.Context(), chi.RouteCtxKey, rctx))
|
||||
ad := s.makeContextValues(acoID)
|
||||
newLogEntry := MakeTestStructuredLoggerEntry(logrus.Fields{"cms_id": "A9999", "request_id": uuid.NewRandom().String()})
|
||||
req = req.WithContext(context.WithValue(req.Context(), log.CtxLoggerKey, newLogEntry))
|
||||
return req.WithContext(context.WithValue(req.Context(), auth.AuthDataContextKey, ad))
|
||||
}
|
||||
|
||||
// Compare expiry header against the expected time value.
|
||||
// There seems to be some slight difference in precision here,
|
||||
// so we'll compare up to seconds
|
||||
func assertExpiryEquals(t *testing.T, expectedTime time.Time, expiry string) {
|
||||
expiryTime, err := time.Parse(expiryHeaderFormat, expiry)
|
||||
if err != nil {
|
||||
t.Fatalf("Failed to parse %s to time.Time %s", expiry, err)
|
||||
}
|
||||
|
||||
assert.Equal(t, time.Duration(0), expectedTime.Round(time.Second).Sub(expiryTime.Round(time.Second)))
|
||||
}
|
||||
|
||||
func getOperationOutcome(t *testing.T, data []byte) *r4.OperationOutcome {
|
||||
var outcome r4.OperationOutcome
|
||||
assert.NoError(t, json.Unmarshal(data, &outcome))
|
||||
return &outcome
|
||||
}
|
||||
|
||||
func MakeTestStructuredLoggerEntry(logFields logrus.Fields) *log.StructuredLoggerEntry {
|
||||
var lggr logrus.Logger
|
||||
newLogEntry := &log.StructuredLoggerEntry{Logger: lggr.WithFields(logFields)}
|
||||
return newLogEntry
|
||||
}
|
||||
603
dev/vendor/bcda-app/bcda/client/bluebutton.go
vendored
Normal file
603
dev/vendor/bcda-app/bcda/client/bluebutton.go
vendored
Normal file
@@ -0,0 +1,603 @@
|
||||
package client
|
||||
|
||||
import (
|
||||
"context"
|
||||
"crypto/tls"
|
||||
"crypto/x509"
|
||||
"fmt"
|
||||
"io"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"slices"
|
||||
"strconv"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/ccoveille/go-safecast"
|
||||
backoff "github.com/cenkalti/backoff/v4"
|
||||
|
||||
fhirClient "github.com/CMSgov/bcda-app/bcda/client/fhir"
|
||||
"github.com/CMSgov/bcda-app/bcda/constants"
|
||||
|
||||
"github.com/CMSgov/bcda-app/bcda/fhir"
|
||||
"github.com/CMSgov/bcda-app/bcda/utils"
|
||||
"github.com/CMSgov/bcda-app/bcdaworker/queueing/worker_types"
|
||||
"github.com/CMSgov/bcda-app/conf"
|
||||
|
||||
"github.com/pkg/errors"
|
||||
|
||||
"github.com/sirupsen/logrus"
|
||||
|
||||
"github.com/pborman/uuid"
|
||||
)
|
||||
|
||||
var logger logrus.FieldLogger
|
||||
|
||||
const (
|
||||
clientIDHeader = "BULK-CLIENTID"
|
||||
jobIDHeader = "BULK-JOBID"
|
||||
TransactionIDHeader = "TRANSACTIONID"
|
||||
)
|
||||
|
||||
// BlueButtonConfig holds the configuration settings needed to create a BlueButtonClient
|
||||
// TODO (BCDA-3755): Move the other env vars used in NewBlueButtonClient to this struct
|
||||
type BlueButtonConfig struct {
|
||||
BBServer string
|
||||
BBBasePath string
|
||||
}
|
||||
|
||||
// NewConfig generates a new BlueButtonConfig using various environment variables.
|
||||
func NewConfig(basePath string) BlueButtonConfig {
|
||||
var server string
|
||||
if basePath == constants.BFDV3Path {
|
||||
server = conf.GetEnv("V3_BB_SERVER_LOCATION")
|
||||
} else {
|
||||
server = conf.GetEnv("BB_SERVER_LOCATION")
|
||||
}
|
||||
return BlueButtonConfig{
|
||||
BBServer: server,
|
||||
BBBasePath: basePath,
|
||||
}
|
||||
}
|
||||
|
||||
type ClaimsWindow struct {
|
||||
Earliest time.Time
|
||||
Latest time.Time
|
||||
}
|
||||
|
||||
type APIClient interface {
|
||||
GetExplanationOfBenefit(jobData worker_types.JobEnqueueArgs, patientID string, claimsWindow ClaimsWindow) (*fhir.Bundle, error)
|
||||
GetPatient(jobData worker_types.JobEnqueueArgs, patientID string) (*fhir.Bundle, error)
|
||||
GetCoverage(jobData worker_types.JobEnqueueArgs, beneficiaryID string) (*fhir.Bundle, error)
|
||||
GetPatientByMbi(jobData worker_types.JobEnqueueArgs, mbi string) (string, error)
|
||||
GetClaim(jobData worker_types.JobEnqueueArgs, mbi string, claimsWindow ClaimsWindow) (*fhir.Bundle, error)
|
||||
GetClaimResponse(jobData worker_types.JobEnqueueArgs, mbi string, claimsWindow ClaimsWindow) (*fhir.Bundle, error)
|
||||
}
|
||||
|
||||
type BlueButtonClient struct {
|
||||
client fhirClient.Client
|
||||
|
||||
maxTries uint64
|
||||
retryInterval time.Duration
|
||||
|
||||
bbServer string
|
||||
BBBasePath string
|
||||
}
|
||||
|
||||
// Ensure BlueButtonClient satisfies the interface
|
||||
var _ APIClient = &BlueButtonClient{}
|
||||
|
||||
func NewBlueButtonClient(config BlueButtonConfig) (*BlueButtonClient, error) {
|
||||
certFile := conf.GetEnv("BB_CLIENT_CERT_FILE")
|
||||
keyFile := conf.GetEnv("BB_CLIENT_KEY_FILE")
|
||||
pageSize := utils.GetEnvInt("BB_CLIENT_PAGE_SIZE", 0)
|
||||
cert, err := tls.LoadX509KeyPair(certFile, keyFile)
|
||||
if err != nil {
|
||||
return nil, errors.Wrap(err, "could not load Blue Button keypair")
|
||||
}
|
||||
|
||||
tlsConfig := &tls.Config{Certificates: []tls.Certificate{cert}, MinVersion: tls.VersionTLS12}
|
||||
|
||||
if strings.ToLower(conf.GetEnv("BB_CHECK_CERT")) != "false" {
|
||||
caFilePaths := strings.Split(conf.GetEnv("BB_CLIENT_CA_FILE"), ",")
|
||||
caCertPool := x509.NewCertPool()
|
||||
|
||||
for _, caFile := range caFilePaths {
|
||||
caCert, err := os.ReadFile(filepath.Clean(caFile))
|
||||
if err != nil {
|
||||
return nil, errors.Wrap(err, "could not read CA file")
|
||||
}
|
||||
|
||||
if ok := caCertPool.AppendCertsFromPEM(caCert); !ok {
|
||||
return nil, errors.New("could not append CA certificate(s)")
|
||||
}
|
||||
}
|
||||
|
||||
tlsConfig.RootCAs = caCertPool
|
||||
} else {
|
||||
tlsConfig.InsecureSkipVerify = true // #nosec G402 this is only used in localdev/ci testing
|
||||
logger.Warn("Blue Button certificate check disabled")
|
||||
}
|
||||
|
||||
transport := &http.Transport{
|
||||
TLSClientConfig: tlsConfig,
|
||||
// Ensure that we have compression enabled. This allows the transport to request for gzip content
|
||||
// and handle the decompression transparently.
|
||||
// See: https://golang.org/src/net/http/transport.go?s=3396:10950#L182 for more information
|
||||
DisableCompression: false,
|
||||
}
|
||||
var timeout int
|
||||
if timeout, err = strconv.Atoi(conf.GetEnv("BB_TIMEOUT_MS")); err != nil {
|
||||
logger.Warn(errors.Wrap(err, "Could not get Blue Button timeout from environment variable; using default value of 10000."))
|
||||
timeout = 10000
|
||||
}
|
||||
|
||||
hl := &httpLogger{transport, logger}
|
||||
httpClient := &http.Client{Transport: hl, Timeout: time.Duration(timeout) * time.Millisecond}
|
||||
client := fhirClient.NewClient(httpClient, pageSize)
|
||||
maxTries, err := safecast.ToUint64(utils.GetEnvInt("BB_REQUEST_MAX_TRIES", 3))
|
||||
if err != nil {
|
||||
logger.Warn(errors.Wrap(err, "Could not convert Blue Button max retries from environment variable"))
|
||||
}
|
||||
retryInterval := time.Duration(utils.GetEnvInt("BB_REQUEST_RETRY_INTERVAL_MS", 1000)) * time.Millisecond
|
||||
return &BlueButtonClient{client, maxTries, retryInterval, config.BBServer, config.BBBasePath}, nil
|
||||
}
|
||||
|
||||
// SetLogger sets the logger to be used in the client.
|
||||
// Since both the API and worker use the bluebutton client, we need
|
||||
// to be able to set the appropriate logger based on who is using the client.
|
||||
func SetLogger(log logrus.FieldLogger) {
|
||||
logger = log
|
||||
}
|
||||
|
||||
func (bbc *BlueButtonClient) GetPatient(jobData worker_types.JobEnqueueArgs, patientID string) (*fhir.Bundle, error) {
|
||||
header := make(http.Header)
|
||||
header.Add("IncludeAddressFields", "true")
|
||||
params := GetDefaultParams()
|
||||
params.Set("_id", patientID)
|
||||
updateParamWithLastUpdated(¶ms, jobData.Since, jobData.TransactionTime)
|
||||
|
||||
u, err := bbc.getURL("Patient", params)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return bbc.makeBundleDataRequest("GET", u, jobData, header, nil)
|
||||
}
|
||||
|
||||
func (bbc *BlueButtonClient) GetPatientByMbi(jobData worker_types.JobEnqueueArgs, mbi string) (string, error) {
|
||||
headers := createURLEncodedHeader()
|
||||
params := GetDefaultParams()
|
||||
params.Set("identifier", fmt.Sprintf("http://hl7.org/fhir/sid/us-mbi|%s", mbi))
|
||||
|
||||
u, err := bbc.getURL("Patient/_search", url.Values{})
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
||||
return bbc.getRawData("POST", jobData, u, headers, strings.NewReader(params.Encode()))
|
||||
}
|
||||
|
||||
func (bbc *BlueButtonClient) GetCoverage(jobData worker_types.JobEnqueueArgs, beneficiaryID string) (*fhir.Bundle, error) {
|
||||
params := GetDefaultParams()
|
||||
params.Set("beneficiary", beneficiaryID)
|
||||
updateParamWithLastUpdated(¶ms, jobData.Since, jobData.TransactionTime)
|
||||
|
||||
u, err := bbc.getURL("Coverage", params)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return bbc.makeBundleDataRequest("GET", u, jobData, nil, nil)
|
||||
}
|
||||
|
||||
func (bbc *BlueButtonClient) GetClaim(jobData worker_types.JobEnqueueArgs, mbi string, claimsWindow ClaimsWindow) (*fhir.Bundle, error) {
|
||||
headers := createURLEncodedHeader()
|
||||
params := GetDefaultParams()
|
||||
updateParamsWithClaimsDefaults(¶ms, mbi)
|
||||
updateParamWithServiceDate(¶ms, claimsWindow)
|
||||
updateParamWithLastUpdated(¶ms, jobData.Since, jobData.TransactionTime)
|
||||
|
||||
u, err := bbc.getURL("Claim/_search", url.Values{})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return bbc.makeBundleDataRequest("POST", u, jobData, headers, strings.NewReader(params.Encode()))
|
||||
}
|
||||
|
||||
func (bbc *BlueButtonClient) GetClaimResponse(jobData worker_types.JobEnqueueArgs, mbi string, claimsWindow ClaimsWindow) (*fhir.Bundle, error) {
|
||||
headers := createURLEncodedHeader()
|
||||
params := GetDefaultParams()
|
||||
updateParamsWithClaimsDefaults(¶ms, mbi)
|
||||
updateParamWithServiceDate(¶ms, claimsWindow)
|
||||
updateParamWithLastUpdated(¶ms, jobData.Since, jobData.TransactionTime)
|
||||
|
||||
u, err := bbc.getURL("ClaimResponse/_search", url.Values{})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return bbc.makeBundleDataRequest("POST", u, jobData, headers, strings.NewReader(params.Encode()))
|
||||
}
|
||||
|
||||
func (bbc *BlueButtonClient) GetExplanationOfBenefit(jobData worker_types.JobEnqueueArgs, patientID string, claimsWindow ClaimsWindow) (*fhir.Bundle, error) {
|
||||
header := make(http.Header)
|
||||
header.Add("IncludeTaxNumbers", "true")
|
||||
params := GetDefaultParams()
|
||||
params.Set("patient", patientID)
|
||||
|
||||
if bbc.BBBasePath != constants.BFDV3Path {
|
||||
params.Set("excludeSAMHSA", "true")
|
||||
} else {
|
||||
params.Set("_security:not", "42CFRPart2")
|
||||
}
|
||||
|
||||
updateParamWithServiceDate(¶ms, claimsWindow)
|
||||
updateParamWithLastUpdated(¶ms, jobData.Since, jobData.TransactionTime)
|
||||
updateParamWithTypeFilter(¶ms, jobData.TypeFilter)
|
||||
setRestrictiveServiceDateWindow(¶ms)
|
||||
|
||||
u, err := bbc.getURL("ExplanationOfBenefit", params)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return bbc.makeBundleDataRequest("GET", u, jobData, header, nil)
|
||||
}
|
||||
|
||||
func (bbc *BlueButtonClient) GetMetadata() (string, error) {
|
||||
u, err := bbc.getURL("metadata", GetDefaultParams())
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
jobData := worker_types.JobEnqueueArgs{}
|
||||
|
||||
return bbc.getRawData("GET", jobData, u, nil, nil)
|
||||
}
|
||||
|
||||
func (bbc *BlueButtonClient) makeBundleDataRequest(method string, u *url.URL, jobData worker_types.JobEnqueueArgs, headers http.Header, body io.Reader) (*fhir.Bundle, error) {
|
||||
var b *fhir.Bundle
|
||||
for ok := true; ok; {
|
||||
result, nextURL, err := bbc.tryBundleRequest(method, u, jobData, headers, body)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if b == nil {
|
||||
b = result
|
||||
} else {
|
||||
b.Entries = append(b.Entries, result.Entries...)
|
||||
}
|
||||
|
||||
u = nextURL
|
||||
ok = nextURL != nil
|
||||
}
|
||||
|
||||
return b, nil
|
||||
}
|
||||
|
||||
func (bbc *BlueButtonClient) tryBundleRequest(method string, u *url.URL, jobData worker_types.JobEnqueueArgs, headers http.Header, body io.Reader) (*fhir.Bundle, *url.URL, error) {
|
||||
var (
|
||||
result *fhir.Bundle
|
||||
nextURL *url.URL
|
||||
err error
|
||||
)
|
||||
|
||||
eb := backoff.NewExponentialBackOff()
|
||||
eb.InitialInterval = bbc.retryInterval
|
||||
b := backoff.WithMaxRetries(eb, bbc.maxTries)
|
||||
|
||||
err = backoff.RetryNotify(func() error {
|
||||
req, err := http.NewRequest(method, u.String(), body)
|
||||
if err != nil {
|
||||
logger.Error(err)
|
||||
return err
|
||||
}
|
||||
|
||||
for key, values := range headers {
|
||||
for _, value := range values {
|
||||
req.Header.Add(key, value)
|
||||
}
|
||||
}
|
||||
addDefaultRequestHeaders(req, uuid.NewRandom(), jobData)
|
||||
|
||||
result, nextURL, err = bbc.client.DoBundleRequest(req)
|
||||
if err != nil {
|
||||
logger.Error(err)
|
||||
}
|
||||
return err
|
||||
},
|
||||
b,
|
||||
func(err error, d time.Duration) {
|
||||
logger.Infof("Blue Button request failed %s. Retry in %s", err.Error(), d.String())
|
||||
},
|
||||
)
|
||||
|
||||
if err != nil {
|
||||
return nil, nil, fmt.Errorf("blue button request failed %d time(s) %s", bbc.maxTries, err.Error())
|
||||
}
|
||||
|
||||
return result, nextURL, nil
|
||||
}
|
||||
|
||||
func (bbc *BlueButtonClient) getRawData(method string, jobData worker_types.JobEnqueueArgs, u *url.URL, headers http.Header, body io.Reader) (string, error) {
|
||||
eb := backoff.NewExponentialBackOff()
|
||||
eb.InitialInterval = bbc.retryInterval
|
||||
b := backoff.WithMaxRetries(eb, bbc.maxTries)
|
||||
|
||||
var result string
|
||||
|
||||
err := backoff.RetryNotify(func() error {
|
||||
req, err := http.NewRequest(method, u.String(), body)
|
||||
if err != nil {
|
||||
logger.Error(err)
|
||||
return err
|
||||
}
|
||||
|
||||
for key, values := range headers {
|
||||
for _, value := range values {
|
||||
req.Header.Add(key, value)
|
||||
}
|
||||
}
|
||||
addDefaultRequestHeaders(req, uuid.NewRandom(), jobData)
|
||||
|
||||
result, err = bbc.client.DoRaw(req)
|
||||
if err != nil {
|
||||
logger.Error(err)
|
||||
}
|
||||
return err
|
||||
},
|
||||
b,
|
||||
func(err error, d time.Duration) {
|
||||
logger.Infof("Blue Button request failed %s. Retry in %s", err, d.String())
|
||||
},
|
||||
)
|
||||
|
||||
if err != nil {
|
||||
return "", fmt.Errorf("blue button request failed %d time(s) %s", bbc.maxTries, err.Error())
|
||||
}
|
||||
|
||||
return result, nil
|
||||
}
|
||||
|
||||
func (bbc *BlueButtonClient) getURL(path string, params url.Values) (*url.URL, error) {
|
||||
u, err := url.Parse(fmt.Sprintf("%s%s/%s/", bbc.bbServer, bbc.BBBasePath, path))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
u.RawQuery = params.Encode()
|
||||
|
||||
return u, nil
|
||||
}
|
||||
|
||||
func addDefaultRequestHeaders(req *http.Request, reqID uuid.UUID, jobData worker_types.JobEnqueueArgs) {
|
||||
// Info for BB backend: https://jira.cms.gov/browse/BLUEBUTTON-483
|
||||
req.Header.Add("keep-alive", "")
|
||||
req.Header.Add(constants.BBHeaderTS, time.Now().String())
|
||||
req.Header.Add(constants.BBHeaderOriginQID, reqID.String())
|
||||
req.Header.Add(constants.BBHeaderOriginQC, "1")
|
||||
req.Header.Add(constants.BBHeaderOriginURL, req.URL.String())
|
||||
req.Header.Add("IncludeIdentifiers", "mbi")
|
||||
req.Header.Add(jobIDHeader, strconv.Itoa(jobData.ID))
|
||||
req.Header.Add(clientIDHeader, jobData.CMSID)
|
||||
req.Header.Add(TransactionIDHeader, jobData.TransactionID)
|
||||
|
||||
// We SHOULD NOT be specifying "Accept-Encoding: gzip" on the request header.
|
||||
// If we specify this header at the client level, then we must be responsible for decompressing the response.
|
||||
// This header should be automatically set by the underlying http.Transport which will handle the decompression transparently
|
||||
// Details: https://golang.org/src/net/http/transport.go#L2432
|
||||
// req.Header.Add("Accept-Encoding", "gzip")
|
||||
|
||||
// Do not set BB-specific headers with blank values
|
||||
// Leaving them here, commented out, in case we want to set them to real values in future
|
||||
//req.Header.Add("BlueButton-BeneficiaryId", "")
|
||||
//req.Header.Add("BlueButton-OriginatingIpAddress", "")
|
||||
//req.Header.Add("BlueButton-BackendCall", "")
|
||||
}
|
||||
|
||||
func GetDefaultParams() (params url.Values) {
|
||||
params = url.Values{}
|
||||
params.Set("_format", "application/fhir+json")
|
||||
return params
|
||||
}
|
||||
|
||||
// updateParamWithServiceDate adds service-date query parameters for the ClaimsWindow,
|
||||
// requesting claims on or after Earliest ("ge") and on or before Latest ("le").
|
||||
func updateParamWithServiceDate(params *url.Values, claimsWindow ClaimsWindow) {
|
||||
// ServiceDate only uses yyyy-mm-dd
|
||||
const isoDate = "2006-01-02"
|
||||
|
||||
if !claimsWindow.Earliest.IsZero() {
|
||||
params.Add("service-date", fmt.Sprintf("ge%s", claimsWindow.Earliest.Format(isoDate)))
|
||||
}
|
||||
|
||||
if !claimsWindow.Latest.IsZero() {
|
||||
params.Add("service-date", fmt.Sprintf("le%s", claimsWindow.Latest.Format(isoDate)))
|
||||
}
|
||||
}
|
||||
|
||||
type serviceDateVal struct {
|
||||
prefix string
|
||||
date time.Time
|
||||
}
|
||||
|
||||
// setRestrictiveServiceDateWindow sets the most restrictive window of time from which to pull data from BFD via service-date params.
|
||||
// BFD only allows for one earliest boundary and one latest boundary.
|
||||
// We need to do some comparisons to make sure we apply the most restrictive option for each.
|
||||
// eg "gt2025" is a more restrictive earliest boundary than "gt2024" as that will only get us data starting from 2025 and not all the way back to 2024.
|
||||
// known edge cases that are currently not accounted for (low risk, low priority, time constraints):
|
||||
// - we dont allow for hours, mins, secs, tz, etc
|
||||
func setRestrictiveServiceDateWindow(params *url.Values) {
|
||||
serviceDates := (*params)["service-date"]
|
||||
if len(serviceDates) <= 0 {
|
||||
return
|
||||
}
|
||||
|
||||
var earliestDates, latestDates []serviceDateVal
|
||||
for _, date := range serviceDates {
|
||||
if strings.HasPrefix(date, "ge") || strings.HasPrefix(date, "gt") {
|
||||
parsed, err := fhir.ParseDateString(date[2:])
|
||||
if err == nil {
|
||||
earliestDates = append(earliestDates, serviceDateVal{prefix: date[:2], date: parsed})
|
||||
}
|
||||
} else if strings.HasPrefix(date, "le") || strings.HasPrefix(date, "lt") {
|
||||
parsed, err := fhir.ParseDateString(date[2:])
|
||||
if err == nil {
|
||||
latestDates = append(latestDates, serviceDateVal{prefix: date[:2], date: parsed})
|
||||
}
|
||||
} else if strings.HasPrefix(date, "eq") {
|
||||
parsed, err := fhir.ParseDateString(date[2:])
|
||||
if err == nil {
|
||||
earliestDates = append(earliestDates, serviceDateVal{prefix: "ge", date: parsed})
|
||||
latestDates = append(latestDates, serviceDateVal{prefix: "lt", date: parseLatestDateFromEqualPrefix(date[2:])})
|
||||
}
|
||||
} else if strings.HasPrefix(date, "20") {
|
||||
parsed, err := fhir.ParseDateString(date)
|
||||
if err == nil {
|
||||
earliestDates = append(earliestDates, serviceDateVal{prefix: "ge", date: parsed})
|
||||
latestDates = append(latestDates, serviceDateVal{prefix: "lt", date: parseLatestDateFromEqualPrefix(date)})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// remove any zero dates to cleanse list of invalids
|
||||
earliestDates = slices.DeleteFunc(earliestDates, func(s serviceDateVal) bool { return s.date.IsZero() })
|
||||
latestDates = slices.DeleteFunc(latestDates, func(s serviceDateVal) bool { return s.date.IsZero() })
|
||||
|
||||
// sort earliest in descending order, and latest in ascending order so we can pick the most restrictive for each
|
||||
slices.SortFunc(earliestDates, func(a, b serviceDateVal) int {
|
||||
if c := b.date.Compare(a.date); c != 0 {
|
||||
return c
|
||||
}
|
||||
|
||||
if a.prefix == "gt" {
|
||||
return -1
|
||||
}
|
||||
if b.prefix == "gt" {
|
||||
return 1
|
||||
}
|
||||
|
||||
return 0
|
||||
})
|
||||
slices.SortFunc(latestDates, func(a, b serviceDateVal) int {
|
||||
if c := a.date.Compare(b.date); c != 0 {
|
||||
return c
|
||||
}
|
||||
|
||||
if a.prefix == "lt" {
|
||||
return -1
|
||||
}
|
||||
if b.prefix == "lt" {
|
||||
return 1
|
||||
}
|
||||
|
||||
return 0
|
||||
})
|
||||
|
||||
// remove all existing service-date instances so we can start from scratch
|
||||
params.Del("service-date")
|
||||
if len(earliestDates) > 0 {
|
||||
params.Add("service-date", earliestDates[0].prefix+earliestDates[0].date.Format("2006-01-02"))
|
||||
}
|
||||
if len(latestDates) > 0 {
|
||||
params.Add("service-date", latestDates[0].prefix+latestDates[0].date.Format("2006-01-02"))
|
||||
}
|
||||
}
|
||||
|
||||
func parseLatestDateFromEqualPrefix(date string) time.Time {
|
||||
// date interval of a day; latest date is the beginning of the next day
|
||||
parsedDate, err := time.Parse("2006-01-02", date)
|
||||
if err == nil {
|
||||
return parsedDate.AddDate(0, 0, 1)
|
||||
}
|
||||
|
||||
// date interval of a month; latest date is the beginning of first day of the next month
|
||||
parsedDate, err = time.Parse("2006-01", date)
|
||||
if err == nil {
|
||||
return parsedDate.AddDate(0, 1, 0)
|
||||
}
|
||||
|
||||
// date interval of a year; latest date is the beginning of the first day of the next year
|
||||
parsedDate, err = time.Parse("2006", date)
|
||||
if err == nil {
|
||||
return parsedDate.AddDate(1, 0, 0)
|
||||
}
|
||||
|
||||
// if a time is specified, treat it like a day interval; latest date is the beginning of the next day
|
||||
// ToDo: update this and upstream/downstream logic to properly handle times
|
||||
parsedDate, err = fhir.ParseDateString(date)
|
||||
if err == nil {
|
||||
return parsedDate.AddDate(0, 0, 1)
|
||||
}
|
||||
|
||||
return time.Time{}
|
||||
}
|
||||
|
||||
func updateParamWithLastUpdated(params *url.Values, since string, transactionTime time.Time) {
|
||||
// upper bound will always be set
|
||||
params.Set("_lastUpdated", "le"+transactionTime.Format(time.RFC3339Nano))
|
||||
|
||||
// only set the lower bound parameter if it exists and begins with "gt" (to align with what is expected in _lastUpdated)
|
||||
if len(since) > 0 && strings.HasPrefix(since, "gt") {
|
||||
params.Add("_lastUpdated", since)
|
||||
}
|
||||
}
|
||||
|
||||
func updateParamWithTypeFilter(params *url.Values, typeFilter fhir.TypeFilterSubquery) {
|
||||
for _, subqueryParam := range typeFilter.QueryParameters {
|
||||
params.Add(subqueryParam.Name, subqueryParam.Value)
|
||||
}
|
||||
}
|
||||
|
||||
func updateParamsWithClaimsDefaults(params *url.Values, mbi string) {
|
||||
params.Set("excludeSAMHSA", "true")
|
||||
params.Set("includeTaxNumbers", "true")
|
||||
params.Set("isHashed", "false")
|
||||
params.Set("mbi", mbi)
|
||||
}
|
||||
|
||||
func createURLEncodedHeader() http.Header {
|
||||
headers := make(http.Header)
|
||||
headers.Add("Content-Type", "application/x-www-form-urlencoded")
|
||||
|
||||
return headers
|
||||
}
|
||||
|
||||
type httpLogger struct {
|
||||
t *http.Transport
|
||||
l logrus.FieldLogger
|
||||
}
|
||||
|
||||
func (h *httpLogger) RoundTrip(req *http.Request) (*http.Response, error) {
|
||||
go h.logRequest(req.Clone(context.Background()))
|
||||
resp, err := h.t.RoundTrip(req)
|
||||
if resp != nil {
|
||||
h.logResponse(req, resp)
|
||||
}
|
||||
return resp, err
|
||||
}
|
||||
|
||||
func (h *httpLogger) logRequest(req *http.Request) {
|
||||
h.l.WithFields(logrus.Fields{
|
||||
"bb_query_id": req.Header.Get(constants.BBHeaderOriginQID),
|
||||
"bb_query_ts": req.Header.Get(constants.BBHeaderTS),
|
||||
"bb_uri": req.URL.String(),
|
||||
"job_id": req.Header.Get(jobIDHeader),
|
||||
"cms_id": req.Header.Get(clientIDHeader),
|
||||
}).Infoln("request")
|
||||
}
|
||||
|
||||
func (h *httpLogger) logResponse(req *http.Request, resp *http.Response) {
|
||||
h.l.WithFields(logrus.Fields{
|
||||
"resp_status": resp.StatusCode,
|
||||
"bb_query_id": req.Header.Get(constants.BBHeaderOriginQID),
|
||||
"bb_query_ts": req.Header.Get(constants.BBHeaderTS),
|
||||
"bb_uri": req.URL.String(),
|
||||
"job_id": req.Header.Get(jobIDHeader),
|
||||
"cms_id": req.Header.Get(clientIDHeader),
|
||||
"transaction_id": req.Header.Get(TransactionIDHeader),
|
||||
}).Infoln("response")
|
||||
}
|
||||
68
dev/vendor/bcda-app/bcda/constants/constants.go
vendored
Normal file
68
dev/vendor/bcda-app/bcda/constants/constants.go
vendored
Normal file
@@ -0,0 +1,68 @@
|
||||
package constants
|
||||
|
||||
const DevACOUUID = "0c527d2e-2e8a-4808-b11d-0fa06baf8254"
|
||||
const SmallACOUUID = "3461C774-B48F-11E8-96F8-529269fb1459"
|
||||
const MediumACOUUID = "C74C008D-42F8-4ED9-BF88-CEE659C7F692"
|
||||
const LargeACOUUID = "8D80925A-027E-43DD-8AED-9A501CC4CD91"
|
||||
|
||||
const ImportInprog = "In-Progress"
|
||||
const ImportComplete = "Completed"
|
||||
const ImportFail = "Failed"
|
||||
|
||||
// This is set during compilation. See dockerfiles for usage
|
||||
var Version = "latest"
|
||||
|
||||
const Adjudicated = "adjudicated"
|
||||
const PartiallyAdjudicated = "partially-adjudicated"
|
||||
|
||||
// Cli.go constants
|
||||
const CliCMSIDArg = "cms-id"
|
||||
const CliCMSIDDesc = "CMS ID of ACO"
|
||||
const CliArchDesc = "How long files should wait in archive before deletion"
|
||||
const CliRemoveArchDesc = "Remove job directory and files from archive and update job status to Expired"
|
||||
const CliAuthToolsCategory = "Authentication tools"
|
||||
const CliDataImpCategory = "Data import"
|
||||
|
||||
const ContentType = "Content-Type"
|
||||
const JsonContentType = "application/json"
|
||||
const FHIRJsonContentType = "application/fhir+json"
|
||||
|
||||
const BBHeaderTS = "BlueButton-OriginalQueryTimestamp"
|
||||
const BBHeaderOriginURL = "BlueButton-OriginalUrl"
|
||||
const BBHeaderOriginQID = "BlueButton-OriginalQueryId"
|
||||
const BBHeaderOriginQ = "BlueButton-OriginalQuery"
|
||||
const BBHeaderOriginQC = "BlueButton-OriginalQueryCounter"
|
||||
|
||||
const CCLFFileRetID = "%s RETURNING id"
|
||||
const JobKeyCreateErr = "failed to create job key: %w"
|
||||
|
||||
const JOBIDPath = "/jobs/{jobID}"
|
||||
|
||||
const IssuerSSAS = "ssas"
|
||||
|
||||
const EmptyString = ""
|
||||
|
||||
const FiveSeconds = "5"
|
||||
const FiveHundredSeconds = "500"
|
||||
|
||||
const CCLF8FileNum = int(8)
|
||||
|
||||
const BFDV1Path = "/v1/fhir"
|
||||
const BFDV2Path = "/v2/fhir"
|
||||
const BFDV3Path = "/v3/fhir"
|
||||
const V3Version = "v3"
|
||||
|
||||
const GetExistingBenes = "GetExistingBenes"
|
||||
const GetNewAndExistingBenes = "GetNewAndExistingBenes"
|
||||
|
||||
const DefaultRegion = "us-east-1"
|
||||
|
||||
const PublisherName = "Centers for Medicare & Medicaid Services"
|
||||
const SoftwareName = "Beneficiary Claims Data API"
|
||||
const SoftwareDescription = "The Beneficiary Claims Data API (BCDA) enables healthcare organizations participating in the Medicare Shared Savings Program or a CMS Innovation Model to retrieve Medicare Part A, Part B, and Part D claims data for their prospectively assigned or assignable beneficiaries."
|
||||
|
||||
const SmartOAuthURIsExtensionURL = "http://fhir-registry.smarthealthit.org/StructureDefinition/oauth-uris"
|
||||
const RestfulSecurityServiceSystem = "http://terminology.hl7.org/CodeSystem/restful-security-service"
|
||||
const BFDSystemTypeURL = "https://bluebutton.cms.gov/fhir/CodeSystem/System-Type"
|
||||
const BFDFinalActionURL = "https://bluebutton.cms.gov/fhir/CodeSystem/Final-Action"
|
||||
const WarningsAndInfoFileName = "warnings-and-info.ndjson"
|
||||
9
dev/vendor/bcda-app/bcda/constants/types.go
vendored
Normal file
9
dev/vendor/bcda-app/bcda/constants/types.go
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
package constants
|
||||
|
||||
type DataRequestType uint8
|
||||
|
||||
const (
|
||||
DefaultRequest DataRequestType = iota
|
||||
RetrieveNewBeneHistData // Allows caller to retrieve all of the data for newly attributed beneficiaries
|
||||
Runout // Allows caller to retrieve claims data for beneficiaries no longer attributed to the ACO
|
||||
)
|
||||
304
dev/vendor/bcda-app/bcda/fhir/param.go
vendored
Normal file
304
dev/vendor/bcda-app/bcda/fhir/param.go
vendored
Normal file
@@ -0,0 +1,304 @@
|
||||
package fhir
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"slices"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/CMSgov/bcda-app/bcda/constants"
|
||||
)
|
||||
|
||||
type TypeFilterSubquery struct {
|
||||
ResourceType string
|
||||
QueryParameters []TypeFilterSubqueryParam
|
||||
}
|
||||
|
||||
type TypeFilterSubqueryParam struct {
|
||||
Name string
|
||||
Value string
|
||||
}
|
||||
|
||||
type TypeFilterParamName string
|
||||
|
||||
const (
|
||||
TypeFilterParamOutcome TypeFilterParamName = "outcome"
|
||||
TypeFilterParamServiceDate TypeFilterParamName = "service-date"
|
||||
TypeFilterParamTag TypeFilterParamName = "_tag"
|
||||
)
|
||||
|
||||
type ParameterParsingError struct {
|
||||
Details string
|
||||
}
|
||||
|
||||
func (e ParameterParsingError) Error() string {
|
||||
return fmt.Sprintf("malformed parameter: %s", e.Details)
|
||||
}
|
||||
|
||||
type ParameterValidationError struct {
|
||||
Details string
|
||||
}
|
||||
|
||||
func (e ParameterValidationError) Error() string {
|
||||
return fmt.Sprintf("invalid parameter: %s", e.Details)
|
||||
}
|
||||
|
||||
func ParseTypeFilterSubquery(s string) (TypeFilterSubquery, error) {
|
||||
// Expected format is: <resourceType>?<paramList>
|
||||
resourceType, params, found := strings.Cut(s, "?")
|
||||
if !found {
|
||||
return TypeFilterSubquery{}, ParameterParsingError{Details: fmt.Sprintf("_typeFilter parameter missing question mark %s", s)}
|
||||
} else if len(resourceType) == 0 {
|
||||
return TypeFilterSubquery{}, ParameterParsingError{Details: fmt.Sprintf("_typeFilter parameter missing resource type %s", s)}
|
||||
} else if len(params) == 0 {
|
||||
return TypeFilterSubquery{}, ParameterParsingError{Details: fmt.Sprintf("_typeFilter parameter missing value %s", s)}
|
||||
}
|
||||
|
||||
var subqueryParams []TypeFilterSubqueryParam
|
||||
paramAry := strings.SplitSeq(params, "&")
|
||||
for paramPair := range paramAry {
|
||||
name, value, found := strings.Cut(paramPair, "=")
|
||||
if !found {
|
||||
return TypeFilterSubquery{}, ParameterParsingError{Details: fmt.Sprintf("_typeFilter value missing equals sign: %s", paramPair)}
|
||||
}
|
||||
subqueryParams = append(subqueryParams, TypeFilterSubqueryParam{Name: name, Value: value})
|
||||
}
|
||||
return TypeFilterSubquery{ResourceType: resourceType, QueryParameters: subqueryParams}, nil
|
||||
}
|
||||
|
||||
func ValidateTypeFilterSubquery(subquery TypeFilterSubquery) error {
|
||||
if subquery.ResourceType != "ExplanationOfBenefit" {
|
||||
return ParameterValidationError{Details: fmt.Sprintf("invalid _typeFilter Resource Type (Only EOBs valid): %s", subquery.ResourceType)}
|
||||
}
|
||||
|
||||
var serviceDateParams []DateParam
|
||||
for _, param := range subquery.QueryParameters {
|
||||
if strings.HasPrefix(param.Name, string(TypeFilterParamTag)) {
|
||||
tag, err := ParseTokenParam(param)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = ValidateTag(tag)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
} else if strings.HasPrefix(param.Name, string(TypeFilterParamServiceDate)) {
|
||||
date, err := ParseDateParam(param)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
serviceDateParams = append(serviceDateParams, date)
|
||||
} else if strings.HasPrefix(param.Name, string(TypeFilterParamOutcome)) {
|
||||
outcome, err := ParseTokenParam(param)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = ValidateOutcome(outcome)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
} else {
|
||||
return ParameterValidationError{Details: fmt.Sprintf("invalid _typeFilter subquery parameter: %s", param.Name)}
|
||||
}
|
||||
}
|
||||
err := ValidateServiceDates(serviceDateParams)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func GetTagParams(subquery TypeFilterSubquery) ([]TokenParam, error) {
|
||||
tagParams := []TokenParam{}
|
||||
for _, param := range subquery.QueryParameters {
|
||||
if strings.HasPrefix(param.Name, string(TypeFilterParamTag)) {
|
||||
tag, err := ParseTokenParam(param)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
tagParams = append(tagParams, tag)
|
||||
}
|
||||
}
|
||||
return tagParams, nil
|
||||
}
|
||||
|
||||
// https://hl7.org/fhir/R4/search.html#string
|
||||
type StringParam struct {
|
||||
Name string
|
||||
Modifier string
|
||||
Values []string
|
||||
}
|
||||
|
||||
func ParseStringParam(subqueryParam TypeFilterSubqueryParam) (StringParam, error) {
|
||||
s := StringParam{}
|
||||
s.Name, s.Modifier, _ = strings.Cut(subqueryParam.Name, ":")
|
||||
if len(s.Name) == 0 {
|
||||
return s, ParameterParsingError{Details: "string parameter missing name"}
|
||||
}
|
||||
if len(subqueryParam.Value) == 0 {
|
||||
return s, ParameterParsingError{Details: fmt.Sprintf("string parameter missing value: %s", s.Name)}
|
||||
}
|
||||
s.Values = strings.Split(subqueryParam.Value, ",")
|
||||
return s, nil
|
||||
}
|
||||
|
||||
// https://hl7.org/fhir/R4/search.html#date
|
||||
type DateParam struct {
|
||||
Name string
|
||||
Prefix string
|
||||
Datetimes []string
|
||||
}
|
||||
|
||||
func ParseDateParam(subqueryParam TypeFilterSubqueryParam) (DateParam, error) {
|
||||
d := DateParam{}
|
||||
if len(subqueryParam.Name) == 0 {
|
||||
return d, ParameterParsingError{Details: "date parameter missing key"}
|
||||
}
|
||||
d.Name = subqueryParam.Name
|
||||
|
||||
if len(subqueryParam.Value) == 0 {
|
||||
return d, ParameterParsingError{Details: fmt.Sprintf("date parameter missing value: %s", d.Name)}
|
||||
}
|
||||
|
||||
// BFD only supports eq, ge, gt, lt, le as of 2026-08-17. See: https://cmsgov.slack.com/archives/CMT1YS2KY/p1786716165942379
|
||||
var prefixes = []string{"eq", "lt", "gt", "le", "ge"} // "ne", "sa", "eb", "ap"}
|
||||
afterPrefix := ""
|
||||
if len(subqueryParam.Value) >= 2 && slices.Contains(prefixes, subqueryParam.Value[:2]) {
|
||||
d.Prefix = subqueryParam.Value[:2]
|
||||
afterPrefix = subqueryParam.Value[2:]
|
||||
} else {
|
||||
afterPrefix = subqueryParam.Value
|
||||
}
|
||||
|
||||
if len(afterPrefix) == 0 {
|
||||
return d, ParameterParsingError{Details: fmt.Sprintf("value must include a valid FHIR date for date parameter %s", d.Name)}
|
||||
}
|
||||
|
||||
d.Datetimes = strings.Split(afterPrefix, ",")
|
||||
|
||||
for _, datetime := range d.Datetimes {
|
||||
_, err := ParseDateString(datetime)
|
||||
if err != nil {
|
||||
return d, ParameterParsingError{Details: fmt.Sprintf("invalid date parameter value: %s", datetime)}
|
||||
}
|
||||
}
|
||||
return d, nil
|
||||
}
|
||||
|
||||
func ParseDateString(datetime string) (time.Time, error) {
|
||||
var datetimeFormats = []string{
|
||||
"2006",
|
||||
"2006-01",
|
||||
"2006-01-02",
|
||||
"2006-01-02T15:04:05",
|
||||
"2006-01-02T15:04:05+07:00",
|
||||
"2006-01-02T15:04:05-07:00",
|
||||
"2006-01-02T15:04:05Z",
|
||||
}
|
||||
for _, format := range datetimeFormats {
|
||||
if parsed, err := time.Parse(format, datetime); err == nil {
|
||||
return parsed, nil
|
||||
}
|
||||
}
|
||||
return time.Time{}, ParameterParsingError{Details: fmt.Sprintf("invalid date parameter value: %s", datetime)}
|
||||
}
|
||||
|
||||
// ValidateServiceDates ensures that service-date parameters have valid keys, non-delimited values,
|
||||
// and at most one earliest ("gt"/"ge") and one latest ("lt"/"le") condition.
|
||||
// Exact date conditions ("eq" or "") establish both an earliest and a latest boundary.
|
||||
func ValidateServiceDates(serviceDateParams []DateParam) error {
|
||||
earliestBoundCount, latestBoundCount := 0, 0
|
||||
for _, sd := range serviceDateParams {
|
||||
if sd.Name != string(TypeFilterParamServiceDate) {
|
||||
return ParameterValidationError{Details: fmt.Sprintf("invalid key for service-date parameter: %s", sd.Name)}
|
||||
}
|
||||
if len(sd.Datetimes) > 1 {
|
||||
return ParameterValidationError{Details: "invalid service-date parameter value: comma-separated values are not supported"}
|
||||
}
|
||||
switch sd.Prefix {
|
||||
case "lt", "le":
|
||||
latestBoundCount = latestBoundCount + 1
|
||||
case "gt", "ge":
|
||||
earliestBoundCount = earliestBoundCount + 1
|
||||
case "eq", "":
|
||||
latestBoundCount = latestBoundCount + 1
|
||||
earliestBoundCount = earliestBoundCount + 1
|
||||
}
|
||||
}
|
||||
if earliestBoundCount > 1 || latestBoundCount > 1 {
|
||||
return ParameterValidationError{Details: "invalid service-date parameter value: conflicting prefix conditions"}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// https://hl7.org/fhir/R4/search.html#token
|
||||
type TokenParam struct {
|
||||
Name string
|
||||
Modifier string
|
||||
Values []TokenValue
|
||||
}
|
||||
|
||||
type TokenValue struct {
|
||||
System string
|
||||
Code string
|
||||
}
|
||||
|
||||
func ParseTokenParam(subqueryParam TypeFilterSubqueryParam) (TokenParam, error) {
|
||||
t := TokenParam{}
|
||||
if len(subqueryParam.Name) == 0 {
|
||||
return t, ParameterParsingError{Details: "token parameter missing key"}
|
||||
}
|
||||
t.Name, t.Modifier, _ = strings.Cut(subqueryParam.Name, ":")
|
||||
if len(subqueryParam.Value) == 0 {
|
||||
return t, ParameterParsingError{Details: fmt.Sprintf("token parameter missing value %s", t.Name)}
|
||||
}
|
||||
values := strings.SplitSeq(subqueryParam.Value, ",")
|
||||
for value := range values {
|
||||
before, after, found := strings.Cut(value, "|")
|
||||
if found {
|
||||
t.Values = append(t.Values, TokenValue{System: before, Code: after})
|
||||
} else {
|
||||
t.Values = append(t.Values, TokenValue{Code: before})
|
||||
}
|
||||
}
|
||||
return t, nil
|
||||
}
|
||||
|
||||
var validTagTokens = map[string][]string{
|
||||
constants.BFDSystemTypeURL: {"SharedSystem", "NationalClaimsHistory", "DDPS"},
|
||||
constants.BFDFinalActionURL: {"FinalAction", "NotFinalAction"},
|
||||
}
|
||||
|
||||
func ValidateTag(t TokenParam) error {
|
||||
if t.Name != string(TypeFilterParamTag) {
|
||||
return ParameterValidationError{Details: fmt.Sprintf("invalid key for _tag parameter: %s", t.Name)}
|
||||
}
|
||||
if len(t.Modifier) > 0 {
|
||||
return ParameterValidationError{Details: fmt.Sprintf("invalid _tag parameter; modifier %s not supported", t.Modifier)}
|
||||
}
|
||||
for _, value := range t.Values {
|
||||
if len(value.System) == 0 || len(value.Code) == 0 {
|
||||
return ParameterValidationError{Details: "invalid _tag parameter value. Searching by _tag requires a token (system|code) to be specified"}
|
||||
}
|
||||
validTagCodes, ok := validTagTokens[value.System]
|
||||
if !ok || !slices.Contains(validTagCodes, value.Code) {
|
||||
return ParameterValidationError{Details: fmt.Sprintf("invalid _tag parameter, unsupported code %s for system %s", value.Code, value.System)}
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func ValidateOutcome(t TokenParam) error {
|
||||
if t.Name != string(TypeFilterParamOutcome) {
|
||||
return ParameterValidationError{Details: fmt.Sprintf("invalid key for outcome parameter: %s", t.Name)}
|
||||
}
|
||||
if len(t.Modifier) > 0 {
|
||||
return ParameterValidationError{Details: fmt.Sprintf("invalid outcome parameter; modifier %s not supported", t.Modifier)}
|
||||
}
|
||||
for _, value := range t.Values {
|
||||
if value.Code != "complete" && value.Code != "partial" {
|
||||
return ParameterValidationError{Details: fmt.Sprintf("invalid outcome code: %s. Supported outcome codes are 'complete' and 'partial'", value.Code)}
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
174
dev/vendor/bcda-app/bcda/models/models.go
vendored
Normal file
174
dev/vendor/bcda-app/bcda/models/models.go
vendored
Normal file
@@ -0,0 +1,174 @@
|
||||
package models
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/pborman/uuid"
|
||||
)
|
||||
|
||||
const (
|
||||
JobStatusArchived JobStatus = "Archived"
|
||||
JobStatusCancelled JobStatus = "Cancelled"
|
||||
JobStatusCancelledExpired JobStatus = "CancelledExpired" // JobStatusCancelledExpired represents a job that has been cancelled whose data has been cleaned up
|
||||
JobStatusCompleted JobStatus = "Completed"
|
||||
JobStatusExpired JobStatus = "Expired"
|
||||
JobStatusFailed JobStatus = "Failed"
|
||||
JobStatusFailedExpired JobStatus = "FailedExpired" // JobStatusFailedExpired represents a job that failed whose data has been cleaned up
|
||||
JobStatusInProgress JobStatus = "In Progress"
|
||||
JobStatusPending JobStatus = "Pending"
|
||||
)
|
||||
|
||||
var AllJobStatuses = []JobStatus{
|
||||
JobStatusArchived,
|
||||
JobStatusCancelled,
|
||||
JobStatusCancelledExpired,
|
||||
JobStatusCompleted,
|
||||
JobStatusExpired,
|
||||
JobStatusFailed,
|
||||
JobStatusFailedExpired,
|
||||
JobStatusInProgress,
|
||||
JobStatusPending,
|
||||
}
|
||||
|
||||
type JobStatus string
|
||||
type Job struct {
|
||||
ID uint
|
||||
ACOID uuid.UUID `json:"aco_id"`
|
||||
RequestURL string `json:"request_url"` // request_url
|
||||
Status JobStatus `json:"status"` // status
|
||||
TransactionTime time.Time // most recent data load transaction time from BFD
|
||||
JobCount int
|
||||
CreatedAt time.Time
|
||||
UpdatedAt time.Time
|
||||
BenesAttributedToACO int // Total beneficiaries attributed to ACO at time of job request
|
||||
}
|
||||
|
||||
func (j *Job) StatusMessage(numCompletedJobKeys int) string {
|
||||
if j.Status == JobStatusInProgress && j.JobCount > 0 {
|
||||
pct := float64(numCompletedJobKeys) / float64(j.JobCount) * 100
|
||||
return fmt.Sprintf("%s (%d%%)", j.Status, int(pct))
|
||||
}
|
||||
|
||||
return string(j.Status)
|
||||
}
|
||||
|
||||
// BlankFileName contains the naming convention for empty ndjson file
|
||||
const BlankFileName string = "blank.ndjson"
|
||||
|
||||
type JobKey struct {
|
||||
ID uint
|
||||
JobID uint `json:"job_id"`
|
||||
// Although que_job records are temporary, we store the ID to ensure
|
||||
// that workers are never duplicating job keys.
|
||||
QueJobID *int64
|
||||
FileName string
|
||||
ResourceType string
|
||||
BenesWithData int // count of beneficiaries with entry data
|
||||
BenesRetrievedPercent int // percent of beneficiaries successfully retrieved from BFD
|
||||
}
|
||||
|
||||
func (j *JobKey) IsError() bool {
|
||||
return strings.Contains(j.FileName, "-error.ndjson")
|
||||
}
|
||||
|
||||
// ACO represents an Accountable Care Organization.
|
||||
type ACO struct {
|
||||
ID uint
|
||||
UUID uuid.UUID `json:"uuid"`
|
||||
CMSID *string `json:"cms_id"`
|
||||
Name string `json:"name"`
|
||||
ClientID string `json:"client_id"`
|
||||
GroupID string `json:"group_id"`
|
||||
SystemID string `json:"system_id"`
|
||||
TerminationDetails *Termination `json:"termination"`
|
||||
}
|
||||
|
||||
// Denylisted returns bool based on TerminationDetails.
|
||||
// If CutoffDate is specified, the ACO is denylisted when time.Now() >= CutoffDate.
|
||||
// If CutoffDate is not specified, it falls back to checking DenylistType.
|
||||
func (aco *ACO) Denylisted() bool {
|
||||
if aco.TerminationDetails != nil {
|
||||
if !aco.TerminationDetails.CutoffDate.IsZero() {
|
||||
return !time.Now().Before(aco.TerminationDetails.CutoffDate)
|
||||
}
|
||||
return aco.TerminationDetails.DenylistType == Involuntary || aco.TerminationDetails.DenylistType == Voluntary
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
type CCLFFileType int16
|
||||
|
||||
const (
|
||||
FileTypeDefault CCLFFileType = iota
|
||||
FileTypeRunout
|
||||
)
|
||||
|
||||
// String returns the letter associated with the CCLFFileType.
|
||||
func (t CCLFFileType) String() string {
|
||||
return [...]string{"Y", "R"}[t]
|
||||
}
|
||||
|
||||
type CCLFFile struct {
|
||||
ID uint
|
||||
CCLFNum int
|
||||
Name string
|
||||
ACOCMSID string
|
||||
Timestamp time.Time
|
||||
PerformanceYear int
|
||||
ImportStatus string
|
||||
Type CCLFFileType
|
||||
// CreatedAt is automatically set by the database. This is only
|
||||
// set/pulled when querying data in the DB.
|
||||
CreatedAt time.Time
|
||||
}
|
||||
|
||||
// "The MBI has 11 characters, like the Health Insurance Claim Number (HICN), which can have up to 11."
|
||||
// https://www.cms.gov/Medicare/New-Medicare-Card/Understanding-the-MBI-with-Format.pdf
|
||||
type CCLFBeneficiary struct {
|
||||
ID uint
|
||||
FileID uint
|
||||
MBI string
|
||||
BlueButtonID string
|
||||
}
|
||||
|
||||
// A BenePrefsFile is a basic file representation that can be stored in a database.
|
||||
type BenePrefsFile struct {
|
||||
ID uint
|
||||
Name string
|
||||
Timestamp time.Time
|
||||
ImportStatus string
|
||||
}
|
||||
|
||||
// BenePrefsFilenameMetadata is metadata information parsed from the filename.
|
||||
type BenePrefsFilenameMetadata struct {
|
||||
Name string
|
||||
Timestamp time.Time
|
||||
FilePath string
|
||||
Imported bool
|
||||
DeliveryDate time.Time
|
||||
FileID uint
|
||||
}
|
||||
|
||||
func (m BenePrefsFilenameMetadata) String() string {
|
||||
if m.FilePath != "" {
|
||||
return m.FilePath
|
||||
}
|
||||
return m.Name
|
||||
}
|
||||
|
||||
// A BenePrefsRecord represents a single record parsed from an bene-prefs file.
|
||||
type BenePrefsRecord struct {
|
||||
ID uint
|
||||
FileID uint
|
||||
MBI string
|
||||
SourceCode string
|
||||
EffectiveDt time.Time
|
||||
PrefIndicator string
|
||||
SAMHSASourceCode string
|
||||
SAMHSAEffectiveDt time.Time
|
||||
SAMHSAPrefIndicator string
|
||||
ACOCMSID string
|
||||
BeneficiaryLinkKey int
|
||||
}
|
||||
177
dev/vendor/bcda-app/bcda/responseutils/v3/writer.go
vendored
Normal file
177
dev/vendor/bcda-app/bcda/responseutils/v3/writer.go
vendored
Normal file
@@ -0,0 +1,177 @@
|
||||
package responseutils
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"io"
|
||||
"net/http"
|
||||
|
||||
"github.com/CMSgov/bcda-app/bcda/constants"
|
||||
"github.com/CMSgov/bcda-app/bcda/fhir/r4"
|
||||
"github.com/CMSgov/bcda-app/bcda/models"
|
||||
"github.com/CMSgov/bcda-app/log"
|
||||
"github.com/ccoveille/go-safecast"
|
||||
)
|
||||
|
||||
type FhirResponseWriter struct{}
|
||||
|
||||
func NewFhirResponseWriter() FhirResponseWriter {
|
||||
return FhirResponseWriter{}
|
||||
}
|
||||
|
||||
func (r FhirResponseWriter) Success(ctx context.Context, w http.ResponseWriter, statusCode int, errType, msg string) {
|
||||
oo := r.CreateOpOutcome(r4.IssueSeverityInformation, r4.IssueTypeCodeInformational, errType, msg)
|
||||
r.WriteError(ctx, oo, w, statusCode)
|
||||
}
|
||||
|
||||
func (r FhirResponseWriter) Exception(ctx context.Context, w http.ResponseWriter, statusCode int, errType, errMsg string) {
|
||||
oo := r.CreateOpOutcome(r4.IssueSeverityError, r4.IssueTypeCodeException, errType, errMsg)
|
||||
r.WriteError(ctx, oo, w, statusCode)
|
||||
}
|
||||
|
||||
func (r FhirResponseWriter) NotFound(ctx context.Context, w http.ResponseWriter, statusCode int, errType, errMsg string) {
|
||||
oo := r.CreateOpOutcome(r4.IssueSeverityError, r4.IssueTypeCodeNotFound, errType, errMsg)
|
||||
r.WriteError(ctx, oo, w, statusCode)
|
||||
}
|
||||
|
||||
func (r FhirResponseWriter) OpOutcome(ctx context.Context, w http.ResponseWriter, statusCode int, errType, errMsg string) {
|
||||
respStatusToFHIRStatusMap := map[int]r4.IssueTypeCode{
|
||||
400: r4.IssueTypeCodeStructure,
|
||||
401: r4.IssueTypeCodeForbidden,
|
||||
403: r4.IssueTypeCodeForbidden,
|
||||
410: r4.IssueTypeCodeNotFound,
|
||||
}
|
||||
oo := r.CreateOpOutcome(r4.IssueSeverityError, respStatusToFHIRStatusMap[statusCode], errType, errMsg)
|
||||
r.WriteError(ctx, oo, w, statusCode)
|
||||
}
|
||||
|
||||
func (r FhirResponseWriter) JobsBundle(ctx context.Context, w http.ResponseWriter, jobs []*models.Job, host string) {
|
||||
jb := r.CreateJobsBundle(jobs, host)
|
||||
r.WriteBundleResponse(jb, w)
|
||||
}
|
||||
|
||||
func (r FhirResponseWriter) CreateJobsBundle(jobs []*models.Job, host string) *r4.Bundle {
|
||||
var entries []r4.BundleEntry
|
||||
|
||||
// generate bundle task entries
|
||||
for _, job := range jobs {
|
||||
entry := r.CreateJobsBundleEntry(job, host)
|
||||
entries = append(entries, *entry)
|
||||
}
|
||||
|
||||
jobLength, err := safecast.ToUint32(len(jobs))
|
||||
if err != nil {
|
||||
log.API.Errorln(err)
|
||||
}
|
||||
|
||||
return &r4.Bundle{
|
||||
ResourceType: "Bundle",
|
||||
Type: "searchset",
|
||||
Total: jobLength,
|
||||
Entry: entries,
|
||||
}
|
||||
}
|
||||
|
||||
func (r FhirResponseWriter) CreateJobsBundleEntry(job *models.Job, host string) *r4.BundleEntry {
|
||||
fhirStatusCode := r.GetFhirStatusCode(job.Status)
|
||||
|
||||
return &r4.BundleEntry{
|
||||
Resource: &r4.Task{
|
||||
ResourceType: "Task",
|
||||
Identifier: []r4.Identifier{
|
||||
{
|
||||
Use: "official",
|
||||
System: host + "/api/v3/jobs",
|
||||
Value: fmt.Sprint(job.ID),
|
||||
},
|
||||
},
|
||||
Status: r4.TaskStatus(fhirStatusCode),
|
||||
Intent: r4.TaskIntentOrder,
|
||||
Input: []r4.Parameter{
|
||||
{
|
||||
Type: r4.CodeableConcept{
|
||||
Text: "BULK FHIR Export",
|
||||
},
|
||||
Value: "GET " + job.RequestURL,
|
||||
},
|
||||
},
|
||||
ExecutionPeriod: r4.Period{
|
||||
Start: job.CreatedAt.UTC().Format("2006-01-02T15:04:05Z"),
|
||||
End: job.UpdatedAt.UTC().Format("2006-01-02T15:04:05Z"),
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func (r FhirResponseWriter) GetFhirStatusCode(status models.JobStatus) r4.TaskStatus {
|
||||
switch status {
|
||||
case models.JobStatusFailed, models.JobStatusFailedExpired:
|
||||
return r4.TaskStatusFailed
|
||||
case models.JobStatusPending:
|
||||
return r4.TaskStatusAccepted
|
||||
case models.JobStatusInProgress:
|
||||
return r4.TaskStatusInProgress
|
||||
case models.JobStatusCompleted:
|
||||
return r4.TaskStatusCompleted
|
||||
case models.JobStatusArchived, models.JobStatusExpired:
|
||||
return r4.TaskStatusCompleted // fhir task status does not have an equivalent to `expired` or `archived`
|
||||
case models.JobStatusCancelled, models.JobStatusCancelledExpired:
|
||||
return r4.TaskStatusCancelled
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (r FhirResponseWriter) CreateOpOutcome(severity r4.IssueSeverityCode, code r4.IssueTypeCode, errType, diagnostics string) *r4.OperationOutcome {
|
||||
return &r4.OperationOutcome{
|
||||
ResourceType: "OperationOutcome",
|
||||
Issue: []r4.Issue{
|
||||
{
|
||||
Severity: severity,
|
||||
Code: code,
|
||||
Diagnostics: diagnostics,
|
||||
Details: &r4.CodeableConcept{
|
||||
// Coding is intentionally omitted for v3 to conform with FHIR base profile
|
||||
Text: diagnostics,
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func (r FhirResponseWriter) WriteError(ctx context.Context, outcome *r4.OperationOutcome, w http.ResponseWriter, code int) {
|
||||
logger := log.GetCtxLogger(ctx)
|
||||
w.Header().Set(constants.ContentType, constants.FHIRJsonContentType)
|
||||
w.WriteHeader(code)
|
||||
_, err := r.WriteOperationOutcome(w, outcome)
|
||||
if err != nil {
|
||||
logger.WithField("resp_status", http.StatusInternalServerError).Error(err)
|
||||
http.Error(w, err.Error(), http.StatusInternalServerError)
|
||||
}
|
||||
}
|
||||
|
||||
func (r FhirResponseWriter) WriteOperationOutcome(w io.Writer, outcome *r4.OperationOutcome) (int, error) {
|
||||
outcomeJSON, err := json.Marshal(outcome)
|
||||
if err != nil {
|
||||
return -1, err
|
||||
}
|
||||
return w.Write(outcomeJSON)
|
||||
}
|
||||
|
||||
func (r FhirResponseWriter) WriteBundleResponse(bundle *r4.Bundle, w http.ResponseWriter) {
|
||||
bundleJSON, err := json.Marshal(bundle)
|
||||
if err != nil {
|
||||
log.API.WithField("resp_status", http.StatusInternalServerError).Error(err)
|
||||
http.Error(w, err.Error(), http.StatusInternalServerError)
|
||||
return
|
||||
}
|
||||
|
||||
w.Header().Set(constants.ContentType, constants.JsonContentType)
|
||||
w.WriteHeader(http.StatusOK)
|
||||
_, err = w.Write(bundleJSON)
|
||||
if err != nil {
|
||||
log.API.WithField("resp_status", http.StatusInternalServerError).Error(err)
|
||||
http.Error(w, err.Error(), http.StatusInternalServerError)
|
||||
return
|
||||
}
|
||||
}
|
||||
236
dev/vendor/bcda-app/bcda/responseutils/v3/writer_test.go
vendored
Normal file
236
dev/vendor/bcda-app/bcda/responseutils/v3/writer_test.go
vendored
Normal file
@@ -0,0 +1,236 @@
|
||||
package responseutils
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"net/http"
|
||||
"net/http/httptest"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/CMSgov/bcda-app/bcda/constants"
|
||||
"github.com/CMSgov/bcda-app/bcda/fhir/r4"
|
||||
"github.com/CMSgov/bcda-app/bcda/models"
|
||||
responseutils "github.com/CMSgov/bcda-app/bcda/responseutils"
|
||||
"github.com/CMSgov/bcda-app/log"
|
||||
"github.com/ccoveille/go-safecast"
|
||||
"github.com/pborman/uuid"
|
||||
"github.com/sirupsen/logrus"
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/suite"
|
||||
)
|
||||
|
||||
type ResponseUtilsWriterTestSuite struct {
|
||||
suite.Suite
|
||||
rr *httptest.ResponseRecorder
|
||||
}
|
||||
|
||||
func (s *ResponseUtilsWriterTestSuite) SetupTest() {
|
||||
s.rr = httptest.NewRecorder()
|
||||
}
|
||||
|
||||
func TestResponseUtilsWriterTestSuite(t *testing.T) {
|
||||
suite.Run(t, new(ResponseUtilsWriterTestSuite))
|
||||
}
|
||||
|
||||
func (s *ResponseUtilsWriterTestSuite) TestResponseWriterException() {
|
||||
rw := NewFhirResponseWriter()
|
||||
newLogEntry := MakeTestStructuredLoggerEntry(logrus.Fields{"foo": "bar"})
|
||||
ctx := context.WithValue(context.Background(), log.CtxLoggerKey, newLogEntry)
|
||||
rw.Exception(ctx, s.rr, http.StatusAccepted, responseutils.RequestErr, "TestResponseWriterExcepton")
|
||||
|
||||
var respOO r4.OperationOutcome
|
||||
err := json.Unmarshal(s.rr.Body.Bytes(), &respOO)
|
||||
assert.NoError(s.T(), err)
|
||||
|
||||
assert.Equal(s.T(), http.StatusAccepted, s.rr.Code)
|
||||
assert.Equal(s.T(), r4.IssueSeverityError, respOO.Issue[0].Severity)
|
||||
assert.Equal(s.T(), r4.IssueTypeCodeException, respOO.Issue[0].Code)
|
||||
assert.Equal(s.T(), "TestResponseWriterExcepton", respOO.Issue[0].Diagnostics)
|
||||
assert.Equal(s.T(), constants.FHIRJsonContentType, s.rr.Header().Get("Content-Type"))
|
||||
// Verify Details.Text exists
|
||||
assert.NotNil(s.T(), respOO.Issue[0].Details)
|
||||
assert.Equal(s.T(), "TestResponseWriterExcepton", respOO.Issue[0].Details.Text)
|
||||
// Verify Details.Coding does not exist (v3 should not include coding)
|
||||
assert.Nil(s.T(), respOO.Issue[0].Details.Coding)
|
||||
assert.Empty(s.T(), respOO.Issue[0].Details.Coding)
|
||||
}
|
||||
|
||||
func (s *ResponseUtilsWriterTestSuite) TestResponseWriterNotFound() {
|
||||
rw := NewFhirResponseWriter()
|
||||
newLogEntry := MakeTestStructuredLoggerEntry(logrus.Fields{"foo": "bar"})
|
||||
ctx := context.WithValue(context.Background(), log.CtxLoggerKey, newLogEntry)
|
||||
rw.NotFound(ctx, s.rr, http.StatusAccepted, responseutils.RequestErr, "TestResponseWriterNotFound")
|
||||
|
||||
var respOO r4.OperationOutcome
|
||||
err := json.Unmarshal(s.rr.Body.Bytes(), &respOO)
|
||||
assert.NoError(s.T(), err)
|
||||
|
||||
assert.Equal(s.T(), http.StatusAccepted, s.rr.Code)
|
||||
assert.Equal(s.T(), r4.IssueSeverityError, respOO.Issue[0].Severity)
|
||||
assert.Equal(s.T(), r4.IssueTypeCodeNotFound, respOO.Issue[0].Code)
|
||||
assert.Equal(s.T(), "TestResponseWriterNotFound", respOO.Issue[0].Diagnostics)
|
||||
assert.Equal(s.T(), constants.FHIRJsonContentType, s.rr.Header().Get("Content-Type"))
|
||||
// Verify Details.Text exists
|
||||
assert.NotNil(s.T(), respOO.Issue[0].Details)
|
||||
assert.Equal(s.T(), "TestResponseWriterNotFound", respOO.Issue[0].Details.Text)
|
||||
// Verify Details.Coding does not exist (v3 should not include coding)
|
||||
assert.Nil(s.T(), respOO.Issue[0].Details.Coding)
|
||||
assert.Empty(s.T(), respOO.Issue[0].Details.Coding)
|
||||
}
|
||||
|
||||
func (s *ResponseUtilsWriterTestSuite) TestResponseWriterOpOutcome() {
|
||||
rw := NewFhirResponseWriter()
|
||||
newLogEntry := MakeTestStructuredLoggerEntry(logrus.Fields{"foo": "bar"})
|
||||
ctx := context.WithValue(context.Background(), log.CtxLoggerKey, newLogEntry)
|
||||
rw.OpOutcome(ctx, s.rr, http.StatusBadRequest, responseutils.RequestErr, "TestResponseWriterExcepton")
|
||||
|
||||
var respOO r4.OperationOutcome
|
||||
err := json.Unmarshal(s.rr.Body.Bytes(), &respOO)
|
||||
assert.NoError(s.T(), err)
|
||||
|
||||
assert.Equal(s.T(), http.StatusBadRequest, s.rr.Code)
|
||||
assert.Equal(s.T(), r4.IssueSeverityError, respOO.Issue[0].Severity)
|
||||
assert.Equal(s.T(), r4.IssueTypeCodeStructure, respOO.Issue[0].Code)
|
||||
assert.Equal(s.T(), "TestResponseWriterExcepton", respOO.Issue[0].Diagnostics)
|
||||
assert.Equal(s.T(), constants.FHIRJsonContentType, s.rr.Header().Get("Content-Type"))
|
||||
// Verify Details.Text exists
|
||||
assert.NotNil(s.T(), respOO.Issue[0].Details)
|
||||
assert.Equal(s.T(), "TestResponseWriterExcepton", respOO.Issue[0].Details.Text)
|
||||
// Verify Details.Coding does not exist (v3 should not include coding)
|
||||
assert.Nil(s.T(), respOO.Issue[0].Details.Coding)
|
||||
assert.Empty(s.T(), respOO.Issue[0].Details.Coding)
|
||||
}
|
||||
|
||||
func (s *ResponseUtilsWriterTestSuite) TestCreateOpOutcome() {
|
||||
rw := NewFhirResponseWriter()
|
||||
oo := rw.CreateOpOutcome(r4.IssueSeverityError, r4.IssueTypeCodeException, responseutils.RequestErr, "TestCreateOpOutcome")
|
||||
assert.Equal(s.T(), r4.IssueSeverityError, oo.Issue[0].Severity)
|
||||
assert.Equal(s.T(), r4.IssueTypeCodeException, oo.Issue[0].Code)
|
||||
assert.Equal(s.T(), "TestCreateOpOutcome", oo.Issue[0].Diagnostics)
|
||||
}
|
||||
|
||||
func (s *ResponseUtilsWriterTestSuite) TestWriteError() {
|
||||
rw := NewFhirResponseWriter()
|
||||
newLogEntry := MakeTestStructuredLoggerEntry(logrus.Fields{"foo": "bar"})
|
||||
ctx := context.WithValue(context.Background(), log.CtxLoggerKey, newLogEntry)
|
||||
oo := rw.CreateOpOutcome(r4.IssueSeverityError, r4.IssueTypeCodeException, responseutils.RequestErr, "TestCreateOpOutcome")
|
||||
rw.WriteError(ctx, oo, s.rr, http.StatusAccepted)
|
||||
|
||||
var respOO r4.OperationOutcome
|
||||
err := json.Unmarshal(s.rr.Body.Bytes(), &respOO)
|
||||
assert.NoError(s.T(), err)
|
||||
|
||||
assert.Equal(s.T(), http.StatusAccepted, s.rr.Code)
|
||||
assert.Equal(s.T(), r4.IssueSeverityError, respOO.Issue[0].Severity)
|
||||
assert.Equal(s.T(), oo.Issue[0].Severity, respOO.Issue[0].Severity)
|
||||
assert.Equal(s.T(), r4.IssueTypeCodeException, respOO.Issue[0].Code)
|
||||
assert.Equal(s.T(), oo.Issue[0].Code, respOO.Issue[0].Code)
|
||||
assert.Equal(s.T(), "TestCreateOpOutcome", respOO.Issue[0].Diagnostics)
|
||||
}
|
||||
|
||||
func (s *ResponseUtilsWriterTestSuite) TestWriteJobsBundle() {
|
||||
rw := NewFhirResponseWriter()
|
||||
jobs := []*models.Job{
|
||||
{
|
||||
ID: 1,
|
||||
ACOID: uuid.NewUUID(),
|
||||
RequestURL: "https://www.requesturl.com",
|
||||
Status: models.JobStatusCompleted,
|
||||
CreatedAt: time.Now().Add(-24 * time.Hour).Truncate(time.Second),
|
||||
UpdatedAt: time.Now().Truncate(time.Second),
|
||||
},
|
||||
}
|
||||
jb := rw.CreateJobsBundle(jobs, constants.TestAPIUrl)
|
||||
rw.WriteBundleResponse(jb, s.rr)
|
||||
|
||||
var bundle r4.Bundle
|
||||
err := json.Unmarshal(s.rr.Body.Bytes(), &bundle)
|
||||
assert.NoError(s.T(), err)
|
||||
|
||||
assert.Equal(s.T(), http.StatusOK, s.rr.Code)
|
||||
u, err := safecast.ToUint32(len(bundle.Entry))
|
||||
assert.NoError(s.T(), err)
|
||||
assert.Equal(s.T(), u, bundle.Total)
|
||||
assert.Equal(s.T(), "searchset", bundle.Type)
|
||||
|
||||
var task r4.Task
|
||||
taskBytes, err := json.Marshal(bundle.Entry[0].Resource)
|
||||
assert.NoError(s.T(), err)
|
||||
assert.NoError(s.T(), json.Unmarshal(taskBytes, &task))
|
||||
|
||||
assert.Equal(s.T(), jobs[0].CreatedAt.UTC().Format("2006-01-02T15:04:05Z"), task.ExecutionPeriod.Start)
|
||||
assert.Equal(s.T(), jobs[0].UpdatedAt.UTC().Format("2006-01-02T15:04:05Z"), task.ExecutionPeriod.End)
|
||||
assert.Equal(s.T(), "https://www.api.com/api/v3/jobs", task.Identifier[0].System)
|
||||
assert.Equal(s.T(), "official", task.Identifier[0].Use)
|
||||
assert.Equal(s.T(), fmt.Sprint(jobs[0].ID), task.Identifier[0].Value)
|
||||
assert.Equal(s.T(), "BULK FHIR Export", task.Input[0].Type.Text)
|
||||
assert.Equal(s.T(), "GET "+jobs[0].RequestURL, task.Input[0].Value.(string))
|
||||
assert.Equal(s.T(), r4.TaskIntentOrder, task.Intent)
|
||||
assert.Equal(s.T(), r4.TaskStatusCompleted, task.Status)
|
||||
}
|
||||
|
||||
func (s *ResponseUtilsWriterTestSuite) TestCreateJobsBundle() {
|
||||
rw := NewFhirResponseWriter()
|
||||
jb := rw.CreateJobsBundle(nil, constants.TestAPIUrl)
|
||||
|
||||
assert.Equal(s.T(), uint32(0), jb.Total)
|
||||
assert.Equal(s.T(), "searchset", jb.Type)
|
||||
}
|
||||
|
||||
func (s *ResponseUtilsWriterTestSuite) TestCreateJobsBundleEntry() {
|
||||
rw := NewFhirResponseWriter()
|
||||
job := models.Job{
|
||||
ID: 1,
|
||||
ACOID: uuid.NewUUID(),
|
||||
RequestURL: "https://www.requesturl.com",
|
||||
Status: models.JobStatusCompleted,
|
||||
CreatedAt: time.Now().Add(-24 * time.Hour).Truncate(time.Second),
|
||||
UpdatedAt: time.Now().Truncate(time.Second),
|
||||
}
|
||||
jbe := rw.CreateJobsBundleEntry(&job, constants.TestAPIUrl).Resource.(*r4.Task)
|
||||
|
||||
assert.Equal(s.T(), job.CreatedAt.UTC().Format("2006-01-02T15:04:05Z"), jbe.ExecutionPeriod.Start)
|
||||
assert.Equal(s.T(), job.UpdatedAt.UTC().Format("2006-01-02T15:04:05Z"), jbe.ExecutionPeriod.End)
|
||||
assert.Equal(s.T(), "https://www.api.com/api/v3/jobs", jbe.Identifier[0].System)
|
||||
assert.Equal(s.T(), "official", jbe.Identifier[0].Use)
|
||||
assert.Equal(s.T(), fmt.Sprint(job.ID), jbe.Identifier[0].Value)
|
||||
assert.Equal(s.T(), "BULK FHIR Export", jbe.Input[0].Type.Text)
|
||||
assert.Equal(s.T(), "GET "+job.RequestURL, jbe.Input[0].Value.(string))
|
||||
assert.Equal(s.T(), r4.TaskIntentOrder, jbe.Intent)
|
||||
assert.Equal(s.T(), r4.TaskStatusCompleted, jbe.Status)
|
||||
}
|
||||
|
||||
func (s *ResponseUtilsWriterTestSuite) TestGetFhirStatusCode() {
|
||||
rw := NewFhirResponseWriter()
|
||||
tests := []struct {
|
||||
name string
|
||||
|
||||
status models.JobStatus
|
||||
code r4.TaskStatus
|
||||
}{
|
||||
{"Job Failed returns fhir task status Failed", models.JobStatusFailed, r4.TaskStatusFailed},
|
||||
{"Job FailedExpired returns fhir task status Failed", models.JobStatusFailedExpired, r4.TaskStatusFailed},
|
||||
{"Job Pending returns fhir task status Accepted", models.JobStatusPending, r4.TaskStatusAccepted},
|
||||
{"Job In Progress returns fhir task status In Progress", models.JobStatusInProgress, r4.TaskStatusInProgress},
|
||||
{"Job Completed returns fhir task status Completed", models.JobStatusCompleted, r4.TaskStatusCompleted},
|
||||
{"Job Archived returns fhir task status Completed", models.JobStatusArchived, r4.TaskStatusCompleted},
|
||||
{"Job Expired returns fhir task status Completed", models.JobStatusExpired, r4.TaskStatusCompleted},
|
||||
{"Job Cancelled returns fhir task status Cancelled", models.JobStatusCancelled, r4.TaskStatusCancelled},
|
||||
{"Job CancelledExpired returns fhir task status Cancelled", models.JobStatusCancelledExpired, r4.TaskStatusCancelled},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
s.T().Run(tt.name, func(t *testing.T) {
|
||||
code := rw.GetFhirStatusCode(tt.status)
|
||||
assert.Equal(s.T(), tt.code, code)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func MakeTestStructuredLoggerEntry(logFields logrus.Fields) *log.StructuredLoggerEntry {
|
||||
var lggr logrus.Logger
|
||||
newLogEntry := &log.StructuredLoggerEntry{Logger: lggr.WithFields(logFields)}
|
||||
return newLogEntry
|
||||
}
|
||||
710
dev/vendor/bcda-app/bcda/service/service.go
vendored
Normal file
710
dev/vendor/bcda-app/bcda/service/service.go
vendored
Normal file
@@ -0,0 +1,710 @@
|
||||
package service
|
||||
|
||||
import (
|
||||
"context"
|
||||
goerrors "errors"
|
||||
"fmt"
|
||||
"regexp"
|
||||
"slices"
|
||||
"time"
|
||||
|
||||
"github.com/ccoveille/go-safecast"
|
||||
"github.com/pborman/uuid"
|
||||
"github.com/pkg/errors"
|
||||
"github.com/sirupsen/logrus"
|
||||
|
||||
"github.com/CMSgov/bcda-app/bcda/constants"
|
||||
bcdaerrors "github.com/CMSgov/bcda-app/bcda/errors"
|
||||
"github.com/CMSgov/bcda-app/bcda/models"
|
||||
"github.com/CMSgov/bcda-app/bcda/utils"
|
||||
"github.com/CMSgov/bcda-app/bcdaworker/queueing/worker_types"
|
||||
"github.com/CMSgov/bcda-app/conf"
|
||||
"github.com/CMSgov/bcda-app/log"
|
||||
"github.com/CMSgov/bcda-app/middleware"
|
||||
)
|
||||
|
||||
// Ensure service satisfies the interface
|
||||
var _ Service = &service{}
|
||||
|
||||
// Service contains all of the methods needed to interact with the data represented in the models package
|
||||
type Service interface {
|
||||
GetCutoffTime(ctx context.Context, reqType constants.DataRequestType, since time.Time, timeConstraints TimeConstraints, fileType models.CCLFFileType) (time.Time, string)
|
||||
FindOldCCLFFile(ctx context.Context, cmsID string, since time.Time, cclfTimestamp time.Time) (uint, error)
|
||||
GetQueJobs(ctx context.Context, args worker_types.PrepareJobArgs) (queJobs []*worker_types.JobEnqueueArgs, benesAttributed int, err error)
|
||||
GetJobAndKeys(ctx context.Context, jobID uint) (*models.Job, []*models.JobKey, error)
|
||||
GetJobKey(ctx context.Context, jobID uint, filename string) (*models.JobKey, error)
|
||||
GetJobs(ctx context.Context, acoID uuid.UUID, statuses ...models.JobStatus) ([]*models.Job, error)
|
||||
CancelJob(ctx context.Context, jobID uint) (uint, error)
|
||||
GetJobPriority(acoID string, resourceType string, sinceParam bool) int16
|
||||
GetLatestCCLFFile(ctx context.Context, cmsID string, earlierTime time.Time, laterTime time.Time, fileType models.CCLFFileType) (*models.CCLFFile, error)
|
||||
GetACOConfigForID(cmsID string) (*ACOConfig, bool)
|
||||
GetTimeConstraints(ctx context.Context, cmsID string) (TimeConstraints, error)
|
||||
GetAttributionStatusDates(ctx context.Context, cmsID string, timeConstraints TimeConstraints, fileType models.CCLFFileType) (lastUpdated time.Time, expirationDate time.Time, err error)
|
||||
IsV3NoPartialClaimsModel(model string) bool
|
||||
}
|
||||
|
||||
type service struct {
|
||||
repository models.Repository
|
||||
|
||||
logger logrus.FieldLogger
|
||||
|
||||
stdCutoffDuration time.Duration
|
||||
sp suppressionParameters
|
||||
rp runoutParameters
|
||||
bbBasePath string
|
||||
|
||||
// These are always searched in order and first matching config is used for any given ACO.
|
||||
acoConfigs []ACOConfig
|
||||
v3NoPartialClaimsModels []string
|
||||
}
|
||||
|
||||
func NewService(r models.Repository, cfg *Config, basePath string) Service {
|
||||
return &service{
|
||||
repository: r,
|
||||
logger: log.API,
|
||||
stdCutoffDuration: cfg.CutoffDuration,
|
||||
sp: suppressionParameters{
|
||||
includeSuppressedBeneficiaries: false,
|
||||
lookbackDays: cfg.SuppressionLookbackDays,
|
||||
},
|
||||
rp: runoutParameters{
|
||||
// Runouts apply to claims data for the previous year.
|
||||
claimThruDate: cfg.RunoutConfig.claimThru,
|
||||
CutoffDuration: cfg.RunoutConfig.CutoffDuration,
|
||||
},
|
||||
bbBasePath: basePath,
|
||||
acoConfigs: cfg.ACOConfigs,
|
||||
v3NoPartialClaimsModels: cfg.V3NoPartialClaimsModels,
|
||||
}
|
||||
}
|
||||
|
||||
type TimeConstraints struct {
|
||||
AttributionDate time.Time
|
||||
OptOutDate time.Time
|
||||
ClaimsDate time.Time
|
||||
}
|
||||
|
||||
type suppressionParameters struct {
|
||||
includeSuppressedBeneficiaries bool
|
||||
lookbackDays int
|
||||
}
|
||||
|
||||
type runoutParameters struct {
|
||||
// All claims data occur at or before this date
|
||||
claimThruDate time.Time
|
||||
// Amount of time the callers can retrieve runout data (relative to when runout data was ingested)
|
||||
CutoffDuration time.Duration
|
||||
}
|
||||
|
||||
func (s *service) GetCutoffTime(ctx context.Context, reqType constants.DataRequestType, since time.Time, timeConstraints TimeConstraints, fileType models.CCLFFileType) (cutoffTime time.Time, complexDataRequestType string) {
|
||||
hasAttributionDate := !timeConstraints.AttributionDate.IsZero()
|
||||
// for default requests, runouts, or any requests where the Since parameter is
|
||||
// after a terminated ACO's attribution date, we should only retrieve exisiting benes
|
||||
if reqType == constants.DefaultRequest ||
|
||||
reqType == constants.Runout ||
|
||||
(hasAttributionDate && since.After(timeConstraints.AttributionDate)) {
|
||||
complexDataRequestType = constants.GetExistingBenes
|
||||
// only set a cutoffTime if there is no attributionDate set
|
||||
if timeConstraints.AttributionDate.IsZero() {
|
||||
if fileType == models.FileTypeDefault && s.stdCutoffDuration > 0 {
|
||||
cutoffTime = time.Now().Add(-1 * s.stdCutoffDuration)
|
||||
} else if fileType == models.FileTypeRunout && s.rp.CutoffDuration > 0 {
|
||||
cutoffTime = time.Now().Add(-1 * s.rp.CutoffDuration)
|
||||
}
|
||||
}
|
||||
} else if reqType == constants.RetrieveNewBeneHistData {
|
||||
complexDataRequestType = constants.GetNewAndExistingBenes
|
||||
// only set cutoffTime if there is no attributionDate set
|
||||
if s.stdCutoffDuration > 0 && timeConstraints.AttributionDate.IsZero() {
|
||||
cutoffTime = time.Now().Add(-1 * s.stdCutoffDuration)
|
||||
}
|
||||
}
|
||||
|
||||
return cutoffTime, complexDataRequestType
|
||||
}
|
||||
|
||||
// GetAttributionStatusDates provides the last updated date and the final date for which the most recent CCLF file for a CMS ID
|
||||
// can be used to provide attribution information for data requests of a given file type.
|
||||
//
|
||||
// The expiration date can be limited by the date of the most recent CCLF file or the termination of the model entity in question.
|
||||
func (s *service) GetAttributionStatusDates(ctx context.Context, cmsID string, timeConstraints TimeConstraints, fileType models.CCLFFileType) (lastUpdated time.Time, expirationDate time.Time, err error) {
|
||||
latestFile, err := s.GetLatestCCLFFile(ctx, cmsID, expirationDate, expirationDate, fileType)
|
||||
if err != nil {
|
||||
s.logger.Errorf("could not fetch latest CCLF file for attribution status: %s", err)
|
||||
return time.Time{}, time.Time{}, err
|
||||
}
|
||||
|
||||
lastUpdated = latestFile.Timestamp
|
||||
switch fileType {
|
||||
case models.FileTypeDefault:
|
||||
expirationDate = latestFile.Timestamp.Add(s.stdCutoffDuration)
|
||||
case models.FileTypeRunout:
|
||||
expirationDate = latestFile.Timestamp.Add(s.rp.CutoffDuration)
|
||||
default:
|
||||
s.logger.Errorf("unsupported file type for fetching attribution expiration date")
|
||||
return lastUpdated, expirationDate, fmt.Errorf("unsupported file type for fetching attribution expiration date")
|
||||
}
|
||||
|
||||
if !timeConstraints.AttributionDate.IsZero() && timeConstraints.AttributionDate.Before(expirationDate) {
|
||||
return lastUpdated, timeConstraints.AttributionDate, nil
|
||||
}
|
||||
return lastUpdated, expirationDate, nil
|
||||
}
|
||||
|
||||
// FindOldCCLFFile finds an older CCLF file depending on passed in timestamps
|
||||
func (s *service) FindOldCCLFFile(ctx context.Context, cmsID string, since time.Time, cclfTimestamp time.Time) (cclfFileOldID uint, err error) {
|
||||
// Retrieve an older CCLF file for beneficiary comparison.
|
||||
// This should be older than cclfFileNew AND prior to the "since" parameter, if provided.
|
||||
//
|
||||
// e.g.
|
||||
// - If it’s October 2023
|
||||
// - and they request all beneficiary data “since January 1st, 2023"
|
||||
// - any beneficiaries added in 2023 are considered "new."
|
||||
//
|
||||
oldFileTime := since
|
||||
|
||||
// If the _since parameter is more recent than the latest CCLF file timestamp, e
|
||||
// set the old file's time to be older than the newest file's timestamp.
|
||||
if !since.IsZero() && cclfTimestamp.Sub(since) < 0 {
|
||||
oldFileTime = cclfTimestamp.Add(-1 * time.Second)
|
||||
}
|
||||
|
||||
cclfFileOld, err := s.GetLatestCCLFFile(
|
||||
ctx,
|
||||
cmsID,
|
||||
time.Time{},
|
||||
oldFileTime,
|
||||
models.FileTypeDefault,
|
||||
)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
|
||||
return cclfFileOld.ID, nil
|
||||
}
|
||||
|
||||
func (s *service) GetQueJobs(ctx context.Context, args worker_types.PrepareJobArgs) (queJobs []*worker_types.JobEnqueueArgs, benesAttributed int, err error) {
|
||||
var (
|
||||
beneficiaries, newBeneficiaries []*models.CCLFBeneficiary
|
||||
jobs []*worker_types.JobEnqueueArgs
|
||||
)
|
||||
|
||||
// for default requests, runouts, or any requests where the Since parameter is
|
||||
// after a terminated ACO's attribution date, we should only retrieve exisiting benes
|
||||
switch args.ComplexDataRequestType {
|
||||
case constants.GetExistingBenes:
|
||||
beneficiaries, err = s.getBeneficiaries(ctx, args)
|
||||
if err != nil {
|
||||
return nil, 0, err
|
||||
}
|
||||
case constants.GetNewAndExistingBenes:
|
||||
newBeneficiaries, beneficiaries, err = s.getNewAndExistingBeneficiaries(ctx, args)
|
||||
if err != nil {
|
||||
return nil, 0, err
|
||||
}
|
||||
// add new beneficiaries to the job queue; use a default time value to ensure
|
||||
// that we retrieve the full history for these beneficiaries
|
||||
jobs, err = s.createQueueJobs(ctx, args, time.Time{}, newBeneficiaries)
|
||||
if err != nil {
|
||||
return nil, 0, err
|
||||
}
|
||||
queJobs = append(queJobs, jobs...)
|
||||
default:
|
||||
return nil, 0, fmt.Errorf("unsupported RequestType %d", args.RequestType)
|
||||
}
|
||||
|
||||
// add existiing beneficiaries to the job queue
|
||||
jobs, err = s.createQueueJobs(ctx, args, args.Since, beneficiaries)
|
||||
if err != nil {
|
||||
return nil, 0, err
|
||||
}
|
||||
|
||||
benesAttributed = len(newBeneficiaries) + len(beneficiaries)
|
||||
args.Job.BenesAttributedToACO = benesAttributed
|
||||
err = s.repository.UpdateJob(ctx, args.Job)
|
||||
if err != nil {
|
||||
return nil, 0, fmt.Errorf("failed to update job with benesAttributed: %w", err)
|
||||
}
|
||||
|
||||
queJobs = append(queJobs, jobs...)
|
||||
|
||||
return queJobs, benesAttributed, nil
|
||||
}
|
||||
|
||||
func (s *service) GetJobAndKeys(ctx context.Context, jobID uint) (*models.Job, []*models.JobKey, error) {
|
||||
j, err := s.repository.GetJobByID(ctx, jobID)
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
}
|
||||
|
||||
keys, err := s.repository.GetJobKeys(ctx, jobID)
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
}
|
||||
|
||||
return j, keys, nil
|
||||
}
|
||||
|
||||
func (s *service) GetJobKey(ctx context.Context, jobID uint, filename string) (*models.JobKey, error) {
|
||||
return s.repository.GetJobKey(ctx, jobID, filename)
|
||||
}
|
||||
|
||||
func (s *service) GetJobs(ctx context.Context, acoID uuid.UUID, statuses ...models.JobStatus) ([]*models.Job, error) {
|
||||
jobs, err := s.repository.GetJobs(ctx, acoID, statuses...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if jobs == nil {
|
||||
return nil, JobsNotFoundError{acoID, statuses}
|
||||
}
|
||||
return jobs, nil
|
||||
}
|
||||
|
||||
type JobsNotFoundError struct {
|
||||
ACOID uuid.UUID
|
||||
StatusTypes []models.JobStatus
|
||||
}
|
||||
|
||||
func (e JobsNotFoundError) Error() string {
|
||||
return fmt.Sprintf("no Jobs found for acoID %s with job statuses %s",
|
||||
e.ACOID, e.StatusTypes)
|
||||
}
|
||||
|
||||
func (s *service) CancelJob(ctx context.Context, jobID uint) (uint, error) {
|
||||
// Assumes the job exists and retrieves the job by ID
|
||||
job, err := s.repository.GetJobByID(ctx, jobID)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
|
||||
if job.Status == models.JobStatusPending || job.Status == models.JobStatusInProgress || job.Status == models.JobStatusCompleted {
|
||||
job.Status = models.JobStatusCancelled
|
||||
err = s.repository.UpdateJob(ctx, *job)
|
||||
if err != nil {
|
||||
return 0, ErrJobNotCancelled
|
||||
}
|
||||
return jobID, nil
|
||||
}
|
||||
|
||||
// Return 0, ErrJobNotCancellable when attempting to cancel a non-cancellable job.
|
||||
return 0, ErrJobNotCancellable
|
||||
}
|
||||
|
||||
// createQueueJobs expands a single "prepare job" request into concrete queue jobs by:
|
||||
// - choosing the effective resource + data types for the ACO/config (including BFD v3 rules)
|
||||
// - splitting beneficiaries into batches sized for the target resource type
|
||||
// - emitting one queue job per (resourceType × dataType × beneficiaryBatch)
|
||||
func (s *service) createQueueJobs(ctx context.Context, args worker_types.PrepareJobArgs, since time.Time, beneficiaries []*models.CCLFBeneficiary) (jobs []*worker_types.JobEnqueueArgs, err error) {
|
||||
sinceArg := formatSinceArg(since)
|
||||
resourceTypes, effectiveDataTypes, err := s.getEffectiveQueueJobConfig(args)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
for _, resourceType := range resourceTypes {
|
||||
maxBeneficiaries, err := getMaxBeneCount(resourceType)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
for _, beneficiaryIDs := range chunkBeneficiaryIDs(beneficiaries, maxBeneficiaries) {
|
||||
resourceJobs, err := s.createJobsForResourceChunk(ctx, args, sinceArg, resourceType, beneficiaryIDs, effectiveDataTypes)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
jobs = append(jobs, resourceJobs...)
|
||||
}
|
||||
}
|
||||
|
||||
return jobs, nil
|
||||
}
|
||||
|
||||
// formatSinceArg converts a time into the "_lastUpdated" query parameter format expected by Blue Button.
|
||||
// A zero time means "no since filter", which is represented as the empty string.
|
||||
func formatSinceArg(since time.Time) string {
|
||||
if since.IsZero() {
|
||||
return ""
|
||||
}
|
||||
|
||||
// Persist in format ready for usage with _lastUpdated -- i.e., prepended with 'gt'.
|
||||
return "gt" + since.Format(time.RFC3339Nano)
|
||||
}
|
||||
|
||||
// getEffectiveQueueJobConfig determines which resource types should be queued and which claim
|
||||
// data types should be requested, based on the matching ACO config and BFD API version.
|
||||
func (s *service) getEffectiveQueueJobConfig(args worker_types.PrepareJobArgs) ([]string, []string, error) {
|
||||
acoCfg, ok := s.GetACOConfigForID(args.CMSID)
|
||||
if !ok {
|
||||
return nil, nil, &bcdaerrors.InvalidACOConfigError{CMSID: args.CMSID}
|
||||
}
|
||||
|
||||
resourceTypes := append([]string(nil), args.ResourceTypes...)
|
||||
effectiveDataTypes := append([]string(nil), acoCfg.Data...)
|
||||
if args.BFDPath != constants.BFDV3Path {
|
||||
return resourceTypes, effectiveDataTypes, nil
|
||||
}
|
||||
|
||||
excluded := slices.Contains(s.v3NoPartialClaimsModels, acoCfg.Model)
|
||||
if !excluded && !slices.Contains(acoCfg.Data, constants.PartiallyAdjudicated) {
|
||||
effectiveDataTypes = append(effectiveDataTypes, constants.PartiallyAdjudicated)
|
||||
}
|
||||
|
||||
return resourceTypes, effectiveDataTypes, nil
|
||||
}
|
||||
|
||||
// chunkBeneficiaryIDs splits beneficiaries into fixed-size ID batches for queueing.
|
||||
func chunkBeneficiaryIDs(beneficiaries []*models.CCLFBeneficiary, maxBeneficiaries int) [][]string {
|
||||
if len(beneficiaries) == 0 {
|
||||
return nil
|
||||
}
|
||||
|
||||
chunks := make([][]string, 0, (len(beneficiaries)+maxBeneficiaries-1)/maxBeneficiaries)
|
||||
currentChunk := make([]string, 0, maxBeneficiaries)
|
||||
|
||||
for _, beneficiary := range beneficiaries {
|
||||
currentChunk = append(currentChunk, fmt.Sprint(beneficiary.ID))
|
||||
if len(currentChunk) < maxBeneficiaries {
|
||||
continue
|
||||
}
|
||||
|
||||
chunks = append(chunks, currentChunk)
|
||||
currentChunk = make([]string, 0, maxBeneficiaries)
|
||||
}
|
||||
|
||||
if len(currentChunk) > 0 {
|
||||
chunks = append(chunks, currentChunk)
|
||||
}
|
||||
|
||||
return chunks
|
||||
}
|
||||
|
||||
// createJobsForResourceChunk produces enqueue arguments for a single resource type and beneficiary batch,
|
||||
// creating a distinct job per compatible claim data type.
|
||||
func (s *service) createJobsForResourceChunk(ctx context.Context, args worker_types.PrepareJobArgs, sinceArg string, resourceType string, beneficiaryIDs []string, effectiveDataTypes []string) ([]*worker_types.JobEnqueueArgs, error) {
|
||||
resource, ok := GetClaimType(resourceType)
|
||||
if !ok {
|
||||
// This should never be possible, would have returned earlier.
|
||||
return nil, errors.New("Invalid resource type: " + resourceType)
|
||||
}
|
||||
|
||||
jobs := make([]*worker_types.JobEnqueueArgs, 0, len(effectiveDataTypes))
|
||||
for _, dataType := range effectiveDataTypes {
|
||||
if !resource.SupportsClaimType(dataType) {
|
||||
continue
|
||||
}
|
||||
|
||||
enqueueArgs, err := s.buildQueueJobArgs(ctx, args, sinceArg, beneficiaryIDs, resourceType, dataType)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
jobs = append(jobs, enqueueArgs)
|
||||
}
|
||||
|
||||
return jobs, nil
|
||||
}
|
||||
|
||||
func (s *service) buildQueueJobArgs(ctx context.Context, args worker_types.PrepareJobArgs, sinceArg string, beneficiaryIDs []string, resourceType string, dataType string) (*worker_types.JobEnqueueArgs, error) {
|
||||
jobID, err := safecast.ToInt(args.Job.ID)
|
||||
if err != nil {
|
||||
log.API.Errorln(err)
|
||||
}
|
||||
|
||||
enqueueArgs := worker_types.JobEnqueueArgs{
|
||||
ID: jobID,
|
||||
ACOID: args.ACOID.String(),
|
||||
CMSID: args.CMSID,
|
||||
BeneficiaryIDs: beneficiaryIDs,
|
||||
ResourceType: resourceType,
|
||||
Since: sinceArg,
|
||||
TypeFilter: args.TypeFilter,
|
||||
TransactionID: ctx.Value(middleware.CtxTransactionKey).(string),
|
||||
TransactionTime: getQueueJobTransactionTime(args, dataType),
|
||||
BBBasePath: args.BFDPath,
|
||||
DataType: dataType,
|
||||
}
|
||||
|
||||
if !s.setClaimsDate(&enqueueArgs, args) {
|
||||
return nil, &bcdaerrors.InvalidACOConfigError{CMSID: args.CMSID}
|
||||
}
|
||||
|
||||
return &enqueueArgs, nil
|
||||
}
|
||||
|
||||
func getQueueJobTransactionTime(args worker_types.PrepareJobArgs, dataType string) time.Time {
|
||||
// Partially-adjudicated data can lag adjudicated claims ingestion, so use job creation time.
|
||||
if dataType == constants.PartiallyAdjudicated {
|
||||
return args.CreationTime
|
||||
}
|
||||
|
||||
return args.Job.TransactionTime
|
||||
}
|
||||
|
||||
// Returns the beneficiaries associated with the latest CCLF file for the given request conditions,
|
||||
// split between existing beneficiaries and newly-attributed beneficiaries.
|
||||
func (s *service) getNewAndExistingBeneficiaries(ctx context.Context, args worker_types.PrepareJobArgs) (newBeneficiaries, beneficiaries []*models.CCLFBeneficiary, err error) {
|
||||
cclfFileNew, err := s.repository.GetCCLFFileByID(ctx, args.CCLFFileNewID)
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
}
|
||||
if cclfFileNew == nil {
|
||||
return nil, nil, fmt.Errorf("no CCLF8 file found for cmsID %s", args.CMSID)
|
||||
}
|
||||
|
||||
if !args.Since.IsZero() && cclfFileNew.CreatedAt.Sub(args.Since) < 0 {
|
||||
// Retrieve all of the benes associated with this CCLF file.
|
||||
benes, err := s.getBenesByFileID(ctx, cclfFileNew.ID, args)
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
}
|
||||
|
||||
if len(benes) == 0 {
|
||||
return nil, nil, fmt.Errorf("found 0 new beneficiaries from CCLF8 file for cmsID %s cclfFiledID %d", args.CMSID, cclfFileNew.ID)
|
||||
}
|
||||
|
||||
return newBeneficiaries, benes, nil
|
||||
}
|
||||
|
||||
cclfFileOld, err := s.repository.GetCCLFFileByID(ctx, args.CCLFFileOldID)
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
}
|
||||
|
||||
if cclfFileOld == nil {
|
||||
s.logger.Infof("Unable to find CCLF8 File for cmsID %s prior to date: %s; all beneficiaries will be considered NEW", args.CMSID, args.Since)
|
||||
|
||||
newBeneficiaries, err = s.getBenesByFileID(ctx, cclfFileNew.ID, args)
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
}
|
||||
if len(newBeneficiaries) == 0 {
|
||||
return nil, nil, fmt.Errorf("found 0 new beneficiaries from CCLF8 file for cmsID %s cclfFiledID %d", args.CMSID, cclfFileNew.ID)
|
||||
}
|
||||
return newBeneficiaries, nil, nil
|
||||
}
|
||||
|
||||
oldMBIs, err := s.repository.GetCCLFBeneficiaryMBIs(ctx, cclfFileOld.ID)
|
||||
if err != nil {
|
||||
return nil, nil, fmt.Errorf("failed to retrieve MBIs for cmsID %s cclfFileID %d %s", args.CMSID, cclfFileOld.ID, err.Error())
|
||||
}
|
||||
|
||||
// Retrieve all of the benes associated with this CCLF file.
|
||||
benes, err := s.getBenesByFileID(ctx, cclfFileNew.ID, args)
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
}
|
||||
if len(benes) == 0 {
|
||||
return nil, nil, fmt.Errorf("found 0 new or existing beneficiaries from CCLF8 file for cmsID %s cclfFiledID %d", args.CMSID, cclfFileNew.ID)
|
||||
}
|
||||
|
||||
// Split the results beteween new and old benes based on the existence of the bene in the old map
|
||||
oldMBIMap := make(map[string]struct{}, len(oldMBIs))
|
||||
for _, oldMBI := range oldMBIs {
|
||||
oldMBIMap[oldMBI] = struct{}{}
|
||||
}
|
||||
for _, bene := range benes {
|
||||
if _, ok := oldMBIMap[bene.MBI]; ok {
|
||||
beneficiaries = append(beneficiaries, bene)
|
||||
} else {
|
||||
newBeneficiaries = append(newBeneficiaries, bene)
|
||||
}
|
||||
}
|
||||
|
||||
return newBeneficiaries, beneficiaries, nil
|
||||
}
|
||||
|
||||
func (s *service) getBeneficiaries(ctx context.Context, args worker_types.PrepareJobArgs) ([]*models.CCLFBeneficiary, error) {
|
||||
cclfFile, err := s.repository.GetCCLFFileByID(ctx, args.CCLFFileNewID)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if cclfFile == nil {
|
||||
return nil, fmt.Errorf("no CCLF8 file found for cmsID %s", args.CMSID)
|
||||
}
|
||||
|
||||
benes, err := s.getBenesByFileID(ctx, cclfFile.ID, args)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if len(benes) == 0 {
|
||||
return nil, fmt.Errorf("found 0 beneficiaries from CCLF8 file for cmsID %s cclfFiledID %d", args.CMSID, cclfFile.ID)
|
||||
}
|
||||
|
||||
return benes, nil
|
||||
}
|
||||
|
||||
func (s *service) getBenesByFileID(ctx context.Context, cclfFileID uint, args worker_types.PrepareJobArgs) ([]*models.CCLFBeneficiary, error) {
|
||||
var (
|
||||
ignoredMBIs []string
|
||||
err error
|
||||
)
|
||||
if !s.sp.includeSuppressedBeneficiaries {
|
||||
upperBound := args.OptOutDate
|
||||
if args.OptOutDate.IsZero() {
|
||||
upperBound = time.Now()
|
||||
}
|
||||
|
||||
if cfg, ok := s.GetACOConfigForID(args.CMSID); ok {
|
||||
if !cfg.IgnoreSuppressions {
|
||||
ignoredMBIs, err = s.repository.GetSuppressedMBIs(ctx, s.sp.lookbackDays, upperBound)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("failed to retreive suppressedMBIs %s", err.Error())
|
||||
}
|
||||
}
|
||||
} else {
|
||||
return nil, &bcdaerrors.InvalidACOConfigError{CMSID: args.CMSID}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
benes, err := s.repository.GetCCLFBeneficiaries(ctx, cclfFileID, ignoredMBIs)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("failed to get beneficiaries %s", err.Error())
|
||||
}
|
||||
|
||||
return benes, nil
|
||||
}
|
||||
|
||||
// setClaimsDate computes the claims window to apply on the args
|
||||
func (s *service) setClaimsDate(args *worker_types.JobEnqueueArgs, prepareArgs worker_types.PrepareJobArgs) bool {
|
||||
// If the caller made a request for runout data
|
||||
// it takes precedence over any other claims date
|
||||
// that may be applied
|
||||
if prepareArgs.RequestType == constants.Runout {
|
||||
args.ClaimsWindow.Latest = s.rp.claimThruDate
|
||||
} else if !prepareArgs.ClaimsDate.IsZero() {
|
||||
args.ClaimsWindow.Latest = prepareArgs.ClaimsDate
|
||||
}
|
||||
|
||||
// Applies the earliest boundary (lower bound) from the first matching ACOConfig
|
||||
cfg, ok := s.GetACOConfigForID(prepareArgs.CMSID)
|
||||
if ok {
|
||||
args.ClaimsWindow.Earliest = cfg.LookbackTime(prepareArgs.CMSID)
|
||||
}
|
||||
|
||||
return ok
|
||||
}
|
||||
|
||||
// Gets the priority for the job where the lower the number the higher the priority in the queue.
|
||||
// Priority is based on the request parameters that the job is executing on.
|
||||
// Note: River queue library requires a priority between 1 and 4 (inclusive)
|
||||
func (s *service) GetJobPriority(acoID string, resourceType string, sinceParam bool) int16 {
|
||||
if isPriorityACO(acoID) {
|
||||
return int16(1) // priority level for jobs for synthetic ACOs that are used for smoke testing
|
||||
} else {
|
||||
return int16(4) // default priority level for jobs
|
||||
}
|
||||
}
|
||||
|
||||
// GetACOConfigForID gets first matching currently loaded ACOConfig for the specified cmsID
|
||||
func (s *service) GetACOConfigForID(cmsID string) (*ACOConfig, bool) {
|
||||
for _, cfg := range s.acoConfigs {
|
||||
if cfg.patternExp.MatchString(cmsID) {
|
||||
return &cfg, true
|
||||
}
|
||||
}
|
||||
|
||||
return nil, false
|
||||
}
|
||||
|
||||
// IsV3NoPartialClaimsModel checks if the provided model is listed in V3NoPartialClaimsModels
|
||||
func (s *service) IsV3NoPartialClaimsModel(model string) bool {
|
||||
return slices.Contains(s.v3NoPartialClaimsModels, model)
|
||||
}
|
||||
|
||||
// Checks to see if an ACO is priority ACO based on a regex pattern provided by an
|
||||
// environment variable.
|
||||
func isPriorityACO(acoID string) bool {
|
||||
if priorityACOPattern := conf.GetEnv("PRIORITY_ACO_REG_EX"); priorityACOPattern != "" {
|
||||
priorityACORegex := regexp.MustCompile(priorityACOPattern)
|
||||
if priorityACORegex.MatchString(acoID) {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func getMaxBeneCount(requestType string) (int, error) {
|
||||
const (
|
||||
BCDA_FHIR_MAX_RECORDS_EOB_DEFAULT = 50
|
||||
BCDA_FHIR_MAX_RECORDS_PATIENT_DEFAULT = 5000
|
||||
BCDA_FHIR_MAX_RECORDS_COVERAGE_DEFAULT = 4000
|
||||
BCDA_FHIR_MAX_RECORDS_CLAIM_DEFAULT = 4000
|
||||
BCDA_FHIR_MAX_RECORDS_CLAIMRESPONSE_DEFAULT = 4000
|
||||
)
|
||||
var envVar string
|
||||
var defaultVal int
|
||||
|
||||
switch requestType {
|
||||
case "ExplanationOfBenefit":
|
||||
envVar = "BCDA_FHIR_MAX_RECORDS_EOB"
|
||||
defaultVal = BCDA_FHIR_MAX_RECORDS_EOB_DEFAULT
|
||||
case "Patient":
|
||||
envVar = "BCDA_FHIR_MAX_RECORDS_PATIENT"
|
||||
defaultVal = BCDA_FHIR_MAX_RECORDS_PATIENT_DEFAULT
|
||||
case "Coverage":
|
||||
envVar = "BCDA_FHIR_MAX_RECORDS_COVERAGE"
|
||||
defaultVal = BCDA_FHIR_MAX_RECORDS_COVERAGE_DEFAULT
|
||||
case "Claim":
|
||||
envVar = "BCDA_FHIR_MAX_RECORDS_CLAIM"
|
||||
defaultVal = BCDA_FHIR_MAX_RECORDS_CLAIM_DEFAULT
|
||||
case "ClaimResponse":
|
||||
envVar = "BCDA_FHIR_MAX_RECORDS_CLAIM_RESPONSE"
|
||||
defaultVal = BCDA_FHIR_MAX_RECORDS_CLAIMRESPONSE_DEFAULT
|
||||
default:
|
||||
err := errors.New("invalid request type")
|
||||
return -1, err
|
||||
}
|
||||
maxBeneficiaries := utils.GetEnvInt(envVar, defaultVal)
|
||||
|
||||
return maxBeneficiaries, nil
|
||||
}
|
||||
|
||||
func (s *service) GetLatestCCLFFile(ctx context.Context, cmsID string, earlierTime time.Time, laterTime time.Time, fileType models.CCLFFileType) (*models.CCLFFile, error) {
|
||||
cclfFile, err := s.repository.GetLatestCCLFFile(ctx, cmsID, constants.CCLF8FileNum, constants.ImportComplete, earlierTime, laterTime, fileType)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if cclfFile == nil {
|
||||
return nil, CCLFNotFoundError{8, cmsID, fileType, earlierTime}
|
||||
}
|
||||
|
||||
return cclfFile, nil
|
||||
}
|
||||
|
||||
// GetTimeConstraints searches for any time bounds that we should apply on the associated ACO
|
||||
func (s *service) GetTimeConstraints(ctx context.Context, cmsID string) (TimeConstraints, error) {
|
||||
var constraint TimeConstraints
|
||||
aco, err := s.repository.GetACOByCMSID(ctx, cmsID)
|
||||
if err != nil {
|
||||
return constraint, fmt.Errorf("failed to retrieve aco: %w", err)
|
||||
}
|
||||
|
||||
// If aco is not terminated, then we should not apply any time constraints
|
||||
if aco.TerminationDetails == nil {
|
||||
return constraint, nil
|
||||
}
|
||||
|
||||
constraint.AttributionDate = aco.TerminationDetails.AttributionDate()
|
||||
constraint.ClaimsDate = aco.TerminationDetails.ClaimsDate()
|
||||
constraint.OptOutDate = aco.TerminationDetails.OptOutDate()
|
||||
return constraint, nil
|
||||
}
|
||||
|
||||
type CCLFNotFoundError struct {
|
||||
FileNumber int
|
||||
CMSID string
|
||||
FileType models.CCLFFileType
|
||||
CutoffTime time.Time
|
||||
}
|
||||
|
||||
func (e CCLFNotFoundError) Error() string {
|
||||
return fmt.Sprintf("no CCLF%d file found for cmsID %s fileType %d cutoffTime %s",
|
||||
e.FileNumber, e.CMSID, e.FileType, e.CutoffTime.String())
|
||||
}
|
||||
|
||||
var (
|
||||
ErrJobNotCancelled = goerrors.New("job was not cancelled due to internal server error")
|
||||
ErrJobNotCancellable = goerrors.New("job was not cancelled because it is not Pending or In Progress")
|
||||
)
|
||||
416
dev/vendor/bcda-app/bcda/web/middleware/validation.go
vendored
Normal file
416
dev/vendor/bcda-app/bcda/web/middleware/validation.go
vendored
Normal file
@@ -0,0 +1,416 @@
|
||||
package middleware
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"net/http"
|
||||
"regexp"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/CMSgov/bcda-app/bcda/constants"
|
||||
"github.com/CMSgov/bcda-app/bcda/fhir"
|
||||
responseutils "github.com/CMSgov/bcda-app/bcda/responseutils"
|
||||
responseutilsv2 "github.com/CMSgov/bcda-app/bcda/responseutils/v2"
|
||||
responseutilsv3 "github.com/CMSgov/bcda-app/bcda/responseutils/v3"
|
||||
"github.com/CMSgov/bcda-app/log"
|
||||
"github.com/sirupsen/logrus"
|
||||
)
|
||||
|
||||
var supportedOutputFormats = map[string]struct{}{
|
||||
"ndjson": {},
|
||||
"application/fhir+ndjson": {},
|
||||
"application/ndjson": {}}
|
||||
|
||||
type RequestParameters struct {
|
||||
Since time.Time
|
||||
ResourceTypes []string
|
||||
Version string // e.g. v1, v2
|
||||
RequestURL string
|
||||
TypeFilter fhir.TypeFilterSubquery
|
||||
}
|
||||
|
||||
// requestkey is an unexported context key to avoid collisions
|
||||
type requestkey int
|
||||
|
||||
const rk requestkey = 0
|
||||
|
||||
// TODO: replace this function else where with line 35
|
||||
func SetRequestParamsCtx(ctx context.Context, rp RequestParameters) context.Context {
|
||||
return context.WithValue(ctx, rk, rp)
|
||||
}
|
||||
|
||||
func GetRequestParamsFromCtx(ctx context.Context) (RequestParameters, bool) {
|
||||
rp, ok := ctx.Value(rk).(RequestParameters)
|
||||
return rp, ok
|
||||
}
|
||||
|
||||
func validateOutputFormat(r *http.Request, rw fhirResponseWriter, w http.ResponseWriter) bool {
|
||||
ctx := r.Context()
|
||||
params, ok := r.URL.Query()["_outputFormat"]
|
||||
if !ok {
|
||||
return true
|
||||
}
|
||||
|
||||
if _, found := supportedOutputFormats[params[0]]; !found {
|
||||
errMsg := fmt.Sprintf("_outputFormat parameter must be one of %v", getKeys(supportedOutputFormats))
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %s", responseutils.FormatErr, errMsg),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
rw.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.FormatErr, errMsg)
|
||||
return false
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
// we do not support "_elements" parameter
|
||||
func validateElementsParameter(r *http.Request, rw fhirResponseWriter, w http.ResponseWriter) bool {
|
||||
_, ok := r.URL.Query()["_elements"]
|
||||
ctx := r.Context()
|
||||
if !ok {
|
||||
return true
|
||||
}
|
||||
|
||||
errMsg := "Invalid parameter: this server does not support the _elements parameter."
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %s", responseutils.RequestErr, errMsg),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
rw.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.RequestErr, errMsg)
|
||||
return false
|
||||
}
|
||||
|
||||
// Check and see if the user has a duplicated the query parameter symbol (?)
|
||||
// e.g. /api/v1/Patient/$export?_type=ExplanationOfBenefit&?_since=2020-09-13T08:00:00.000-05:00
|
||||
func validateQueryParameterFormat(r *http.Request, rw fhirResponseWriter, w http.ResponseWriter) bool {
|
||||
ctx := r.Context()
|
||||
|
||||
for key := range r.URL.Query() {
|
||||
if strings.HasPrefix(key, "?") {
|
||||
errMsg := "Invalid parameter: query parameters cannot start with ?"
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %s", responseutils.FormatErr, errMsg),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
rw.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.FormatErr, errMsg)
|
||||
return false
|
||||
}
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
func validateSinceParameter(r *http.Request, rw fhirResponseWriter, w http.ResponseWriter) (time.Time, bool) {
|
||||
ctx := r.Context()
|
||||
params, ok := r.URL.Query()["_since"]
|
||||
if !ok {
|
||||
return time.Time{}, true
|
||||
}
|
||||
|
||||
sinceDate, err := time.Parse(time.RFC3339Nano, params[0])
|
||||
if err != nil {
|
||||
errMsg := "Invalid date format supplied in _since parameter. Date must be in FHIR Instant format."
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %s", responseutils.FormatErr, errMsg),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
rw.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.FormatErr, errMsg)
|
||||
return time.Time{}, false
|
||||
}
|
||||
|
||||
if sinceDate.After(time.Now()) {
|
||||
errMsg := "Invalid date format supplied in _since parameter. Date must be a date that has already passed"
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %s", responseutils.FormatErr, errMsg),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
rw.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.FormatErr, errMsg)
|
||||
return time.Time{}, false
|
||||
}
|
||||
|
||||
return sinceDate, true
|
||||
}
|
||||
|
||||
func validateResourceTypes(r *http.Request, rw fhirResponseWriter, w http.ResponseWriter) ([]string, bool) {
|
||||
ctx := r.Context()
|
||||
params, ok := r.URL.Query()["_type"]
|
||||
if !ok {
|
||||
return nil, true
|
||||
}
|
||||
|
||||
// validate no duplicate resource types
|
||||
resourceMap := make(map[string]struct{})
|
||||
resourceTypes := strings.Split(params[0], ",")
|
||||
for _, resource := range resourceTypes {
|
||||
if _, ok := resourceMap[resource]; !ok {
|
||||
resourceMap[resource] = struct{}{}
|
||||
} else {
|
||||
errMsg := fmt.Sprintf("Repeated resource type %s", resource)
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %s", responseutils.RequestErr, errMsg),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
rw.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.RequestErr, errMsg)
|
||||
return nil, false
|
||||
}
|
||||
}
|
||||
return resourceTypes, true
|
||||
}
|
||||
|
||||
// validateTypeFilterParameter validates the contents of the typeFilter param.
|
||||
func validateTypeFilterParameter(r *http.Request, rw fhirResponseWriter, w http.ResponseWriter, version string) (fhir.TypeFilterSubquery, bool) {
|
||||
var typeFilterParam fhir.TypeFilterSubquery
|
||||
ctx := r.Context()
|
||||
|
||||
params, ok := r.URL.Query()["_typeFilter"]
|
||||
if version != constants.V3Version || !ok {
|
||||
return typeFilterParam, true
|
||||
}
|
||||
|
||||
typeFilterParams, err := GetTypeFilterSubquery(params)
|
||||
if err != nil {
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: %s", responseutils.RequestErr, err.Error()),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
rw.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.RequestErr, err.Error())
|
||||
return typeFilterParam, false
|
||||
}
|
||||
return typeFilterParams, true
|
||||
}
|
||||
|
||||
// GetTypeFilterSubquery parses the _typeFilter subquery
|
||||
// For _tag, it validates each comma-separated token to correctly resolve compound query filters.
|
||||
func GetTypeFilterSubquery(params []string) (fhir.TypeFilterSubquery, error) {
|
||||
var subquery fhir.TypeFilterSubquery
|
||||
|
||||
// If more than one _typeFilter param (a logical "or"), return an error, we do not support that yet
|
||||
if len(params) > 1 {
|
||||
return subquery, fhir.ParameterValidationError{Details: "failed to process request given more that one _typeFilter parameter"}
|
||||
}
|
||||
|
||||
subquery, err := fhir.ParseTypeFilterSubquery(params[0])
|
||||
if err != nil {
|
||||
return subquery, err
|
||||
}
|
||||
|
||||
err = fhir.ValidateTypeFilterSubquery(subquery)
|
||||
if err != nil {
|
||||
return subquery, err
|
||||
}
|
||||
|
||||
return subquery, nil
|
||||
}
|
||||
|
||||
func HasSystemTypeTag(subquery fhir.TypeFilterSubquery) bool {
|
||||
tagParams, _ := fhir.GetTagParams(subquery)
|
||||
for _, tagParam := range tagParams {
|
||||
for _, tagValue := range tagParam.Values {
|
||||
if tagValue.System == constants.BFDSystemTypeURL {
|
||||
return true
|
||||
}
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
// ValidateRequestURL ensure that request matches certain expectations.
|
||||
// Any error that it finds will result in a http.StatusBadRequest response.
|
||||
// If successful, it populates the request context with RequestParameters that can be used downstream.
|
||||
// These paramters can be retrieved by calling RequestParametersFromContext.
|
||||
func ValidateRequestURL(next http.Handler) http.Handler {
|
||||
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||
rw, version := getResponseWriterFromRequestPath(w, r)
|
||||
if rw == nil {
|
||||
return
|
||||
}
|
||||
|
||||
// Validate all parameters
|
||||
if !validateOutputFormat(r, rw, w) ||
|
||||
!validateElementsParameter(r, rw, w) ||
|
||||
!validateQueryParameterFormat(r, rw, w) {
|
||||
return
|
||||
}
|
||||
|
||||
// Validate _since parameter
|
||||
sinceDate, valid := validateSinceParameter(r, rw, w)
|
||||
if !valid {
|
||||
return
|
||||
}
|
||||
|
||||
// Validate resource types
|
||||
resourceTypes, valid := validateResourceTypes(r, rw, w)
|
||||
if !valid {
|
||||
return
|
||||
}
|
||||
|
||||
// Validate type filter for v3
|
||||
typeFilter, valid := validateTypeFilterParameter(r, rw, w, version)
|
||||
if !valid {
|
||||
return
|
||||
}
|
||||
|
||||
// Build request parameters
|
||||
rp := RequestParameters{
|
||||
Version: version,
|
||||
RequestURL: r.URL.String(),
|
||||
Since: sinceDate,
|
||||
ResourceTypes: resourceTypes,
|
||||
TypeFilter: typeFilter,
|
||||
}
|
||||
|
||||
ctx := SetRequestParamsCtx(r.Context(), rp)
|
||||
next.ServeHTTP(w, r.WithContext(ctx))
|
||||
})
|
||||
}
|
||||
|
||||
func ValidateRequestHeaders(next http.Handler) http.Handler {
|
||||
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||
ctx := r.Context()
|
||||
h := r.Header
|
||||
|
||||
rw, _ := getResponseWriterFromRequestPath(w, r)
|
||||
if rw == nil {
|
||||
return
|
||||
}
|
||||
|
||||
acceptValues := parseHeaderValues(h, "Accept")
|
||||
if len(acceptValues) == 0 {
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Accept header is required", responseutils.FormatErr),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
rw.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.FormatErr, "Accept header is required")
|
||||
return
|
||||
}
|
||||
|
||||
if !hasHeaderToken(acceptValues, "application/fhir+json") {
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: application/fhir+json is the only supported response format", responseutils.FormatErr),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
rw.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.FormatErr, "application/fhir+json is the only supported response format")
|
||||
return
|
||||
}
|
||||
|
||||
preferValues := parseHeaderValues(h, "Prefer")
|
||||
if len(preferValues) == 0 {
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Prefer header is required", responseutils.FormatErr),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
rw.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.FormatErr, "Prefer header is required")
|
||||
return
|
||||
}
|
||||
|
||||
if !hasHeaderToken(preferValues, "respond-async") {
|
||||
ctx, _ = log.WriteWarnWithFields(
|
||||
ctx,
|
||||
fmt.Sprintf("%s: Only asynchronous responses are supported", responseutils.FormatErr),
|
||||
logrus.Fields{"resp_status": http.StatusBadRequest},
|
||||
)
|
||||
rw.OpOutcome(ctx, w, http.StatusBadRequest, responseutils.FormatErr, "Only asynchronous responses are supported")
|
||||
return
|
||||
}
|
||||
|
||||
next.ServeHTTP(w, r)
|
||||
})
|
||||
}
|
||||
|
||||
// hasHeaderToken checks if targetToken exists within the parsed header values,
|
||||
// stripping optional parameters (anything after ';') and performing case-insensitive matching.
|
||||
func hasHeaderToken(values []string, targetToken string) bool {
|
||||
for _, v := range values {
|
||||
token, _, _ := strings.Cut(v, ";")
|
||||
if strings.EqualFold(strings.TrimSpace(token), targetToken) {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
// parseHeaderValues extracts all values from a header, handling both multi-line
|
||||
// header fields and comma-separated parameter lists within a single header value.
|
||||
// It returns a slice of trimmed tokens.
|
||||
func parseHeaderValues(h http.Header, headerName string) []string {
|
||||
values := h.Values(headerName)
|
||||
if len(values) == 0 {
|
||||
return nil
|
||||
}
|
||||
results := make([]string, 0, len(values))
|
||||
for _, rawValue := range values {
|
||||
for _, part := range strings.Split(rawValue, ",") {
|
||||
trimmed := strings.TrimSpace(part)
|
||||
if trimmed != "" {
|
||||
results = append(results, trimmed)
|
||||
}
|
||||
}
|
||||
}
|
||||
return results
|
||||
}
|
||||
|
||||
func getKeys(kv map[string]struct{}) []string {
|
||||
keys := make([]string, 0, len(kv))
|
||||
for k := range kv {
|
||||
keys = append(keys, k)
|
||||
}
|
||||
return keys
|
||||
}
|
||||
|
||||
var versionExp = regexp.MustCompile(`\/api\/(v\d+)\/`)
|
||||
|
||||
func getVersion(path string) (string, error) {
|
||||
parts := versionExp.FindStringSubmatch(path)
|
||||
if len(parts) != 2 {
|
||||
return "", fmt.Errorf("cannot retrieve version: not enough parts in path")
|
||||
}
|
||||
return parts[1], nil
|
||||
}
|
||||
|
||||
type fhirResponseWriter interface {
|
||||
Exception(context.Context, http.ResponseWriter, int, string, string)
|
||||
NotFound(context.Context, http.ResponseWriter, int, string, string)
|
||||
OpOutcome(context.Context, http.ResponseWriter, int, string, string)
|
||||
}
|
||||
|
||||
func getRespWriter(version string) (fhirResponseWriter, error) {
|
||||
switch version {
|
||||
case "v1":
|
||||
return responseutils.NewFhirResponseWriter(), nil
|
||||
case "v2":
|
||||
return responseutilsv2.NewFhirResponseWriter(), nil
|
||||
case constants.V3Version:
|
||||
return responseutilsv3.NewFhirResponseWriter(), nil
|
||||
default:
|
||||
return nil, fmt.Errorf("unexpected API version: %s", version)
|
||||
}
|
||||
}
|
||||
|
||||
func getResponseWriterFromRequestPath(w http.ResponseWriter, r *http.Request) (fhirResponseWriter, string) {
|
||||
version, err := getVersion(r.URL.Path)
|
||||
if err != nil {
|
||||
logger := log.GetCtxLogger(r.Context())
|
||||
logger.WithField("resp_status", http.StatusBadRequest).Error(err)
|
||||
http.Error(w, err.Error(), http.StatusBadRequest)
|
||||
return nil, ""
|
||||
}
|
||||
rw, err := getRespWriter(version)
|
||||
if err != nil {
|
||||
logger := log.GetCtxLogger(r.Context())
|
||||
logger.WithField("resp_status", http.StatusBadRequest).Error(err)
|
||||
http.Error(w, err.Error(), http.StatusBadRequest)
|
||||
return nil, ""
|
||||
}
|
||||
|
||||
return rw, version
|
||||
}
|
||||
671
dev/vendor/bcda-app/bcda/web/middleware/validation_test.go
vendored
Normal file
671
dev/vendor/bcda-app/bcda/web/middleware/validation_test.go
vendored
Normal file
@@ -0,0 +1,671 @@
|
||||
package middleware
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"net/http"
|
||||
"net/http/httptest"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/CMSgov/bcda-app/bcda/auth"
|
||||
"github.com/CMSgov/bcda-app/bcda/constants"
|
||||
"github.com/CMSgov/bcda-app/bcda/fhir"
|
||||
"github.com/CMSgov/bcda-app/bcda/responseutils"
|
||||
"github.com/CMSgov/bcda-app/log"
|
||||
"github.com/sirupsen/logrus"
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
var noop http.HandlerFunc = func(rw http.ResponseWriter, r *http.Request) { rw.WriteHeader(http.StatusOK) }
|
||||
|
||||
func TestValidRequestURL(t *testing.T) {
|
||||
// Allow us to retrieve the RequestParameters by grabbing the updated context.
|
||||
// When we call *http.Request.WithContext(ctx), a new request is created.
|
||||
// So we cannot leverage the context associated with the original request
|
||||
var ctx context.Context
|
||||
handler := http.HandlerFunc(func(rw http.ResponseWriter, r *http.Request) {
|
||||
ctx = r.Context()
|
||||
})
|
||||
|
||||
now := time.Now().Add(-24 * time.Hour).Round(time.Millisecond)
|
||||
req, err := http.NewRequest("GET",
|
||||
fmt.Sprintf("/api/v1/Patient/$export?_type=Patient&_since=%s&_outputFormat=ndjson&_typeFilter=ExplanationOfBenefit%%3Fservice-date%%3Dgt2001-04-01",
|
||||
now.Format(time.RFC3339Nano)),
|
||||
nil)
|
||||
assert.NoError(t, err)
|
||||
rr := httptest.NewRecorder()
|
||||
ValidateRequestURL(handler).ServeHTTP(rr, req)
|
||||
assert.Equal(t, http.StatusOK, rr.Code)
|
||||
|
||||
// Verify we have the context as expected
|
||||
rp, ok := GetRequestParamsFromCtx(ctx)
|
||||
assert.True(t, ok)
|
||||
// assert.True(t, now.Equal(rp.Since), "Since parameter does not match")
|
||||
assert.Equal(t, rp.ResourceTypes, []string{"Patient"})
|
||||
assert.Equal(t, rp.Version, "v1")
|
||||
}
|
||||
|
||||
func TestInvalidRequestURL(t *testing.T) {
|
||||
base := "/api/v1/Patient/$export?"
|
||||
baseV3 := constants.V3Path + "Patient/$export?"
|
||||
tests := []struct {
|
||||
name string
|
||||
url string
|
||||
errMsg string
|
||||
}{
|
||||
{
|
||||
"invalidOutputFormat",
|
||||
fmt.Sprintf("%s_outputFormat=invalid", base),
|
||||
"_outputFormat parameter must be one of",
|
||||
},
|
||||
{
|
||||
"elementsNotSupported",
|
||||
fmt.Sprintf("%s_elements=invalid", base),
|
||||
"does not support the _elements parameter",
|
||||
},
|
||||
{
|
||||
"contains?",
|
||||
fmt.Sprintf("%s?_type=Patient", base),
|
||||
"query parameters cannot start with ?",
|
||||
},
|
||||
{
|
||||
"invalidSince",
|
||||
fmt.Sprintf("%s_since=05-25-1977", base),
|
||||
"Date must be in FHIR Instant format",
|
||||
},
|
||||
{
|
||||
"futureSince",
|
||||
fmt.Sprintf("%s_since=%s", base, time.Now().Add(24*time.Hour).Format(time.RFC3339Nano)),
|
||||
"Date must be a date that has already passed",
|
||||
},
|
||||
{
|
||||
"repeatedType",
|
||||
fmt.Sprintf("%s_type=Patient,Patient", base),
|
||||
"Repeated resource type Patient",
|
||||
},
|
||||
{
|
||||
"noVersion",
|
||||
"/api/Patient$export",
|
||||
"cannot retrieve version",
|
||||
},
|
||||
{
|
||||
"invalidTypeFilterResourceType",
|
||||
fmt.Sprintf("%s_typeFilter=MedicationRequest%%3Fstatus%%3Dactive", baseV3),
|
||||
"invalid _typeFilter Resource Type (Only EOBs valid): MedicationRequest",
|
||||
},
|
||||
{
|
||||
"invalidTypeFilterSubquery",
|
||||
fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3Fservice-dateactive", baseV3),
|
||||
"_typeFilter value missing equals sign",
|
||||
},
|
||||
{
|
||||
"invalidTypeFilterSubqueryParam",
|
||||
fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3Fstatus%%3Dactive", baseV3),
|
||||
"invalid _typeFilter subquery parameter: status",
|
||||
},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx = log.NewStructuredLoggerEntry(logrus.New(), ctx)
|
||||
req, err := http.NewRequest("GET", tt.url, nil)
|
||||
assert.NoError(t, err)
|
||||
|
||||
req = req.WithContext(ctx)
|
||||
|
||||
rr := httptest.NewRecorder()
|
||||
ValidateRequestURL(noop).ServeHTTP(rr, req)
|
||||
assert.Equal(t, http.StatusBadRequest, rr.Code)
|
||||
assert.Contains(t, rr.Body.String(), tt.errMsg)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestParseHeaderValues(t *testing.T) {
|
||||
tests := []struct {
|
||||
name string
|
||||
headers http.Header
|
||||
headerName string
|
||||
expected []string
|
||||
}{
|
||||
{
|
||||
name: "singleValue",
|
||||
headers: http.Header{"Prefer": []string{constants.TestRespondAsync}},
|
||||
headerName: "Prefer",
|
||||
expected: []string{constants.TestRespondAsync},
|
||||
},
|
||||
{
|
||||
name: "commaSeparatedValues",
|
||||
headers: http.Header{"Prefer": []string{constants.TestRespondAsync + ",handling=lenient"}},
|
||||
headerName: "Prefer",
|
||||
expected: []string{constants.TestRespondAsync, "handling=lenient"},
|
||||
},
|
||||
{
|
||||
name: "whitespaceTrimmingAndEmptyTokens",
|
||||
headers: http.Header{"Prefer": []string{" " + constants.TestRespondAsync + " , , handling=lenient "}},
|
||||
headerName: "Prefer",
|
||||
expected: []string{constants.TestRespondAsync, "handling=lenient"},
|
||||
},
|
||||
{
|
||||
name: "multiLineHeaders",
|
||||
headers: http.Header{"Prefer": []string{constants.TestRespondAsync, "handling=lenient"}},
|
||||
headerName: "Prefer",
|
||||
expected: []string{constants.TestRespondAsync, "handling=lenient"},
|
||||
},
|
||||
{
|
||||
name: "missingHeader",
|
||||
headers: http.Header{},
|
||||
headerName: "Prefer",
|
||||
expected: nil,
|
||||
},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
results := parseHeaderValues(tt.headers, tt.headerName)
|
||||
assert.Equal(t, tt.expected, results)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestHasHeaderToken(t *testing.T) {
|
||||
tests := []struct {
|
||||
name string
|
||||
values []string
|
||||
targetToken string
|
||||
expected bool
|
||||
}{
|
||||
{
|
||||
name: "exactMatch",
|
||||
values: []string{"respond-async"},
|
||||
targetToken: "respond-async",
|
||||
expected: true,
|
||||
},
|
||||
{
|
||||
name: "caseInsensitiveMatch",
|
||||
values: []string{"RESPOND-ASYNC"},
|
||||
targetToken: "respond-async",
|
||||
expected: true,
|
||||
},
|
||||
{
|
||||
name: "withParameters",
|
||||
values: []string{"respond-async; wait=10"},
|
||||
targetToken: "respond-async",
|
||||
expected: true,
|
||||
},
|
||||
{
|
||||
name: "mediaTypeWithParameters",
|
||||
values: []string{"application/fhir+json; charset=utf-8"},
|
||||
targetToken: "application/fhir+json",
|
||||
expected: true,
|
||||
},
|
||||
{
|
||||
name: "multipleValuesMatch",
|
||||
values: []string{"handling=lenient", "respond-async"},
|
||||
targetToken: "respond-async",
|
||||
expected: true,
|
||||
},
|
||||
{
|
||||
name: "noMatch",
|
||||
values: []string{"handling=lenient"},
|
||||
targetToken: "respond-async",
|
||||
expected: false,
|
||||
},
|
||||
{
|
||||
name: "emptySlice",
|
||||
values: nil,
|
||||
targetToken: "respond-async",
|
||||
expected: false,
|
||||
},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
assert.Equal(t, tt.expected, hasHeaderToken(tt.values, tt.targetToken))
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestValidRequestHeaders(t *testing.T) {
|
||||
tests := []struct {
|
||||
name string
|
||||
setupReq func() *http.Request
|
||||
}{
|
||||
{
|
||||
name: "StandardHeaders",
|
||||
setupReq: func() *http.Request {
|
||||
req, _ := http.NewRequest("GET", "/api/v1/Patient/$export", nil)
|
||||
req.Header.Set("Accept", "application/fhir+json")
|
||||
req.Header.Set("Prefer", constants.TestRespondAsync)
|
||||
return req
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "PreferCommaSeparatedDirectives",
|
||||
setupReq: func() *http.Request {
|
||||
req, _ := http.NewRequest("GET", "/api/v1/Patient/$export", nil)
|
||||
req.Header.Set("Accept", "application/fhir+json")
|
||||
req.Header.Set("Prefer", constants.TestRespondAsync+",handling=lenient")
|
||||
return req
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "PreferWithParameters",
|
||||
setupReq: func() *http.Request {
|
||||
req, _ := http.NewRequest("GET", "/api/v1/Patient/$export", nil)
|
||||
req.Header.Set("Accept", "application/fhir+json")
|
||||
req.Header.Set("Prefer", constants.TestRespondAsync+"; wait=10")
|
||||
return req
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "CaseInsensitiveHeaders",
|
||||
setupReq: func() *http.Request {
|
||||
req, _ := http.NewRequest("GET", "/api/v1/Patient/$export", nil)
|
||||
req.Header.Set("Accept", "APPLICATION/FHIR+JSON")
|
||||
req.Header.Set("Prefer", "RESPOND-ASYNC")
|
||||
return req
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "PreferReversedDirectives",
|
||||
setupReq: func() *http.Request {
|
||||
req, _ := http.NewRequest("GET", "/api/v1/Patient/$export", nil)
|
||||
req.Header.Set("Accept", "application/fhir+json")
|
||||
req.Header.Set("Prefer", "handling=lenient, "+constants.TestRespondAsync)
|
||||
return req
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "PreferWhitespaceTolerance",
|
||||
setupReq: func() *http.Request {
|
||||
req, _ := http.NewRequest("GET", "/api/v1/Patient/$export", nil)
|
||||
req.Header.Set("Accept", "application/fhir+json")
|
||||
req.Header.Set("Prefer", constants.TestRespondAsync+" , handling=lenient")
|
||||
return req
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "PreferMultiLineHeaders",
|
||||
setupReq: func() *http.Request {
|
||||
req, _ := http.NewRequest("GET", "/api/v1/Patient/$export", nil)
|
||||
req.Header.Set("Accept", "application/fhir+json")
|
||||
req.Header.Add("Prefer", "handling=lenient")
|
||||
req.Header.Add("Prefer", constants.TestRespondAsync)
|
||||
return req
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "AcceptCommaSeparatedMediaTypes",
|
||||
setupReq: func() *http.Request {
|
||||
req, _ := http.NewRequest("GET", "/api/v1/Patient/$export", nil)
|
||||
req.Header.Set("Accept", "application/fhir+json, application/json")
|
||||
req.Header.Set("Prefer", constants.TestRespondAsync)
|
||||
return req
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "AcceptWithParameters",
|
||||
setupReq: func() *http.Request {
|
||||
req, _ := http.NewRequest("GET", "/api/v1/Patient/$export", nil)
|
||||
req.Header.Set("Accept", "application/fhir+json; charset=utf-8")
|
||||
req.Header.Set("Prefer", constants.TestRespondAsync)
|
||||
return req
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "AcceptMultiLineHeaders",
|
||||
setupReq: func() *http.Request {
|
||||
req, _ := http.NewRequest("GET", "/api/v1/Patient/$export", nil)
|
||||
req.Header.Add("Accept", "application/json")
|
||||
req.Header.Add("Accept", "application/fhir+json")
|
||||
req.Header.Set("Prefer", constants.TestRespondAsync)
|
||||
return req
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx = log.NewStructuredLoggerEntry(logrus.New(), ctx)
|
||||
req := tt.setupReq().WithContext(ctx)
|
||||
|
||||
rr := httptest.NewRecorder()
|
||||
ValidateRequestHeaders(noop).ServeHTTP(rr, req)
|
||||
assert.Equal(t, http.StatusOK, rr.Code)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestInvalidRequestHeaders(t *testing.T) {
|
||||
tests := []struct {
|
||||
name string
|
||||
acceptHeader string
|
||||
preferHeader string
|
||||
errMsg string
|
||||
}{
|
||||
{"NoAcceptHeader", "", constants.TestRespondAsync, "Accept header is required"},
|
||||
{"InvalidAcceptHeader", "invalid", constants.TestRespondAsync, "application/fhir+json is the only supported response format"},
|
||||
{"UnsupportedAcceptHeader", "application/xml", constants.TestRespondAsync, "application/fhir+json is the only supported response format"},
|
||||
{"NoPreferHeader", "application/fhir+json", "", "Prefer header is required"},
|
||||
{"InvalidPreferHeader", "application/fhir+json", "invalid", "Only asynchronous responses are supported"},
|
||||
{"PreferMissingRespondAsync", "application/fhir+json", "handling=lenient", "Only asynchronous responses are supported"},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
ctx = log.NewStructuredLoggerEntry(logrus.New(), ctx)
|
||||
req, err := http.NewRequest("GET", "/api/v1/Patient/$export", nil)
|
||||
assert.NoError(t, err)
|
||||
|
||||
req = req.WithContext(ctx)
|
||||
if tt.acceptHeader != "" {
|
||||
req.Header.Set("Accept", tt.acceptHeader)
|
||||
}
|
||||
if tt.preferHeader != "" {
|
||||
req.Header.Set("Prefer", tt.preferHeader)
|
||||
}
|
||||
|
||||
rr := httptest.NewRecorder()
|
||||
ValidateRequestHeaders(noop).ServeHTTP(rr, req)
|
||||
assert.Equal(t, http.StatusBadRequest, rr.Code)
|
||||
assert.Contains(t, rr.Body.String(), tt.errMsg)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestValidateTypeFilterTagCodes(t *testing.T) {
|
||||
baseV3 := constants.V3Path + "Patient/$export?"
|
||||
ctx := context.Background()
|
||||
ctx = log.NewStructuredLoggerEntry(logrus.New(), ctx)
|
||||
|
||||
tests := []struct {
|
||||
name string
|
||||
url string
|
||||
shouldFail bool
|
||||
expectedErr error
|
||||
description string
|
||||
expectedTypeFilter fhir.TypeFilterSubquery // when non-nil, we assert the parsed TypeFilter in context equals this making sure params are not dropped.
|
||||
}{
|
||||
{
|
||||
name: "validTagSharedSystem",
|
||||
url: fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3F_tag%%3Dhttps%%3A%%2F%%2Fbluebutton.cms.gov%%2Ffhir%%2FCodeSystem%%2FSystem-Type%%7CSharedSystem", baseV3),
|
||||
shouldFail: false,
|
||||
description: "Valid tag in URL format should pass",
|
||||
expectedTypeFilter: fhir.TypeFilterSubquery{
|
||||
ResourceType: "ExplanationOfBenefit",
|
||||
QueryParameters: []fhir.TypeFilterSubqueryParam{
|
||||
{
|
||||
Name: "_tag",
|
||||
Value: constants.BFDSystemTypeURL + "|SharedSystem",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "validTagNationalClaimsHistory",
|
||||
url: fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3F_tag%%3Dhttps%%3A%%2F%%2Fbluebutton.cms.gov%%2Ffhir%%2FCodeSystem%%2FSystem-Type%%7CNationalClaimsHistory", baseV3),
|
||||
shouldFail: false,
|
||||
description: "Valid NCH tag should pass",
|
||||
expectedTypeFilter: fhir.TypeFilterSubquery{
|
||||
ResourceType: "ExplanationOfBenefit",
|
||||
QueryParameters: []fhir.TypeFilterSubqueryParam{
|
||||
{
|
||||
Name: "_tag",
|
||||
Value: constants.BFDSystemTypeURL + "|NationalClaimsHistory",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "validTagSharedSystemComma",
|
||||
url: fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3F_tag%%3Dhttps%%3A%%2F%%2Fbluebutton.cms.gov%%2Ffhir%%2FCodeSystem%%2FSystem-Type%%7CSharedSystem,https%%3A%%2F%%2Fbluebutton.cms.gov%%2Ffhir%%2FCodeSystem%%2FFinal-Action%%7CFinalAction", baseV3),
|
||||
shouldFail: false,
|
||||
description: "Valid comma-separated tags should pass",
|
||||
expectedTypeFilter: fhir.TypeFilterSubquery{
|
||||
ResourceType: "ExplanationOfBenefit",
|
||||
QueryParameters: []fhir.TypeFilterSubqueryParam{
|
||||
{
|
||||
Name: "_tag",
|
||||
Value: constants.BFDSystemTypeURL + "|SharedSystem," + constants.BFDFinalActionURL + "|FinalAction",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "validOutcomeComma",
|
||||
url: fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3Foutcome%%3Dpartial,complete", baseV3),
|
||||
shouldFail: false,
|
||||
description: "Valid comma-separated outcome should pass",
|
||||
expectedTypeFilter: fhir.TypeFilterSubquery{
|
||||
ResourceType: "ExplanationOfBenefit",
|
||||
QueryParameters: []fhir.TypeFilterSubqueryParam{
|
||||
{
|
||||
Name: "outcome",
|
||||
Value: "partial,complete",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "invalidOutcome",
|
||||
url: fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3Foutcome%%3Dinvalid_status", baseV3),
|
||||
shouldFail: true,
|
||||
expectedErr: fhir.ParameterValidationError{},
|
||||
description: "Outcome must be complete or partial",
|
||||
},
|
||||
{
|
||||
name: "validTagDDPS",
|
||||
url: fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3F_tag%%3Dhttps%%3A%%2F%%2Fbluebutton.cms.gov%%2Ffhir%%2FCodeSystem%%2FSystem-Type%%7CDDPS", baseV3),
|
||||
shouldFail: false,
|
||||
description: "Valid DDPS tag should pass",
|
||||
expectedTypeFilter: fhir.TypeFilterSubquery{
|
||||
ResourceType: "ExplanationOfBenefit",
|
||||
QueryParameters: []fhir.TypeFilterSubqueryParam{
|
||||
{
|
||||
Name: "_tag",
|
||||
Value: constants.BFDSystemTypeURL + "|DDPS",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "validTagFinalAction",
|
||||
url: fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3F_tag%%3Dhttps%%3A%%2F%%2Fbluebutton.cms.gov%%2Ffhir%%2FCodeSystem%%2FFinal-Action%%7CFinalAction", baseV3),
|
||||
shouldFail: false,
|
||||
description: "Valid FinalAction tag should pass",
|
||||
expectedTypeFilter: fhir.TypeFilterSubquery{
|
||||
ResourceType: "ExplanationOfBenefit",
|
||||
QueryParameters: []fhir.TypeFilterSubqueryParam{
|
||||
{
|
||||
Name: "_tag",
|
||||
Value: constants.BFDFinalActionURL + "|FinalAction",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "validTagNotFinalAction",
|
||||
url: fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3F_tag%%3Dhttps%%3A%%2F%%2Fbluebutton.cms.gov%%2Ffhir%%2FCodeSystem%%2FFinal-Action%%7CNotFinalAction", baseV3),
|
||||
shouldFail: false,
|
||||
description: "Valid NotFinalAction tag should pass",
|
||||
expectedTypeFilter: fhir.TypeFilterSubquery{
|
||||
ResourceType: "ExplanationOfBenefit",
|
||||
QueryParameters: []fhir.TypeFilterSubqueryParam{
|
||||
{
|
||||
Name: "_tag",
|
||||
Value: constants.BFDFinalActionURL + "|NotFinalAction",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "invalidTagPartiallyAdjudicated",
|
||||
url: fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3F_tag%%3DPartiallyAdjudicated", baseV3),
|
||||
shouldFail: true,
|
||||
expectedErr: fhir.ParameterValidationError{},
|
||||
description: "Old PartiallyAdjudicated tag should be rejected",
|
||||
},
|
||||
{
|
||||
name: "invalidTagSharedSystem",
|
||||
url: fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3F_tag%%3DSharedSystem", baseV3),
|
||||
shouldFail: true,
|
||||
expectedErr: fhir.ParameterValidationError{},
|
||||
description: "Only code, no system should be rejected. even with valid code",
|
||||
},
|
||||
{
|
||||
name: "invalidTagRandomValue",
|
||||
url: fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3F_tag%%3DInvalidTag", baseV3),
|
||||
shouldFail: true,
|
||||
expectedErr: fhir.ParameterValidationError{},
|
||||
description: "Random invalid tag should be rejected",
|
||||
},
|
||||
{
|
||||
name: "multipleValidTags",
|
||||
url: fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3F_tag%%3Dhttps%%3A%%2F%%2Fbluebutton.cms.gov%%2Ffhir%%2FCodeSystem%%2FFinal-Action%%7CNotFinalAction%%26_tag%%3Dhttps%%3A%%2F%%2Fbluebutton.cms.gov%%2Ffhir%%2FCodeSystem%%2FSystem-Type%%7CSharedSystem", baseV3),
|
||||
shouldFail: false,
|
||||
description: "Multiple valid tags should pass",
|
||||
expectedTypeFilter: fhir.TypeFilterSubquery{
|
||||
ResourceType: "ExplanationOfBenefit",
|
||||
QueryParameters: []fhir.TypeFilterSubqueryParam{
|
||||
{
|
||||
Name: "_tag",
|
||||
Value: constants.BFDFinalActionURL + "|NotFinalAction",
|
||||
},
|
||||
{
|
||||
Name: "_tag",
|
||||
Value: constants.BFDSystemTypeURL + "|SharedSystem",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "validTypeFilterServiceDateAndTag",
|
||||
url: fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3Fservice-date%%3Dlt2021-02-15%%26_tag%%3Dhttps%%3A%%2F%%2Fbluebutton.cms.gov%%2Ffhir%%2FCodeSystem%%2FFinal-Action%%7CFinalAction", baseV3),
|
||||
shouldFail: false,
|
||||
description: "Subquery with service-date and _tag (FinalAction) should pass",
|
||||
expectedTypeFilter: fhir.TypeFilterSubquery{
|
||||
ResourceType: "ExplanationOfBenefit",
|
||||
QueryParameters: []fhir.TypeFilterSubqueryParam{
|
||||
{
|
||||
Name: "service-date",
|
||||
Value: "lt2021-02-15",
|
||||
},
|
||||
{
|
||||
Name: "_tag",
|
||||
Value: constants.BFDFinalActionURL + "|FinalAction",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "validTypeFilterServiceDateAndTagAlternate",
|
||||
url: fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3Fservice-date%%3Dgt2001-04-01%%26_tag%%3Dhttps%%3A%%2F%%2Fbluebutton.cms.gov%%2Ffhir%%2FCodeSystem%%2FSystem-Type%%7CNationalClaimsHistory", baseV3),
|
||||
shouldFail: false,
|
||||
description: "Subquery with service-date and _tag (NationalClaimsHistory) should pass",
|
||||
expectedTypeFilter: fhir.TypeFilterSubquery{
|
||||
ResourceType: "ExplanationOfBenefit",
|
||||
QueryParameters: []fhir.TypeFilterSubqueryParam{
|
||||
{
|
||||
Name: "service-date",
|
||||
Value: "gt2001-04-01",
|
||||
},
|
||||
{
|
||||
Name: "_tag",
|
||||
Value: constants.BFDSystemTypeURL + "|NationalClaimsHistory",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "multipleTagsOneInvalid",
|
||||
url: fmt.Sprintf("%s_typeFilter=ExplanationOfBenefit%%3F_tag%%3Dhttps%%3A%%2F%%2Fbluebutton.cms.gov%%2Ffhir%%2FCodeSystem%%2FFinal-Action%%7CNotFinalAction%%26_tag%%3DPartiallyAdjudicated", baseV3),
|
||||
shouldFail: true,
|
||||
expectedErr: fhir.ParameterValidationError{},
|
||||
description: "Multiple tags with one invalid should fail",
|
||||
},
|
||||
{
|
||||
name: "v2ShouldIgnoreTypeFilter",
|
||||
url: fmt.Sprintf("/api/v2/Patient/$export?_typeFilter=ExplanationOfBenefit%%3F_tag%%3DPartiallyAdjudicated"),
|
||||
shouldFail: false,
|
||||
description: "v2 should ignore _typeFilter validation (old behavior preserved)",
|
||||
},
|
||||
{
|
||||
name: "v1ShouldIgnoreTypeFilter",
|
||||
url: fmt.Sprintf("/api/v1/Patient/$export?_typeFilter=ExplanationOfBenefit%%3F_tag%%3DPartiallyAdjudicated"),
|
||||
shouldFail: false,
|
||||
description: "v1 should ignore _typeFilter validation (old behavior preserved)",
|
||||
},
|
||||
|
||||
{
|
||||
name: "multipleTypeFilterSubqueries",
|
||||
url: fmt.Sprintf("%s_type=ExplanationOfBenefit&_typeFilter=ExplanationOfBenefit%%3Fservice-date%%3Dlt2021-02-15%%26_tag%%3Dhttps%%3A%%2F%%2Fbluebutton.cms.gov%%2Ffhir%%2FCodeSystem%%2FFinal-Action%%7CFinalAction&_typeFilter=ExplanationOfBenefit%%3F_tag%%3Dhttps%%3A%%2F%%2Fbluebutton.cms.gov%%2Ffhir%%2FCodeSystem%%2FFinal-Action%%7CNotFinalAction", baseV3),
|
||||
shouldFail: true,
|
||||
expectedErr: fhir.ParameterValidationError{},
|
||||
description: "Multiple _typeFilter params. Bulk IG supports this but we do not",
|
||||
},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
req, err := http.NewRequest("GET", tt.url, nil)
|
||||
assert.NoError(t, err)
|
||||
req = req.WithContext(ctx)
|
||||
req.Header.Set("Accept", "application/fhir+json")
|
||||
req.Header.Set("Prefer", constants.TestRespondAsync)
|
||||
|
||||
var capturedCtx context.Context
|
||||
handler := http.HandlerFunc(func(rw http.ResponseWriter, r *http.Request) {
|
||||
capturedCtx = r.Context()
|
||||
rw.WriteHeader(http.StatusOK)
|
||||
})
|
||||
|
||||
rr := httptest.NewRecorder()
|
||||
ValidateRequestURL(handler).ServeHTTP(rr, req)
|
||||
|
||||
if tt.shouldFail {
|
||||
assert.Equal(t, http.StatusBadRequest, rr.Code, tt.description)
|
||||
assert.Contains(t, rr.Body.String(), tt.expectedErr.Error(), tt.description)
|
||||
} else {
|
||||
assert.Equal(t, http.StatusOK, rr.Code, tt.description)
|
||||
if tt.expectedTypeFilter.QueryParameters != nil {
|
||||
rp, ok := GetRequestParamsFromCtx(capturedCtx)
|
||||
assert.True(t, ok, "request params should be in context")
|
||||
assert.Equal(t, tt.expectedTypeFilter, rp.TypeFilter, "parsed _typeFilter params should match request")
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestGetRespWriter(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
tests := []struct {
|
||||
name string
|
||||
path string
|
||||
}{
|
||||
{"v1", constants.V1Path},
|
||||
{"v2", constants.V2Path},
|
||||
{"v3", constants.V3Path},
|
||||
}
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
rr := httptest.NewRecorder()
|
||||
rw := auth.GetRespWriter(tt.path)
|
||||
rw.OpOutcome(ctx, rr, http.StatusUnauthorized, responseutils.TokenErr, responseutils.TokenErr)
|
||||
resp := rr.Body.String()
|
||||
switch tt.name {
|
||||
case "v1":
|
||||
assert.NotContains(t, resp, "coding")
|
||||
case "v2":
|
||||
assert.Contains(t, resp, "coding")
|
||||
case "v3":
|
||||
assert.NotContains(t, resp, "coding")
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
111
dev/vendor/bcda-app/conf/configs/prod.yml
vendored
Normal file
111
dev/vendor/bcda-app/conf/configs/prod.yml
vendored
Normal file
@@ -0,0 +1,111 @@
|
||||
aco_config:
|
||||
# Kidney Care Choices (KCC) Model - Comprehensive Kidney Care Contracting
|
||||
- model: 'CKCC' # Active, managed by 4i
|
||||
name_pattern: '^C\d{4}$'
|
||||
performance_year_transition: '01/01'
|
||||
lookback_period: 2
|
||||
data:
|
||||
- 'adjudicated'
|
||||
# Kidney Care Choices (KCC) Model - Kidney Care First
|
||||
- model: 'KCF' # Ended, managed by 4i
|
||||
name_pattern: '^K\d{4}$'
|
||||
performance_year_transition: '01/01'
|
||||
lookback_period: 2
|
||||
data:
|
||||
- 'adjudicated'
|
||||
# ACO REACH Model, formerly Global and Professional Direct Contracting Model (GPDC) Model
|
||||
- model: 'DC' # Active, managed by 4i
|
||||
name_pattern: '^D\d{4}$'
|
||||
performance_year_transition: '04/01'
|
||||
lookback_period: 3
|
||||
data:
|
||||
- 'partially-adjudicated'
|
||||
- 'adjudicated'
|
||||
# Medicare Shared Savings Program
|
||||
- model: 'SSP' # Active, managed by ACO-MS
|
||||
name_pattern: '^A\d{4}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
# Comprehensive ESRD Care (CEC) Model
|
||||
- model: 'CEC' # Ended
|
||||
name_pattern: '^E\d{4}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
# Next Generation ACO Model
|
||||
- model: 'NGACO' # Ended
|
||||
name_pattern: '^V\d{3}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
# A config for BCDA's test entities
|
||||
- model: 'TEST' # Active, managed by BCDA Admin
|
||||
name_pattern: '^TEST\d{3}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
- 'partially-adjudicated'
|
||||
# Maryland Total Cost of Care (MD TCoC) Model
|
||||
- model: 'TCOCMD' # Ended, managed by BCDA Admin
|
||||
name_pattern: '^CT\d{4,6}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
- 'partially-adjudicated'
|
||||
attribution_file:
|
||||
file_type: 'csv'
|
||||
name_pattern: '(P|T)\.(PCPB)\.(M)([0-9][0-9])(\d{2})\.(D\d{6}\.T\d{6})\d'
|
||||
model_identifier: 'PCPB'
|
||||
file_performance_year: 4
|
||||
file_date: 6
|
||||
metadata_matches: 7
|
||||
ignore_suppressions: true
|
||||
# CMS Data Aggregation Contract
|
||||
- model: 'CDAC' # Ended, managed by IHP
|
||||
name_pattern: '^DA\d{4}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
- 'partially-adjudicated'
|
||||
attribution_file:
|
||||
file_type: 'csv'
|
||||
name_pattern: '(P|T)\.(BCD)\.(DA\d{4}).(MBIY)(\d{2})\.(D\d{6}\.T\d{6})\d'
|
||||
model_identifier: 'BCD'
|
||||
file_performance_year: 5
|
||||
file_date: 6
|
||||
metadata_matches: 7
|
||||
# GUIDE (Guiding an Improved Dementia Experience) Model
|
||||
- model: 'GUIDE' # Active, managed by IHP
|
||||
name_pattern: '^GUIDE-\d{4}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
attribution_file:
|
||||
file_type: 'csv'
|
||||
name_pattern: '(P|T)\.(GUIDE)\.(GUIDE-)(\d{4})\.(Y)(\d{2})\.(D\d{6}\.T\d{6})\d'
|
||||
model_identifier: 'GUIDE'
|
||||
file_performance_year: 6
|
||||
file_date: 7
|
||||
metadata_matches: 8
|
||||
# ACCESS (Advancing Chronic Care with Effective, Scalable Solutions) Model
|
||||
- model: 'ACCESS' # Active, managed by IHP
|
||||
name_pattern: '^ACCES\d{5}$' # only one 's' due to character limits
|
||||
lookback_period: 3
|
||||
data:
|
||||
- 'adjudicated'
|
||||
attribution_file:
|
||||
file_type: 'csv'
|
||||
name_pattern: '(P|T)\.(ACCESS)\.(ACCES\d{5})\.(Y)(\d{2})\.(D\d{6}\.T\d{6})\d'
|
||||
model_identifier: 'ACCESS'
|
||||
file_performance_year: 5
|
||||
file_date: 6
|
||||
metadata_matches: 7
|
||||
# Increasing Organ Transplant Access (IOTA) Model
|
||||
- model: 'IOTA' # Active, managed via 4i
|
||||
name_pattern: '^IOTA\d{3}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
- 'partially-adjudicated'
|
||||
rate_limit_config:
|
||||
all: true
|
||||
acos: []
|
||||
v1_v2_deny_regexes:
|
||||
- '^IOTA\d{3}'
|
||||
- '^ACCES\d{5}$'
|
||||
- '^GUIDE-\d{4}$'
|
||||
v3_no_partial_claims_models:
|
||||
- 'GUIDE'
|
||||
103
dev/vendor/bcda-app/conf/configs/sandbox.yml
vendored
Normal file
103
dev/vendor/bcda-app/conf/configs/sandbox.yml
vendored
Normal file
@@ -0,0 +1,103 @@
|
||||
aco_config:
|
||||
- model: 'CKCC'
|
||||
name_pattern: '^C\d{4}$'
|
||||
performance_year_transition: '01/01'
|
||||
lookback_period: 2
|
||||
data:
|
||||
- 'adjudicated'
|
||||
- model: 'KCF'
|
||||
name_pattern: '^K\d{4}$'
|
||||
performance_year_transition: '01/01'
|
||||
lookback_period: 2
|
||||
data:
|
||||
- 'adjudicated'
|
||||
- model: 'DC'
|
||||
name_pattern: '^D\d{4}$'
|
||||
performance_year_transition: '04/01'
|
||||
lookback_period: 3
|
||||
data:
|
||||
- 'adjudicated'
|
||||
- model: 'SSP'
|
||||
name_pattern: '^A\d{4}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
- model: 'CEC'
|
||||
name_pattern: '^E\d{4}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
- model: 'NGACO'
|
||||
name_pattern: '^V\d{3}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
- model: 'TEST'
|
||||
name_pattern: '^TEST\d{3}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
- 'partially-adjudicated'
|
||||
- model: 'Sandbox Adj'
|
||||
name_pattern: '^SBXA\\w\d{3}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
- model: 'Sandbox Partially-Adj'
|
||||
name_pattern: '^SBXP\\w\d{3}$'
|
||||
data:
|
||||
- 'partially-adjudicated'
|
||||
- model: 'Sandbox Both'
|
||||
name_pattern: '^SBXB\\w\d{3}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
- 'partially-adjudicated'
|
||||
- model: 'TCOCMD'
|
||||
name_pattern: '^CT\d{4,6}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
- 'partially-adjudicated'
|
||||
attribution_file:
|
||||
file_type: 'csv'
|
||||
name_pattern: '(P|T)\.(PCPB)\.(M)([0-9][0-9])(\d{2})\.(D\d{6}\.T\d{6})\d'
|
||||
model_identifier: 'PCPB'
|
||||
file_performance_year: 4
|
||||
file_date: 6
|
||||
metadata_matches: 7
|
||||
ignore_suppressions: true
|
||||
- model: 'CDAC'
|
||||
name_pattern: '^DA\d{4}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
- 'partially-adjudicated'
|
||||
attribution_file:
|
||||
file_type: 'csv'
|
||||
name_pattern: '(P|T)\.(BCD)\.(DA\d{4}).(MBIY)(\d{2})\.(D\d{6}\.T\d{6})\d'
|
||||
model_identifier: 'BCD'
|
||||
file_performance_year: 5
|
||||
file_date: 6
|
||||
metadata_matches: 7
|
||||
- model: 'GUIDE'
|
||||
name_pattern: '^GUIDE-\d{4}$'
|
||||
data:
|
||||
- 'adjudicated'
|
||||
attribution_file:
|
||||
file_type: 'csv'
|
||||
name_pattern: '(P|T)\.(GUIDE)\.(GUIDE-)(\d{4})\.(Y)(\d{2})\.(D\d{6}\.T\d{6})\d'
|
||||
model_identifier: 'GUIDE'
|
||||
file_performance_year: 6
|
||||
file_date: 7
|
||||
metadata_matches: 8
|
||||
- model: 'ACCESS'
|
||||
name_pattern: '^ACCES\d{5}$' # only one 's' due to character limits
|
||||
lookback_period: 3
|
||||
data:
|
||||
- 'adjudicated'
|
||||
attribution_file:
|
||||
file_type: 'csv'
|
||||
name_pattern: '(P|T)\.(ACCESS)\.(ACCES\d{5})\.(Y)(\d{2})\.(D\d{6}\.T\d{6})\d'
|
||||
model_identifier: 'ACCESS'
|
||||
file_performance_year: 5
|
||||
file_date: 6
|
||||
metadata_matches: 7
|
||||
rate_limit_config:
|
||||
all: false
|
||||
acos: ['SBXBM0002']
|
||||
v1_v2_deny_regexes: []
|
||||
v3_no_partial_claims_models:
|
||||
- 'GUIDE'
|
||||
BIN
dev/vendor/bcda-app/shared_files/gzip_feature_test/corrupt_gz_file.ndjson
vendored
Normal file
BIN
dev/vendor/bcda-app/shared_files/gzip_feature_test/corrupt_gz_file.ndjson
vendored
Normal file
Binary file not shown.
BIN
dev/vendor/bcda-app/shared_files/gzip_feature_test/test_gzip_encoded.ndjson
vendored
Normal file
BIN
dev/vendor/bcda-app/shared_files/gzip_feature_test/test_gzip_encoded.ndjson
vendored
Normal file
Binary file not shown.
1
dev/vendor/bcda-app/shared_files/gzip_feature_test/test_no_encoding.ndjson
vendored
Normal file
1
dev/vendor/bcda-app/shared_files/gzip_feature_test/test_no_encoding.ndjson
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"billablePeriod":{"end":"2016-10-30","start":"2016-10-30"},"contained":[{"birthDate":"1953-05-18","gender":"male","id":"patient","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MC","display":"Patient's Medicare Number","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00KW61"}],"name":[{"family":"Quitzon246","given":["Rodolfo763"],"text":"Rodolfo763 Quitzon246 ([max 10 chars of first], [max 15 chars of last])"}],"resourceType":"Patient"},{"id":"provider-org","identifier":[{"system":"https://bluebutton.cms.gov/resources/variables/fiss/meda-prov-6","type":{"coding":[{"code":"PRN","display":"Provider number","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"450702"},{"system":"https://bluebutton.cms.gov/resources/variables/fiss/fed-tax-nb","type":{"coding":[{"code":"TAX","display":"Tax ID number","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"XX-XXXXXXX"},{"system":"http://hl7.org/fhir/sid/us-npi","type":{"coding":[{"code":"npi","display":"National Provider Identifier","system":"http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType"}]},"value":"8884381863"}],"resourceType":"Organization"}],"created":"2024-04-19T11:37:21-04:00","diagnosis":[{"diagnosisCodeableConcept":{"coding":[{"code":"P292","system":"http://hl7.org/fhir/sid/icd-10-cm"}]},"sequence":0}],"extension":[{"url":"https://bluebutton.cms.gov/resources/variables/fiss/serv-typ-cd","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/resources/variables/fiss/serv-typ-cd"}}],"facility":{"extension":[{"url":"https://bluebutton.cms.gov/resources/variables/fiss/lob-cd","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/resources/variables/fiss/lob-cd"}}]},"id":"f-LTEwMDE5NTYxNA","identifier":[{"system":"https://bluebutton.cms.gov/resources/variables/fiss/dcn","type":{"coding":[{"code":"uc","display":"Unique Claim ID","system":"http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType"}]},"value":"dcn-100195614"}],"insurance":[{"coverage":{"identifier":{"system":"https://bluebutton.cms.gov/resources/variables/fiss/payers-name","value":"MEDICARE"}},"focal":true,"sequence":0}],"meta":{"lastUpdated":"2023-04-13T18:18:27.334-04:00"},"patient":{"reference":"#patient"},"priority":{"coding":[{"code":"normal","display":"Normal","system":"http://terminology.hl7.org/CodeSystem/processpriority"}]},"provider":{"reference":"#provider-org"},"resourceType":"Claim","status":"active","supportingInfo":[{"category":{"coding":[{"code":"typeofbill","display":"Type of Bill","system":"http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType"}]},"code":{"coding":[{"code":"1","system":"https://bluebutton.cms.gov/resources/variables/fiss/freq-cd"}]},"sequence":1}],"total":{"currency":"USD","value":639.66},"type":{"coding":[{"code":"institutional","display":"Institutional","system":"http://terminology.hl7.org/CodeSystem/claim-type"}]},"use":"claim"}
|
||||
3896
dev/vendor/bcda-app/swagger.json
vendored
Normal file
3896
dev/vendor/bcda-app/swagger.json
vendored
Normal file
File diff suppressed because it is too large
Load Diff
2116
dev/vendor/bcda-app/test/postman_test/BCDA_V3_Tests.postman_collection.json
vendored
Normal file
2116
dev/vendor/bcda-app/test/postman_test/BCDA_V3_Tests.postman_collection.json
vendored
Normal file
File diff suppressed because it is too large
Load Diff
27
dev/vendor/bcda-app/test/postman_test/sandbox.postman_environment.json
vendored
Normal file
27
dev/vendor/bcda-app/test/postman_test/sandbox.postman_environment.json
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
{
|
||||
"id": "6c024be7-f7f0-42ed-ae9d-82e8384490ab",
|
||||
"name": "bcda-sandbox",
|
||||
"values": [
|
||||
{
|
||||
"key": "scheme",
|
||||
"value": "https",
|
||||
"description": "",
|
||||
"enabled": true
|
||||
},
|
||||
{
|
||||
"key": "host",
|
||||
"value": "sandbox.bcda.cms.gov",
|
||||
"description": "",
|
||||
"enabled": true
|
||||
},
|
||||
{
|
||||
"key": "env",
|
||||
"value": "sandbox",
|
||||
"description": "",
|
||||
"enabled": true
|
||||
}
|
||||
],
|
||||
"_postman_variable_scope": "environment",
|
||||
"_postman_exported_at": "2018-12-27T19:31:15.933Z",
|
||||
"_postman_exported_using": "Postman/6.6.1"
|
||||
}
|
||||
BIN
dev/vendor/bcda-site/BCDA_Partially_Adjudicated_Data_Dictionary.xlsx
vendored
Normal file
BIN
dev/vendor/bcda-site/BCDA_Partially_Adjudicated_Data_Dictionary.xlsx
vendored
Normal file
Binary file not shown.
BIN
dev/vendor/bcda-site/BCDA_v2_Data_Dictionary.xlsx
vendored
Normal file
BIN
dev/vendor/bcda-site/BCDA_v2_Data_Dictionary.xlsx
vendored
Normal file
Binary file not shown.
BIN
dev/vendor/bcda-site/BCDA_v3_Data_Dictionary.xlsx
vendored
Normal file
BIN
dev/vendor/bcda-site/BCDA_v3_Data_Dictionary.xlsx
vendored
Normal file
Binary file not shown.
BIN
dev/vendor/bcda-site/unmapped-fields-between-cclf-and-bcda.xlsx
vendored
Normal file
BIN
dev/vendor/bcda-site/unmapped-fields-between-cclf-and-bcda.xlsx
vendored
Normal file
Binary file not shown.
175
dev/vendor/bcda-site/v3_Coverage.ndjson
vendored
Normal file
175
dev/vendor/bcda-site/v3_Coverage.ndjson
vendored
Normal file
@@ -0,0 +1,175 @@
|
||||
{"beneficiary":{"reference":"Patient/-101021696"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"I","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--101021696","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA71"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA71","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-101021696"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0002"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-01"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}}],"id":"part-c--101021696-Z0002--01","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA71"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2019-05-03"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA71","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-101021696"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"08","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"VA","system":"https://www.usps.com"}}],"id":"dual--101021696","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA71"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-09-09"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA71","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-108727054"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"T","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--108727054","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA52"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-05-13"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA52","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-108727054"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"09","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"VT","system":"https://www.usps.com"}}],"id":"dual--108727054","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA52"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-03-13"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA52","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-123654140"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"00","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"TN","system":"https://www.usps.com"}}],"id":"dual--123654140","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA90"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-06-24"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA90","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-129897709"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"Z","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"M","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--129897709","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA63"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA63","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-129897709"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"04","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WA","system":"https://www.usps.com"}}],"id":"dual--129897709","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA63"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-07-19"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA63","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-140997345"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--140997345","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA26"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-12-07"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA26","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-140997345"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0007"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-01"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}}],"id":"part-c--140997345-Z0007--01","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA26"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2018-01-19"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA26","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-144940522"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"K","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--144940522","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA20"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-08-22"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA20","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-144940522"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"R","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--144940522","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA20"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-08-22"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA20","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-144940522"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"*","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WY","system":"https://www.usps.com"}}],"id":"dual--144940522","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA20"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-05-20"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA20","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-151627122"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--151627122","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00FZ00"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-12-08"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00FZ00","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-151627122"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--151627122","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00FZ00"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-12-08"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00FZ00","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-151627122"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"07","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"TN","system":"https://www.usps.com"}}],"id":"dual--151627122","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00FZ00"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-08-30"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00FZ00","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-162240675"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"A","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--162240675","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA38"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2022-06-20"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA38","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-162240675"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"*","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"VA","system":"https://www.usps.com"}}],"id":"dual--162240675","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA38"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-01-19"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA38","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-163635755"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"Q","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"40","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--163635755","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA65"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-04-18"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA65","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-163635755"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"03","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"VT","system":"https://www.usps.com"}}],"id":"dual--163635755","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA65"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-10-18"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA65","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-175163570"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"C","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"I","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--175163570","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA83"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2022-06-30"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA83","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-175163570"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"01","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"TX","system":"https://www.usps.com"}}],"id":"dual--175163570","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA83"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-06-30"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA83","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-178603425"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0008"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-02"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-EMPLR-SBSDY-SW","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-EMPLR-SBSDY-SW"}}],"id":"part-c--178603425-Z0008--02","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA19"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2019-07-17"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA19","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-178603425"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"NA","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"AL","system":"https://www.usps.com"}}],"id":"dual--178603425","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA19"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-10-23"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA19","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-200194347"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"C","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--200194347","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA06"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA06","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-200194347"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"08","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WI","system":"https://www.usps.com"}}],"id":"dual--200194347","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA06"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-10-05"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA06","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-200387895"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0009"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-06"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-EMPLR-SBSDY-SW","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-EMPLR-SBSDY-SW"}}],"id":"part-c--200387895-Z0009--06","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA69"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2020-07-08"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA69","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-200387895"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"99","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"VT","system":"https://www.usps.com"}}],"id":"dual--200387895","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA69"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-10-06"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA69","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-200768924"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"S","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--200768924","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA51"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-04-15"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA51","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-200768924"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0007"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-03"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}}],"id":"part-c--200768924-Z0007--03","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA51"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2018-03-15"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA51","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-200768924"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"02","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WA","system":"https://www.usps.com"}}],"id":"dual--200768924","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA51"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-12-01"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA51","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-21647523"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"05","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WA","system":"https://www.usps.com"}}],"id":"dual--21647523","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA02"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-01-17"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA02","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-240800387"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"T","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"40","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--240800387","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA59"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-12-05"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA59","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-240800387"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"40","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--240800387","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA59"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-12-05"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA59","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-240882660"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"L","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--240882660","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA73"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-10-26"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA73","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-240882660"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--240882660","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA73"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-10-26"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA73","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-243626882"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"Z","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"T","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--243626882","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA67"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA67","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-243626882"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"99","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"VA","system":"https://www.usps.com"}}],"id":"dual--243626882","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA67"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-11-26"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA67","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-246579915"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"C","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--246579915","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA23"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-11-11"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA23","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-246579915"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0003"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-03"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}}],"id":"part-c--246579915-Z0003--03","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA23"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2018-07-30"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA23","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-246579915"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"XX","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"AL","system":"https://www.usps.com"}}],"id":"dual--246579915","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA23"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-07-14"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA23","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-258439927"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"40","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--258439927","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA94"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-04-30"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA94","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-258439927"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0006"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-06"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}}],"id":"part-c--258439927-Z0006--06","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA94"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2018-06-24"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA94","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-258439927"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"01","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"TN","system":"https://www.usps.com"}}],"id":"dual--258439927","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA94"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-08-09"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA94","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-258734153"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"01","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WI","system":"https://www.usps.com"}}],"id":"dual--258734153","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA46"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-08-04"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA46","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-263885414"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"G","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--263885414","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA72"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA72","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-263885414"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"05","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"TX","system":"https://www.usps.com"}}],"id":"dual--263885414","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA72"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-09-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA72","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-264549187"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"K","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--264549187","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA33"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-05-04"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA33","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-264549187"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"G","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--264549187","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA33"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-05-04"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA33","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-298122029"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"E","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--298122029","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA45"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-06-21"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA45","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-298122029"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"E","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"S","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--298122029","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA45"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-06-21"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA45","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-298122029"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"09","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WV","system":"https://www.usps.com"}}],"id":"dual--298122029","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA45"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-08-10"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA45","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-320948260"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0010"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-03"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-EMPLR-SBSDY-SW","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-EMPLR-SBSDY-SW"}}],"id":"part-c--320948260-Z0010--03","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA15"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2017-11-16"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA15","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-324078275"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"J","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"40","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--324078275","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA88"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-05-18"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA88","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-324078275"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"I","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"40","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--324078275","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA88"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-05-18"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA88","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-345288238"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"R","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--345288238","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA93"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-11-18"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA93","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-345288238"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"04","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"UT","system":"https://www.usps.com"}}],"id":"dual--345288238","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA93"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-12-17"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA93","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-348529270"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"A","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"I","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--348529270","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA37"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-12-13"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA37","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-362113984"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"C","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"C","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"40","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--362113984","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA64"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-07-26"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA64","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-362753419"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--362753419","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA82"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA82","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-386762730"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"A","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"S","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--386762730","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA43"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA43","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-386762730"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"A","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"L","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--386762730","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA43"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA43","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-394390767"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0006"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-03"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-EMPLR-SBSDY-SW","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-EMPLR-SBSDY-SW"}}],"id":"part-c--394390767-Z0006--03","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA18"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2018-09-26"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA18","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-394390767"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"07","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WI","system":"https://www.usps.com"}}],"id":"dual--394390767","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA18"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-09-18"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA18","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-416159765"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0010"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-01"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-EMPLR-SBSDY-SW","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-EMPLR-SBSDY-SW"}}],"id":"part-c--416159765-Z0010--01","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA49"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2017-10-14"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA49","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-416679894"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"G","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--416679894","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA91"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-01-02"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA91","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-416679894"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"G","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--416679894","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA91"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-01-02"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA91","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-416679894"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0004"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-08"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}}],"id":"part-c--416679894-Z0004--08","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA91"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2020-01-12"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA91","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-420785726"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"G","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--420785726","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA01"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA01","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-420785726"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--420785726","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA01"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA01","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-420785726"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"99","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WA","system":"https://www.usps.com"}}],"id":"dual--420785726","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA01"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-07-27"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA01","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-454620068"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"I","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--454620068","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA87"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2022-07-12"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA87","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-454620068"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0006"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-07"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}}],"id":"part-c--454620068-Z0006--07","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA87"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2020-12-15"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA87","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-45619581"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"A","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--45619581","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA75"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-04-27"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA75","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-459727685"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"H","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"Q","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--459727685","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA68"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA68","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-459727685"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"H","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"M","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--459727685","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA68"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA68","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-459727685"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0007"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-04"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}}],"id":"part-c--459727685-Z0007--04","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA68"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2020-03-28"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA68","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-475710986"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"Z","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"40","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--475710986","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA74"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-07-21"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA74","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-475710986"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"Z","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"40","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--475710986","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA74"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-07-21"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA74","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-477573525"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"A","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"A","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--477573525","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA60"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-07-24"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA60","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-477573525"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"02","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"VA","system":"https://www.usps.com"}}],"id":"dual--477573525","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA60"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-05-09"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA60","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-47888500"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"H","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--47888500","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA99"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-03-14"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA99","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-47888500"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"H","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--47888500","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA99"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-03-14"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA99","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-47888500"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0005"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-10"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-EMPLR-SBSDY-SW","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-EMPLR-SBSDY-SW"}}],"id":"part-c--47888500-Z0005--10","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA99"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2017-06-15"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA99","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-494704475"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"A","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"C","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--494704475","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA79"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2022-04-10"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA79","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-494704475"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0002"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-04"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}}],"id":"part-c--494704475-Z0002--04","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA79"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2020-06-06"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA79","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-494704475"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"08","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"VT","system":"https://www.usps.com"}}],"id":"dual--494704475","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA79"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-04-27"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA79","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-500896242"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--500896242","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA08"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-07-17"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA08","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-500896242"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"C","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--500896242","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA08"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-07-17"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA08","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-507931550"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0006"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-07"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-EMPLR-SBSDY-SW","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-EMPLR-SBSDY-SW"}}],"id":"part-c--507931550-Z0006--07","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA34"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2019-05-10"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA34","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-522389272"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--522389272","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA21"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-08-03"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA21","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-534362032"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"Q","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--534362032","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA80"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-10-18"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA80","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-542761072"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"M","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--542761072","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA53"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-10-18"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA53","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-542761072"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"H","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--542761072","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA53"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-10-18"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA53","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-551652608"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"G","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"L","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--551652608","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA57"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-08-07"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA57","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-551652608"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"G","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--551652608","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA57"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-08-07"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA57","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-551652608"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"04","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WI","system":"https://www.usps.com"}}],"id":"dual--551652608","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA57"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-11-20"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA57","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-55693914"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--55693914","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA55"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-08-31"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA55","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-55693914"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"C","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--55693914","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA55"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-08-31"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA55","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-55693914"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"01","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"VA","system":"https://www.usps.com"}}],"id":"dual--55693914","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA55"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-03-01"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA55","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-56606144"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0008"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-04"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-EMPLR-SBSDY-SW","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-EMPLR-SBSDY-SW"}}],"id":"part-c--56606144-Z0008--04","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA61"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2019-01-17"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA61","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-56606144"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"02","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WA","system":"https://www.usps.com"}}],"id":"dual--56606144","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA61"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-09-02"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA61","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-585048497"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--585048497","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA31"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2022-01-12"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA31","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-585048497"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"H","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--585048497","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA31"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2022-01-12"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA31","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-585048497"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0009"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-04"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}}],"id":"part-c--585048497-Z0009--04","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA31"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2018-10-13"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA31","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-587709513"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"E","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--587709513","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA81"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-08-19"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA81","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-622811584"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"00","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WA","system":"https://www.usps.com"}}],"id":"dual--622811584","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA77"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-10-31"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA77","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-626628570"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--626628570","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA10"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA10","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-626628570"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"S","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--626628570","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA10"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA10","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-626628570"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"00","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WI","system":"https://www.usps.com"}}],"id":"dual--626628570","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA10"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-04-07"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA10","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-642228824"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"Z","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--642228824","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA44"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA44","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-659118534"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"H","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"G","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--659118534","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA97"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA97","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-659118534"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0003"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-01"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-EMPLR-SBSDY-SW","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-EMPLR-SBSDY-SW"}}],"id":"part-c--659118534-Z0003--01","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA97"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2018-05-27"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA97","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-661174964"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"*","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WV","system":"https://www.usps.com"}}],"id":"dual--661174964","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA13"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-10-07"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA13","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-675988553"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"Z","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"S","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--675988553","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA76"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA76","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-681615605"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"G","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"I","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--681615605","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA50"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2022-07-15"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA50","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-681615605"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"G","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"L","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--681615605","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA50"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2022-07-15"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA50","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-681615605"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WA","system":"https://www.usps.com"}}],"id":"dual--681615605","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA50"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-08-16"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA50","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-709926632"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--709926632","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA24"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA24","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-709926632"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"L","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--709926632","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA24"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA24","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-738011578"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"C","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--738011578","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA12"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-11-14"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA12","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-738011578"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--738011578","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA12"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-11-14"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA12","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-738011578"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"05","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"VA","system":"https://www.usps.com"}}],"id":"dual--738011578","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA12"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-04-24"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA12","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-752844366"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--752844366","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA96"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-11-02"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA96","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-770561152"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"I","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--770561152","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA03"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-10-20"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA03","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-770561152"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--770561152","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA03"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-10-20"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA03","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-777906181"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"02","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"VT","system":"https://www.usps.com"}}],"id":"dual--777906181","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA86"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-04-30"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA86","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-793523402"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"H","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--793523402","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA22"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-10-15"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA22","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-793523402"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"H","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"L","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--793523402","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA22"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-10-15"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA22","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-793523402"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0008"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-01"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-EMPLR-SBSDY-SW","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-EMPLR-SBSDY-SW"}}],"id":"part-c--793523402-Z0008--01","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA22"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2019-10-18"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA22","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-793523402"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"02","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WA","system":"https://www.usps.com"}}],"id":"dual--793523402","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA22"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-06-16"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA22","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-819347015"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"G","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"A","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"40","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--819347015","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA07"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-08-07"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA07","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-819347015"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"G","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"J","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"40","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--819347015","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA07"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-08-07"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA07","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-845947213"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"R","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--845947213","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA54"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-10-23"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA54","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-845947213"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"T","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--845947213","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA54"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-10-23"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA54","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-845978600"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"C","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--845978600","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA40"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA40","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-847612755"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"T","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--847612755","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA25"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-06-02"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA25","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-847612755"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--847612755","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA25"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-06-02"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA25","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-847612755"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0005"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-05"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-EMPLR-SBSDY-SW","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-EMPLR-SBSDY-SW"}}],"id":"part-c--847612755-Z0005--05","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA25"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2018-09-11"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA25","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-857375460"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"G","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--857375460","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA84"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-10-25"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA84","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-857375460"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"G","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--857375460","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA84"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-10-25"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA84","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-859711865"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"A","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--859711865","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA41"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA41","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-859711865"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0001"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-03"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}}],"id":"part-c--859711865-Z0001--03","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA41"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2020-02-04"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA41","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-859711865"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"00","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WV","system":"https://www.usps.com"}}],"id":"dual--859711865","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA41"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-05-02"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA41","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-861361891"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"99","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WA","system":"https://www.usps.com"}}],"id":"dual--861361891","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA09"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-08-27"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA09","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-863957841"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"DC","system":"https://www.usps.com"}}],"id":"dual--863957841","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA28"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-02-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA28","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-869021600"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"~","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WV","system":"https://www.usps.com"}}],"id":"dual--869021600","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA32"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-08-26"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA32","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-878302869"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--878302869","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA27"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-11-08"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA27","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-878302869"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"L","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--878302869","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA27"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-11-08"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA27","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-902815672"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"H","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--902815672","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA04"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-08-09"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA04","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-902815672"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0002"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-03"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-EMPLR-SBSDY-SW","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-EMPLR-SBSDY-SW"}}],"id":"part-c--902815672-Z0002--03","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA04"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2018-06-02"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA04","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-902815672"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"03","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"VT","system":"https://www.usps.com"}}],"id":"dual--902815672","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA04"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-10-16"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA04","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-913548538"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"K","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"10","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--913548538","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA35"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2022-09-15"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA35","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-929323878"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"M","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"J","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--929323878","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA48"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2021-03-10"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA48","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-929323878"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"M","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--929323878","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA48"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2021-03-10"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA48","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-944764972"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"C","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--944764972","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA05"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-08-15"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA05","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-944764972"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"C","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"H","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--944764972","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA05"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-08-15"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA05","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-947604234"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--947604234","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA95"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2022-02-10"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA95","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-947604234"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"21","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--947604234","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA95"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2022-02-10"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA95","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-947604234"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0006"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-10"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-EMPLR-SBSDY-SW","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-EMPLR-SBSDY-SW"}}],"id":"part-c--947604234-Z0006--10","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA95"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.842+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2019-04-16"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA95","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-952977879"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"Z","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"2","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--952977879","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA47"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2020-03-12"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA47","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-954433360"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"G","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"20","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--954433360","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA29"}],"meta":{"lastUpdated":"2026-03-05T21:06:22.486+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-07-06"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA29","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-954433360"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"~","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WI","system":"https://www.usps.com"}}],"id":"dual--954433360","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA29"}],"meta":{"lastUpdated":"2026-03-05T21:06:22.486+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-05-09"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA29","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-958082072"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"E","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"G","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--958082072","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA39"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA39","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-958082072"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"E","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"S","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"11","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--958082072","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA39"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA39","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-964357008"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"07","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"VT","system":"https://www.usps.com"}}],"id":"dual--964357008","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA17"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-11-19"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA17","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-968015063"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"F","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"M","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--968015063","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA85"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2018-08-05"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA85","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-969575907"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"Z","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--969575907","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA16"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA16","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-969575907"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"Z","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"S","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"0","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--969575907","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA16"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"end":"2025-01-28","start":"2024-01-29"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"cancelled","subscriberId":"1S00E00AA16","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-971456425"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"C","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"Q","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"1","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--971456425","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA89"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-03-20"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA89","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-972536170"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part C"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CNTRCT-NUM","valueString":"Z0004"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-PBP-NUM","valueString":"-04"},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-CVRG-TYPE-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-CVRG-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-EMPLR-SBSDY-SW","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-EMPLR-SBSDY-SW"}}],"id":"part-c--972536170-Z0004--04","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA30"}],"meta":{"lastUpdated":"2026-03-05T21:06:22.486+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"period":{"start":"2019-11-30"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA30","type":{"coding":[{"code":"11","display":"MEDICARE MANAGED CARE (Includes Medicare Advantage Plans)","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-972536170"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"00","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"U","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"WY","system":"https://www.usps.com"}}],"id":"dual--972536170","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA30"}],"meta":{"lastUpdated":"2026-03-05T21:06:22.486+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2019-07-21"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA30","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-979434278"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part A"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"D","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-a--979434278","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA66"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2021-03-12"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA66","type":{"coding":[{"code":"1","display":"MEDICARE","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-979434278"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Part B"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-BUYIN-CD","valueCoding":{"code":"B","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-BUYIN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ENRLMT-RSN-CD","valueCoding":{"code":"C","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ENRLMT-RSN-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-STUS-CD","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-STUS-CD","valueCoding":{"code":"31","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-ESRD-STUS-ID","valueCoding":{"code":"Y","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-ESRD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DSBLD-STUS-ID","valueCoding":{"code":"N","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DSBLD-STUS-ID"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-MDCR-ENTLMT-RSN-CD","valueCoding":{"code":"3","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-MDCR-ENTLMT-RSN-CD"}}],"id":"part-b--979434278","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA66"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.945+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2021-03-12"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA66","type":{"coding":[{"code":"121","display":"MEDICARE FFS","system":"https://nahdo.org/sopt"}]}}
|
||||
{"beneficiary":{"reference":"Patient/-979434278"},"class":[{"type":{"coding":[{"code":"plan","system":"http://terminology.hl7.org/CodeSystem/coverage-class"}]},"value":"Dual Medicare/Medicaid"}],"contained":[{"active":true,"contact":[{"purpose":{"coding":[{"code":"PATINF","display":"Patient","system":"http://terminology.hl7.org/CodeSystem/contactentity-type"}]},"telecom":[{"system":"phone","value":"1-800-633-4227"},{"system":"phone","value":"TTY: 1-877-486-2048"},{"system":"url","value":"www.medicare.gov"}]}],"id":"cms-org","meta":{"profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization|2.2.0"]},"name":"Centers for Medicare and Medicaid Services","resourceType":"Organization"}],"extension":[{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-STUS-CD","valueCoding":{"code":"01","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-STUS-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/BENE-DUAL-TYPE-CD","valueCoding":{"code":"P","system":"https://bluebutton.cms.gov/fhir/CodeSystem/BENE-DUAL-TYPE-CD"}},{"url":"https://bluebutton.cms.gov/fhir/StructureDefinition/MEDICAID-STATE-CD","valueCoding":{"code":"AL","system":"https://www.usps.com"}}],"id":"dual--979434278","identifier":[{"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA66"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.958+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Coverage|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-coverage|7.0.0"]},"payor":[{"reference":"#cms-org"}],"period":{"start":"2017-08-19"},"relationship":{"coding":[{"code":"self","display":"Self","system":"http://terminology.hl7.org/CodeSystem/subscriber-relationship"}]},"resourceType":"Coverage","status":"active","subscriberId":"1S00E00AA66","type":{"coding":[{"code":"14","display":"Dual Eligibility Medicare/Medicaid Organization","system":"https://nahdo.org/sopt"}]}}
|
||||
269
dev/vendor/bcda-site/v3_ExplanationOfBenefit.ndjson
vendored
Normal file
269
dev/vendor/bcda-site/v3_ExplanationOfBenefit.ndjson
vendored
Normal file
File diff suppressed because one or more lines are too long
94
dev/vendor/bcda-site/v3_Patient.ndjson
vendored
Normal file
94
dev/vendor/bcda-site/v3_Patient.ndjson
vendored
Normal file
@@ -0,0 +1,94 @@
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1936-11-26","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"1002-5","display":"American Indian or Alaska Native","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"American Indian or Alaska Native"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-101021696","identifier":[{"period":{"start":"2018-11-15T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA71"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Erdapfel","given":["Kartoffel"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1949-06-29","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-108727054","identifier":[{"period":{"start":"2019-05-13T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA52"},{"period":{"end":"2019-05-12T00:00:00+00:00","start":"2018-08-12T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1ZF7YV2JY91"},{"period":{"end":"2018-08-11T00:00:00+00:00","start":"2018-05-24T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"6ZR2YK8GT78"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Heeler","given":["Bluey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1937-08-12","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"deceasedDateTime":"2023-04-19","extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-123654140","identifier":[{"period":{"start":"2017-06-26T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA90"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Bingo","Joey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1968-10-31","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-129897709","identifier":[{"period":{"start":"2019-07-20T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA63"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Heeler","given":["Elmo","Alex"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1912-02-10","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-140997345","identifier":[{"period":{"start":"2017-12-07T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA26"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Jones","given":["Bandit","Bandit"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1962-03-29","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-144940522","identifier":[{"period":{"start":"2018-08-22T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA20"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Jones","given":["Joey","Le Petit Prince"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1929-12-15","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-151627122","identifier":[{"period":{"start":"2020-03-28T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00FZ00"}],"link":[{"other":{"display":"-107649950","reference":"Patient/-107649950"},"type":"replaces"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Kartoffel","Joey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"36609","state":"AL"}],"birthDate":"1939-10-14","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2131-1","display":"Other Race","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Other Race"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-162240675","identifier":[{"period":{"start":"2022-06-20T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA38"},{"period":{"end":"2022-06-19T00:00:00+00:00","start":"2020-02-29T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"4OK8DA0NA89"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Abby","Elmo"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"36609","state":"AL"}],"birthDate":"1929-02-07","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2054-5","display":"Black or African American","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Black or African American"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-163635755","identifier":[{"period":{"start":"2020-12-08T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA65"}],"link":[{"other":{"display":"-358336552","reference":"Patient/-358336552"},"type":"replaces"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Erdapfel","given":["Snuffleupagus"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"36609","state":"AL"}],"birthDate":"1961-05-22","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-175163570","identifier":[{"period":{"start":"2022-06-30T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA83"},{"period":{"end":"2022-06-29T00:00:00+00:00","start":"2019-07-19T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"6BD5F34ER82"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Joey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"36609","state":"AL"}],"birthDate":"1980-04-03","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2135-2","display":"Hispanic or Latino","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Hispanic or Latino"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity"}],"gender":"female","id":"-178603425","identifier":[{"period":{"start":"2020-03-05T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA19"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Joey","Kartoffel"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1951-10-07","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"1002-5","display":"American Indian or Alaska Native","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"American Indian or Alaska Native"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-200194347","identifier":[{"period":{"start":"2021-03-30T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA06"},{"period":{"end":"2021-03-29T00:00:00+00:00","start":"2020-09-25T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"2BX7MA1WT55"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Caroline"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1922-06-09","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-200387895","identifier":[{"period":{"start":"2018-07-10T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA69"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Erdapfel","given":["Joey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"36609","state":"AL"}],"birthDate":"1953-06-21","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-200768924","identifier":[{"period":{"start":"2019-04-15T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA51"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Jones","given":["Frankie"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"02351","state":"MA"}],"birthDate":"1957-11-09","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-21647523","identifier":[{"period":{"start":"2020-12-12T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA02"},{"period":{"end":"2020-12-11T00:00:00+00:00","start":"2020-05-03T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"5OA3YY6XR95"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Jones","given":["Elmo"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1929-06-03","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2054-5","display":"Black or African American","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Black or African American"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-240800387","identifier":[{"period":{"start":"2019-12-05T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA59"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Kartoffel"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1914-02-11","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"1002-5","display":"American Indian or Alaska Native","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"American Indian or Alaska Native"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-240882660","identifier":[{"period":{"start":"2017-10-26T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA73"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Jones","given":["Bluey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1967-03-23","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2028-9","display":"Asian","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Asian"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-243626882","identifier":[{"period":{"start":"2020-11-17T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA67"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Sheep","given":["Bluey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"36609","state":"AL"}],"birthDate":"1976-11-21","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-246579915","identifier":[{"period":{"start":"2018-11-11T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA23"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Bluey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1931-08-06","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-258439927","identifier":[{"period":{"start":"2019-04-30T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA94"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Jones","given":["Abby","Joey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"02351","state":"MA"}],"birthDate":"1944-03-12","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2054-5","display":"Black or African American","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Black or African American"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-258734153","identifier":[{"period":{"start":"2018-03-10T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA46"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Erdapfel","given":["Le Petit Prince"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"02351","state":"MA"}],"birthDate":"1952-08-19","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-263885414","identifier":[{"period":{"start":"2020-02-24T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA72"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Heeler","given":["Bingo","Elmo"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1980-11-15","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2028-9","display":"Asian","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Asian"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-264549187","identifier":[{"period":{"start":"2019-05-04T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA33"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Heeler","given":["Joey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"02351","state":"MA"}],"birthDate":"1921-08-29","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2131-1","display":"Other Race","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Other Race"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-298122029","identifier":[{"period":{"start":"2019-06-21T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA45"},{"period":{"end":"2019-06-20T00:00:00+00:00","start":"2019-02-04T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"3BU9P56QR45"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Caroline"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1955-10-20","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2054-5","display":"Black or African American","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Black or African American"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-320948260","identifier":[{"period":{"start":"2018-06-09T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA15"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Jones","given":["Bluey","Joey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1971-02-28","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-324078275","identifier":[{"period":{"start":"2020-05-18T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA88"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Heeler","given":["Elmo","Bandit"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1959-01-30","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-345288238","identifier":[{"period":{"start":"2017-10-26T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA93"},{"period":{"end":"2019-11-17T00:00:00+00:00","start":"2017-06-27T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1LN1MC0GJ42"}],"link":[{"other":{"display":"-861755700","reference":"Patient/-861755700"},"type":"replaces"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Kartoffel"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1912-12-29","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2028-9","display":"Asian","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Asian"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-348529270","identifier":[{"period":{"start":"2020-12-13T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA37"},{"period":{"end":"2020-12-12T00:00:00+00:00","start":"2019-05-28T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"3BA6K69GK63"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Alex","Caroline"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1912-03-15","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2106-3","display":"White","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"White"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-362113984","identifier":[{"period":{"start":"2018-07-26T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA64"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Sheep","given":["Bingo","Caroline"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"36609","state":"AL"}],"birthDate":"1968-05-19","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2106-3","display":"White","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"White"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-362753419","identifier":[{"period":{"start":"2017-06-19T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA82"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Sheep","given":["Abby"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"36609","state":"AL"}],"birthDate":"1962-07-04","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2135-2","display":"Hispanic or Latino","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Hispanic or Latino"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity"}],"gender":"female","id":"-386762730","identifier":[{"period":{"start":"2022-09-25T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA43"},{"period":{"end":"2022-09-24T00:00:00+00:00","start":"2021-02-16T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"2ZT1RX3MN58"},{"period":{"end":"2020-02-20T00:00:00+00:00","start":"2019-12-24T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"4BG4DE7VD50"},{"period":{"end":"2021-02-15T00:00:00+00:00","start":"2020-02-21T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"4OQ2CN0PH75"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Bandit"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"36609","state":"AL"}],"birthDate":"1980-01-14","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-394390767","identifier":[{"period":{"start":"2018-06-13T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA18"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Heeler","given":["Bluey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1967-01-27","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"deceasedDateTime":"2022-11-03","extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-399034381","identifier":[{"period":{"start":"2020-06-06T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA11"},{"period":{"end":"2020-06-05T00:00:00+00:00","start":"2018-02-10T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"7O13DJ5JE25"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Kartoffel"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"02351","state":"MA"}],"birthDate":"1967-02-07","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2054-5","display":"Black or African American","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Black or African American"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-416159765","identifier":[{"period":{"start":"2018-12-14T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA49"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Heeler","given":["Snuffleupagus","Abby"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1969-09-27","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2135-2","display":"Hispanic or Latino","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Hispanic or Latino"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity"}],"gender":"male","id":"-416679894","identifier":[{"period":{"start":"2019-01-02T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA91"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Abby","Frankie"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"02351","state":"MA"}],"birthDate":"1944-08-26","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2028-9","display":"Asian","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Asian"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-420785726","identifier":[{"period":{"start":"2017-09-18T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA01"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Erdapfel","given":["Kartoffel"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1951-06-04","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"1002-5","display":"American Indian or Alaska Native","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"American Indian or Alaska Native"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-454620068","identifier":[{"period":{"start":"2022-07-12T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA87"},{"period":{"end":"2022-07-11T00:00:00+00:00","start":"2019-06-16T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"5LJ7UN9RC83"},{"period":{"end":"2019-06-15T00:00:00+00:00","start":"2019-05-16T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"9IR5NJ0MY71"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Heeler","given":["Bingo","Bingo"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1916-03-08","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-45619581","identifier":[{"period":{"start":"2019-04-27T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA75"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Jones","given":["Elmo","Elmo"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"02351","state":"MA"}],"birthDate":"1930-04-07","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"deceasedDateTime":"2023-07-22","extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-459727685","identifier":[{"period":{"start":"2019-08-15T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA68"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Abby","Bingo"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"02351","state":"MA"}],"birthDate":"1975-10-29","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-475710986","identifier":[{"period":{"start":"2017-07-21T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA74"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Bingo"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1933-05-18","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-477573525","identifier":[{"period":{"start":"2017-07-24T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA60"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Frankie","Bluey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1945-08-09","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2054-5","display":"Black or African American","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Black or African American"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-47888500","identifier":[{"period":{"start":"2020-03-14T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA99"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Sheep","given":["Abby","Bluey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1945-01-20","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"deceasedDateTime":"2024-01-04","extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2131-1","display":"Other Race","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Other Race"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-494704475","identifier":[{"period":{"start":"2022-04-10T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA79"},{"period":{"end":"2022-04-09T00:00:00+00:00","start":"2021-11-18T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"8OC9H05GU94"},{"period":{"end":"2021-11-17T00:00:00+00:00","start":"2020-11-17T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"9LP2RR2NX62"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Bluey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1969-06-22","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-500896242","identifier":[{"period":{"start":"2018-07-17T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA08"},{"period":{"end":"2018-07-16T00:00:00+00:00","start":"2017-09-16T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"2BU0PW5TX16"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Jones","given":["Chilli","Elmo"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1978-05-21","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2135-2","display":"Hispanic or Latino","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Hispanic or Latino"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity"}],"gender":"female","id":"-507931550","identifier":[{"period":{"start":"2020-12-06T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA34"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Snuffleupagus","Abby"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1959-07-07","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-522389272","identifier":[{"period":{"start":"2020-08-03T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA21"},{"period":{"end":"2020-08-02T00:00:00+00:00","start":"2019-04-03T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"9IU0JH3GU90"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Erdapfel","given":["Frankie"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1971-02-16","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-534362032","identifier":[{"period":{"start":"2018-10-18T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA80"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Abby"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1957-03-22","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2106-3","display":"White","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"White"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-542761072","identifier":[{"period":{"start":"2018-10-18T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA53"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Frankie"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1949-11-16","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-551652608","identifier":[{"period":{"start":"2020-08-07T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA57"},{"period":{"end":"2020-08-06T00:00:00+00:00","start":"2019-08-09T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"5OY7E56RM98"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Erdapfel","given":["Kartoffel"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1971-01-02","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-55693914","identifier":[{"period":{"start":"2017-08-31T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA55"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Elmo"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1954-08-18","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"1002-5","display":"American Indian or Alaska Native","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"American Indian or Alaska Native"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-56606144","identifier":[{"period":{"start":"2018-12-13T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA61"},{"period":{"end":"2018-12-12T00:00:00+00:00","start":"2017-06-28T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"4BQ2AV0QA30"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Bandit"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"02351","state":"MA"}],"birthDate":"1977-08-04","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"1002-5","display":"American Indian or Alaska Native","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"American Indian or Alaska Native"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-585048497","identifier":[{"period":{"start":"2022-01-12T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA31"},{"period":{"end":"2022-01-11T00:00:00+00:00","start":"2020-04-28T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"5LG0Y96UT01"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Kartoffel","Bingo"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"36609","state":"AL"}],"birthDate":"1961-05-23","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2135-2","display":"Hispanic or Latino","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Hispanic or Latino"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity"}],"gender":"female","id":"-587709513","identifier":[{"period":{"start":"2018-08-19T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA81"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Erdapfel","given":["Alex","Bluey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1932-12-02","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2131-1","display":"Other Race","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Other Race"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-622811584","identifier":[{"period":{"start":"2021-07-02T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA77"},{"period":{"end":"2021-07-01T00:00:00+00:00","start":"2017-11-26T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"2IA6DR7TJ99"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Kartoffel"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"02351","state":"MA"}],"birthDate":"1951-06-28","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"1002-5","display":"American Indian or Alaska Native","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"American Indian or Alaska Native"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-626628570","identifier":[{"period":{"start":"2019-03-09T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA10"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Joey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"36609","state":"AL"}],"birthDate":"1963-02-08","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"1002-5","display":"American Indian or Alaska Native","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"American Indian or Alaska Native"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-642228824","identifier":[{"period":{"start":"2019-07-06T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA44"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Heeler","given":["Le Petit Prince"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"02351","state":"MA"}],"birthDate":"1951-05-04","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-659118534","identifier":[{"period":{"start":"2019-01-05T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA97"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Abby","Bluey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"02351","state":"MA"}],"birthDate":"1969-11-14","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2054-5","display":"Black or African American","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Black or African American"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-661174964","identifier":[{"period":{"start":"2019-02-05T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA13"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Jones","given":["Frankie","Chilli"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"02351","state":"MA"}],"birthDate":"1916-07-11","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2131-1","display":"Other Race","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Other Race"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-6754317","identifier":[{"period":{"start":"2018-04-17T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA98"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Sheep","given":["Snuffleupagus"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1978-06-18","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-675988553","identifier":[{"period":{"start":"2018-01-10T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA76"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Heeler","given":["Chilli","Bandit"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1942-07-18","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-681615605","identifier":[{"period":{"end":"2022-07-14T00:00:00+00:00","start":"2018-06-16T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1OH6NW6RG80"},{"period":{"start":"2022-07-15T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA50"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Snuffleupagus","Frankie"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1944-09-05","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2135-2","display":"Hispanic or Latino","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Hispanic or Latino"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity"}],"gender":"female","id":"-709926632","identifier":[{"period":{"end":"2020-10-12T00:00:00+00:00","start":"2017-10-29T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1L40JH9DJ85"},{"period":{"start":"2020-10-13T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA24"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Bingo","Chilli"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1963-08-12","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2106-3","display":"White","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"White"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-738011578","identifier":[{"period":{"start":"2020-11-14T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA12"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Bingo"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"36609","state":"AL"}],"birthDate":"1939-11-02","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-740290444","identifier":[{"period":{"start":"2021-08-06T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA58"},{"period":{"end":"2021-08-05T00:00:00+00:00","start":"2021-01-10T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"4BC7A61EA95"},{"period":{"end":"2021-01-09T00:00:00+00:00","start":"2017-06-19T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"9I84AE9EG14"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Sheep","given":["Kartoffel"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1968-09-27","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-752844366","identifier":[{"period":{"start":"2018-11-02T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA96"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Heeler","given":["Kartoffel"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1965-05-25","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2131-1","display":"Other Race","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Other Race"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-770561152","identifier":[{"period":{"start":"2020-10-20T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA03"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Chilli"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1936-02-14","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2054-5","display":"Black or African American","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Black or African American"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-777906181","identifier":[{"period":{"start":"2022-10-14T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA86"},{"period":{"end":"2022-10-13T00:00:00+00:00","start":"2019-01-29T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1Z86YD9EA33"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Frankie","Alex"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1948-03-06","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-793523402","identifier":[{"period":{"start":"2018-10-15T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA22"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Bingo"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1929-08-05","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2054-5","display":"Black or African American","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Black or African American"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-819347015","identifier":[{"period":{"start":"2017-08-07T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA07"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Bingo","Alex"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"36609","state":"AL"}],"birthDate":"1924-07-22","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-845947213","identifier":[{"period":{"start":"2020-10-23T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA54"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Abby","Abby"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1965-10-13","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2054-5","display":"Black or African American","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Black or African American"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-845978600","identifier":[{"period":{"start":"2019-11-07T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA40"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Jones","given":["Elmo","Caroline"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1913-04-04","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-847612755","identifier":[{"period":{"start":"2018-06-02T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA25"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Bandit","Alex"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1919-03-12","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-857375460","identifier":[{"period":{"start":"2017-10-25T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA84"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Heeler","given":["Le Petit Prince","Joey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1975-11-21","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2054-5","display":"Black or African American","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Black or African American"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-859711865","identifier":[{"period":{"start":"2018-08-13T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA41"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Heeler","given":["Abby","Frankie"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1926-10-28","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2135-2","display":"Hispanic or Latino","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Hispanic or Latino"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity"}],"gender":"male","id":"-861361891","identifier":[{"period":{"start":"2017-11-05T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA09"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Sheep","given":["Bandit","Abby"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"02351","state":"MA"}],"birthDate":"1957-01-03","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-861591623","identifier":[{"period":{"start":"2018-06-28T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA56"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Sheep","given":["Chilli"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1936-04-27","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-863957841","identifier":[{"period":{"start":"2019-03-30T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA28"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Sheep","given":["Joey","Caroline"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"36609","state":"AL"}],"birthDate":"1919-06-19","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-869021600","identifier":[{"period":{"start":"2022-10-27T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA32"},{"period":{"end":"2022-10-26T00:00:00+00:00","start":"2020-10-09T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"8B02YY3GG70"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Jones","given":["Elmo"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"36609","state":"AL"}],"birthDate":"1975-06-19","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2135-2","display":"Hispanic or Latino","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Hispanic or Latino"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity"}],"gender":"male","id":"-878302869","identifier":[{"period":{"start":"2020-11-08T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA27"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Jones","given":["Snuffleupagus"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1960-03-24","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2106-3","display":"White","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"White"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-896819556","identifier":[{"period":{"start":"2021-02-04T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA62"},{"period":{"end":"2021-02-03T00:00:00+00:00","start":"2019-12-25T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"2B03MM0VC63"},{"period":{"end":"2019-12-24T00:00:00+00:00","start":"2017-12-21T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"5LP3T74KD68"},{"period":{"end":"2017-12-20T00:00:00+00:00","start":"2017-10-28T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"9BU2H70QC49"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Bandit"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1949-01-01","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2054-5","display":"Black or African American","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Black or African American"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-902815672","identifier":[{"period":{"start":"2019-08-09T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA04"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Heeler","given":["Frankie","Snuffleupagus"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1934-04-05","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"1002-5","display":"American Indian or Alaska Native","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"American Indian or Alaska Native"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-913548538","identifier":[{"period":{"start":"2022-09-15T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA35"},{"period":{"end":"2022-09-14T00:00:00+00:00","start":"2021-08-22T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"6I86CP4QE48"},{"period":{"end":"2021-08-21T00:00:00+00:00","start":"2018-08-22T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"6O83JQ8YC93"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Jones","given":["Le Petit Prince","Frankie"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"02351","state":"MA"}],"birthDate":"1911-05-23","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2054-5","display":"Black or African American","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Black or African American"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-929323878","identifier":[{"period":{"start":"2021-03-10T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA48"},{"period":{"end":"2021-03-08T00:00:00+00:00","start":"2019-01-12T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"4IP6ME9VF06"},{"period":{"end":"2021-03-09T00:00:00+00:00","start":"2021-03-09T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"5LJ8EU4AF24"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Erdapfel","given":["Elmo","Snuffleupagus"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1971-10-06","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-944764972","identifier":[{"period":{"start":"2020-08-15T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA05"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Elmo","Joey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1980-10-20","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"1002-5","display":"American Indian or Alaska Native","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"American Indian or Alaska Native"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-947604234","identifier":[{"period":{"start":"2022-02-10T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA95"},{"period":{"end":"2022-02-09T00:00:00+00:00","start":"2021-06-19T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"8Z41RA1FA35"},{"period":{"end":"2021-06-18T00:00:00+00:00","start":"2019-11-28T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"9IF0XA2UG80"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Elmo","Bluey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1941-10-06","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-952977879","identifier":[{"period":{"start":"2020-03-12T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA47"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Alex","Bandit"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1926-09-03","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"deceasedDateTime":"2022-04-08","extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-954433360","identifier":[{"period":{"start":"2018-07-06T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA29"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.759+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Coffee","given":["Alex"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1925-04-03","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-958082072","identifier":[{"period":{"start":"2019-12-06T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA39"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Jones","given":["Chilli"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"02351","state":"MA"}],"birthDate":"1916-09-19","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-964357008","identifier":[{"period":{"start":"2020-05-01T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA17"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Sheep","given":["Frankie","Bluey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"58054","state":"ND"}],"birthDate":"1946-07-26","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2054-5","display":"Black or African American","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Black or African American"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-968015063","identifier":[{"period":{"start":"2018-08-05T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA85"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Smith","given":["Bingo","Bluey"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77551","state":"TX"}],"birthDate":"1953-03-30","communication":[{"language":{"coding":[{"code":"unknown","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2054-5","display":"Black or African American","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Black or African American"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-969575907","identifier":[{"period":{"start":"2022-07-01T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA16"},{"period":{"end":"2022-06-30T00:00:00+00:00","start":"2021-07-15T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"4ON9XM2VV52"},{"period":{"end":"2021-07-14T00:00:00+00:00","start":"2018-12-11T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"6BQ5R71DX72"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Sheep","given":["Snuffleupagus"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"36609","state":"AL"}],"birthDate":"1918-12-28","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2131-1","display":"Other Race","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Other Race"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-971456425","identifier":[{"period":{"start":"2019-03-20T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA89"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Erdapfel","given":["Elmo","Kartoffel"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1964-09-06","communication":[{"language":{"coding":[{"code":"en","system":"urn:ietf:bcp:47"}]}}],"deceasedDateTime":"2022-06-20","extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248153007"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"2131-1","display":"Other Race","system":"urn:oid:2.16.840.1.113883.6.238"}},{"url":"text","valueString":"Other Race"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"male","id":"-972536170","identifier":[{"period":{"start":"2017-05-29T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA30"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.759+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Heeler","given":["Caroline","Abby"]}],"resourceType":"Patient"}
|
||||
{"address":[{"postalCode":"77550","state":"TX"}],"birthDate":"1950-02-26","communication":[{"language":{"coding":[{"code":"es","system":"urn:ietf:bcp:47"}]}}],"extension":[{"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex","valueCode":"248152002"},{"extension":[{"url":"ombCategory","valueCoding":{"code":"UNK","display":"Unknown","system":"http://terminology.hl7.org/CodeSystem/v3-NullFlavor"}},{"url":"text","valueString":"Unknown"}],"url":"http://hl7.org/fhir/us/core/StructureDefinition/us-core-race"}],"gender":"female","id":"-979434278","identifier":[{"period":{"end":"2021-03-11T00:00:00+00:00","start":"2020-02-23T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1IE9AX4DK63"},{"period":{"start":"2021-03-12T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"1S00E00AA66"},{"period":{"end":"2020-02-22T00:00:00+00:00","start":"2019-08-23T00:00:00+00:00"},"system":"http://hl7.org/fhir/sid/us-mbi","type":{"coding":[{"code":"MB","system":"http://terminology.hl7.org/CodeSystem/v2-0203"}]},"value":"9LY3W39KP20"}],"meta":{"lastUpdated":"2026-05-13T20:57:19.951+00:00","profile":["http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient|2.2.0","http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient|7.0.0"]},"name":[{"family":"Sheep","given":["Bandit"]}],"resourceType":"Patient"}
|
||||
121
dev/vendor/bcda-static-site/LICENSE
vendored
Normal file
121
dev/vendor/bcda-static-site/LICENSE
vendored
Normal file
@@ -0,0 +1,121 @@
|
||||
Creative Commons Legal Code
|
||||
|
||||
CC0 1.0 Universal
|
||||
|
||||
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
|
||||
LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
|
||||
ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
|
||||
INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
|
||||
REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
|
||||
PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
|
||||
THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
|
||||
HEREUNDER.
|
||||
|
||||
Statement of Purpose
|
||||
|
||||
The laws of most jurisdictions throughout the world automatically confer
|
||||
exclusive Copyright and Related Rights (defined below) upon the creator
|
||||
and subsequent owner(s) (each and all, an "owner") of an original work of
|
||||
authorship and/or a database (each, a "Work").
|
||||
|
||||
Certain owners wish to permanently relinquish those rights to a Work for
|
||||
the purpose of contributing to a commons of creative, cultural and
|
||||
scientific works ("Commons") that the public can reliably and without fear
|
||||
of later claims of infringement build upon, modify, incorporate in other
|
||||
works, reuse and redistribute as freely as possible in any form whatsoever
|
||||
and for any purposes, including without limitation commercial purposes.
|
||||
These owners may contribute to the Commons to promote the ideal of a free
|
||||
culture and the further production of creative, cultural and scientific
|
||||
works, or to gain reputation or greater distribution for their Work in
|
||||
part through the use and efforts of others.
|
||||
|
||||
For these and/or other purposes and motivations, and without any
|
||||
expectation of additional consideration or compensation, the person
|
||||
associating CC0 with a Work (the "Affirmer"), to the extent that he or she
|
||||
is an owner of Copyright and Related Rights in the Work, voluntarily
|
||||
elects to apply CC0 to the Work and publicly distribute the Work under its
|
||||
terms, with knowledge of his or her Copyright and Related Rights in the
|
||||
Work and the meaning and intended legal effect of CC0 on those rights.
|
||||
|
||||
1. Copyright and Related Rights. A Work made available under CC0 may be
|
||||
protected by copyright and related or neighboring rights ("Copyright and
|
||||
Related Rights"). Copyright and Related Rights include, but are not
|
||||
limited to, the following:
|
||||
|
||||
i. the right to reproduce, adapt, distribute, perform, display,
|
||||
communicate, and translate a Work;
|
||||
ii. moral rights retained by the original author(s) and/or performer(s);
|
||||
iii. publicity and privacy rights pertaining to a person's image or
|
||||
likeness depicted in a Work;
|
||||
iv. rights protecting against unfair competition in regards to a Work,
|
||||
subject to the limitations in paragraph 4(a), below;
|
||||
v. rights protecting the extraction, dissemination, use and reuse of data
|
||||
in a Work;
|
||||
vi. database rights (such as those arising under Directive 96/9/EC of the
|
||||
European Parliament and of the Council of 11 March 1996 on the legal
|
||||
protection of databases, and under any national implementation
|
||||
thereof, including any amended or successor version of such
|
||||
directive); and
|
||||
vii. other similar, equivalent or corresponding rights throughout the
|
||||
world based on applicable law or treaty, and any national
|
||||
implementations thereof.
|
||||
|
||||
2. Waiver. To the greatest extent permitted by, but not in contravention
|
||||
of, applicable law, Affirmer hereby overtly, fully, permanently,
|
||||
irrevocably and unconditionally waives, abandons, and surrenders all of
|
||||
Affirmer's Copyright and Related Rights and associated claims and causes
|
||||
of action, whether now known or unknown (including existing as well as
|
||||
future claims and causes of action), in the Work (i) in all territories
|
||||
worldwide, (ii) for the maximum duration provided by applicable law or
|
||||
treaty (including future time extensions), (iii) in any current or future
|
||||
medium and for any number of copies, and (iv) for any purpose whatsoever,
|
||||
including without limitation commercial, advertising or promotional
|
||||
purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
|
||||
member of the public at large and to the detriment of Affirmer's heirs and
|
||||
successors, fully intending that such Waiver shall not be subject to
|
||||
revocation, rescission, cancellation, termination, or any other legal or
|
||||
equitable action to disrupt the quiet enjoyment of the Work by the public
|
||||
as contemplated by Affirmer's express Statement of Purpose.
|
||||
|
||||
3. Public License Fallback. Should any part of the Waiver for any reason
|
||||
be judged legally invalid or ineffective under applicable law, then the
|
||||
Waiver shall be preserved to the maximum extent permitted taking into
|
||||
account Affirmer's express Statement of Purpose. In addition, to the
|
||||
extent the Waiver is so judged Affirmer hereby grants to each affected
|
||||
person a royalty-free, non transferable, non sublicensable, non exclusive,
|
||||
irrevocable and unconditional license to exercise Affirmer's Copyright and
|
||||
Related Rights in the Work (i) in all territories worldwide, (ii) for the
|
||||
maximum duration provided by applicable law or treaty (including future
|
||||
time extensions), (iii) in any current or future medium and for any number
|
||||
of copies, and (iv) for any purpose whatsoever, including without
|
||||
limitation commercial, advertising or promotional purposes (the
|
||||
"License"). The License shall be deemed effective as of the date CC0 was
|
||||
applied by Affirmer to the Work. Should any part of the License for any
|
||||
reason be judged legally invalid or ineffective under applicable law, such
|
||||
partial invalidity or ineffectiveness shall not invalidate the remainder
|
||||
of the License, and in such case Affirmer hereby affirms that he or she
|
||||
will not (i) exercise any of his or her remaining Copyright and Related
|
||||
Rights in the Work or (ii) assert any associated claims and causes of
|
||||
action with respect to the Work, in either case contrary to Affirmer's
|
||||
express Statement of Purpose.
|
||||
|
||||
4. Limitations and Disclaimers.
|
||||
|
||||
a. No trademark or patent rights held by Affirmer are waived, abandoned,
|
||||
surrendered, licensed or otherwise affected by this document.
|
||||
b. Affirmer offers the Work as-is and makes no representations or
|
||||
warranties of any kind concerning the Work, express, implied,
|
||||
statutory or otherwise, including without limitation warranties of
|
||||
title, merchantability, fitness for a particular purpose, non
|
||||
infringement, or the absence of latent or other defects, accuracy, or
|
||||
the present or absence of errors, whether or not discoverable, all to
|
||||
the greatest extent permissible under applicable law.
|
||||
c. Affirmer disclaims responsibility for clearing rights of other persons
|
||||
that may apply to the Work or any use thereof, including without
|
||||
limitation any person's Copyright and Related Rights in the Work.
|
||||
Further, Affirmer disclaims responsibility for obtaining any necessary
|
||||
consents, permissions or other rights required for any use of the
|
||||
Work.
|
||||
d. Affirmer understands and acknowledges that Creative Commons is not a
|
||||
party to this document and has no duty or obligation with respect to
|
||||
this CC0 or use of the Work.
|
||||
22
dev/vendor/bcda-static-site/src/_announcements/2025-py-data-limit-ended.md
vendored
Normal file
22
dev/vendor/bcda-static-site/src/_announcements/2025-py-data-limit-ended.md
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
---
|
||||
layout: announcement
|
||||
page_title: "End of BCDA data limitations"
|
||||
description: "Performance year (PY) 2026 data is now accessible."
|
||||
show-side-nav: false
|
||||
in-page-nav: true
|
||||
lead_paragraph: "Performance year (PY) 2026 data now available."
|
||||
published_date: 2026-02-12
|
||||
---
|
||||
|
||||
All model entities can now access PY 2026 data using the `/Group/all` and `/Patient` endpoints.
|
||||
|
||||
- Use the `all` identifier for `/Group` and `/Patient` endpoint requests.
|
||||
- Use the `all` identifier **for your first PY 2026 data request.** There will be no service date restrictions for this data.
|
||||
|
||||
## Requesting PY 2025 runout data
|
||||
|
||||
Use the `runout` identifier separately with the `/Group` endpoint. This will return data for enrollees who were attributed to your organization in PY 2025, but not PY 2026\.
|
||||
|
||||
- Use the `_since` parameter in conjunction with the `runout` identifier to limit data to updates occurring since your last runout request.
|
||||
- The `runout` identifier will be updated each month up to and including July 2026.
|
||||
- After July 2026, new data for enrollees who were attributed to your organization in PY 2025, but not PY 2026, will not be included.
|
||||
@@ -0,0 +1,57 @@
|
||||
---
|
||||
layout: announcement
|
||||
page_title: "BCDA data limited in Jan 2026 for yearly updates"
|
||||
description: "Claims with 2026 service dates will be unavailable throughout January 2026."
|
||||
show-side-nav: false
|
||||
in-page-nav: true
|
||||
lead_paragraph: "Claims with 2026 service dates will be unavailable throughout January 2026."
|
||||
published_date: 2025-12-03
|
||||
---
|
||||
|
||||
Certain BCDA data is unavailable every January while CMS updates attributed beneficiaries for the new performance year (PY). Normal functionality will be restored to individual entities as soon as their data is ready. This typically takes 1 month.
|
||||
|
||||
PY 2026 starts Jan 1, 2026 and ends Dec 31, 2026.
|
||||
|
||||
## What data will be unavailable in Jan 2026?
|
||||
|
||||
Requests to `/Group/all` and `/Patient` endpoints will be disabled while we wait for updated attribution info for your model entity.
|
||||
|
||||
## How should I request PY 2025 runout data?
|
||||
|
||||
To request runout data for enrollees attributed to your organization in PY 2025:
|
||||
|
||||
* Use the `runout` identifier with the `/Group` endpoint.
|
||||
* Claims with a service date in 2026 will be excluded. Data returned will have a service date no later than December 31, 2025.
|
||||
* Use the [\_since parameter]({{ '/api-documentation/filter-claims-data.html#the-_since-parameter' | relative_url }}) with the `runout` identifier to return data updated since your last runout request. [Review our documentation on the runout identifier]({{ '/api-documentation/filter-claims-data.html#the-runout-identifier' | relative_url }}).
|
||||
|
||||
## How will I know when data is available again?
|
||||
|
||||
We’ll notify you in the [BCDA Google Group](https://groups.google.com/g/bc-api) when the limitation ends for each supported model. At that point, you can use the `all` identifier to request data, including 2026 claims, with the `/Group` and `/Patient` endpoints as usual.
|
||||
|
||||
## Examples of requests/outcomes to expect in Jan 2026
|
||||
|
||||
- A caller makes a request to the `/Patient` or `/Group` endpoint using the `all` identifier.
|
||||
- GET `/api/v2/Patient/$export`
|
||||
- GET `/api/v2/Group/all/$export`
|
||||
|
||||
- The caller receives a `404 Not Found` response and an `OperationOutcome` error.
|
||||
- An example `OperationOutcome.fhir.json` is attached.
|
||||
- Callers should use the `/api/v2/Group/runout/$export` endpoint.
|
||||
|
||||
- A caller makes a request to the `/Group` endpoint using the `runout` identifier.
|
||||
- GET `/api/v2/Group/runout/$export`
|
||||
|
||||
- The caller receives a `202 Accepted` response.
|
||||
- Content-Location header sent with the job location.
|
||||
- `Content-Location: /api/v2/jobs/{job_id}`
|
||||
|
||||
- A caller polls the `/Jobs` endpoint until the job completes.
|
||||
- GET `/api/v2/jobs/{job_id}`
|
||||
|
||||
- The caller can now download the job data.
|
||||
- GET `/data/2/output.json`
|
||||
- All claims data will be capped at December 31, 2025.
|
||||
|
||||
## Need help?
|
||||
|
||||
Keep an eye on the [Google Group conversation](https://groups.google.com/g/bc-api/c/0v78i8P1sKo) to ask questions and read updates about BCDA data availability. If you can’t find what you need, send an email to [bcapi@cms.hhs.gov](mailto:bcapi@cms.hhs.gov).
|
||||
61
dev/vendor/bcda-static-site/src/_announcements/bcda-launches-v3.md
vendored
Normal file
61
dev/vendor/bcda-static-site/src/_announcements/bcda-launches-v3.md
vendored
Normal file
@@ -0,0 +1,61 @@
|
||||
---
|
||||
layout: announcement
|
||||
page_title: "BCDA v3: Enhanced timeliness and performance for value-based care"
|
||||
description: "Core improvements to data sources and alignment mean timelier, more person-centered care. "
|
||||
show-side-nav: false
|
||||
in-page-nav: true
|
||||
lead_paragraph: "Core improvements to data sources and alignment mean timelier, more person-centered care."
|
||||
published_date: 2026-07-01
|
||||
---
|
||||
|
||||
Centers for Medicare & Medicaid Services (CMS) is excited to announce version 3 (v3) of its [FHIR](http://hl7.org/fhir/) Medicare claims data sharing platform. v3 drives improvements to CMS Beneficiary Claims Data API (BCDA), [Blue Button API](https://bluebutton.cms.gov/), and [Claims Data to Part D Sponsors API (AB2D)](https://ab2d.cms.gov/). [BCDA v3]({{ '/about/introducing-v3.html' | relative_url }}) helps model entities coordinate care more effectively, track performance on CMS quality measures, and improve patient outcomes.
|
||||
|
||||
## BCDA v3 improvements
|
||||
|
||||
With BCDA v3, model entities get patient claims data earlier, allowing them to identify issues and intervene sooner. v3 strengthens alignment with Fast Healthcare Interoperability Resources (FHIR) standards and other CMS data sources, reducing time and money spent on integrations and reconciliation. Driving these improvements are:
|
||||
|
||||
- A new, single source of Medicare claims data
|
||||
- Better alignment with sources such as Claim and Claim Line Feed (CCLF) files
|
||||
|
||||
These fundamental changes improve data frequency, tracking, filtering, mapping, and FHIR conformance.
|
||||
|
||||
### Timelier, more frequent updates
|
||||
|
||||
v3 offers timelier updates to patient and coverage data, meaning:
|
||||
|
||||
- Shorter time between full processing (adjudication) and data availability
|
||||
- Increased frequency of updates to patient and coverage information
|
||||
|
||||
### Easier claims tracking
|
||||
|
||||
BCDA v3 makes it easier to track claims through the adjudication cycle. It uses one FHIR resource instead of 3 to represent fully and partially processed versions of a claim. v3 also simplifies the way BCDA denotes claims status.
|
||||
|
||||
### Enhanced filtering capabilities
|
||||
|
||||
The new [_typeFilter query parameter]({{ '/api-documentation/filter-claims-data.html#the-_typefilter-parameter' | relative_url }}) provides additional options for complex data workflows.
|
||||
|
||||
### Improved conformance with select FHIR Implementation Guides
|
||||
|
||||
v3 standardizes extensions while providing better FHIR conformance. CodeSystems are represented using `StructureDefinition` and `CodeSystem` resources.
|
||||
|
||||
### Simplified, reliable data mapping
|
||||
|
||||
BCDA v3 data aligns more closely with CCLF files, and generates its Data Dictionary automatically.
|
||||
|
||||
## The IDR: a single source of claims data
|
||||
|
||||
v3 consolidates upstream data to a single data source, the Integrated Data Repository (IDR). This change:
|
||||
|
||||
- Reduces mismatches between BCDA resources and CCLF files
|
||||
- Resolves missing data for newly attributed enrollees
|
||||
- Fixes issues for enrollees assigned more than one `BENE_ID`
|
||||
- Simplifies linking between partially and fully adjudicated claims
|
||||
- Uses consistent claim identifiers across all adjudication phases
|
||||
|
||||
## What this means for healthcare organizations
|
||||
|
||||
Through a unified data structure and consolidated data sources, BCDA v3 can reduce development time, improve data quality, and ensure providers have up-to-date information about every Medicare patient.
|
||||
|
||||
## What this means for current users
|
||||
|
||||
The v1 and v2 endpoints will be disabled on July 30, 2027. Refer to the [v3 Migration Guide]({{ '/api-documentation/how-to-migrate-v3.html' | relative_url }}) for steps and support on upgrading to v3.
|
||||
@@ -0,0 +1,23 @@
|
||||
---
|
||||
layout: announcement
|
||||
page_title: "BCDA performance improvement to speed up job requests"
|
||||
show-side-nav: false
|
||||
in-page-nav: true
|
||||
published_date: 2024-12-01
|
||||
description: "Reducing resources file and increasing rate limits speeds up the time to complete long-running jobs with BCDA."
|
||||
lead_paragraph: "New changes decrease the time it takes to complete long-running jobs. "
|
||||
custom_excerpt: "New changes decrease the time it takes to complete long-running jobs. "
|
||||
---
|
||||
|
||||
We've decreased the time it takes to complete long-running jobs by reducing the number of EOB resources per ndjson file. We've also increased the rate limit on API requests by 10X to accommodate the additional files.
|
||||
|
||||
What's changing?
|
||||
- EOB resources per ndjson file are reduced from 200 to 50.
|
||||
- We've increased the rate limit from 300 to 3,000 per 5 minutes from a single IP address.
|
||||
|
||||
Why is it changing?
|
||||
- The change in EOB file volume decreases the time it takes to complete long-running jobs like requests for historical data.
|
||||
- The API rate limit increase lowers likelihood of having your requests throttled.
|
||||
|
||||
What can you do to prepare?
|
||||
- There's no action required. It can be helpful to revisit our guidance on [handling 429 errors]({{ "/api-documentation/access-claims-data.html#response-example-too-many-requests" | relative_url }}) caused by exceeding the API rate limit.
|
||||
25
dev/vendor/bcda-static-site/src/_announcements/bcda-v3-expanded-access-general-availability.md
vendored
Normal file
25
dev/vendor/bcda-static-site/src/_announcements/bcda-v3-expanded-access-general-availability.md
vendored
Normal file
@@ -0,0 +1,25 @@
|
||||
---
|
||||
layout: announcement
|
||||
page_title: "BCDA v3: Expanded access, general availability"
|
||||
description: "Over 600 new organizations eligible for BCDA in time for v3 general availability"
|
||||
show-side-nav: false
|
||||
in-page-nav: true
|
||||
lead_paragraph: "Over 600 new organizations eligible for BCDA in time for v3 general availability"
|
||||
published_date: 2026-10-07
|
||||
---
|
||||
|
||||
Summer 2026 increased the reach of FHIR-enabled Medicare claims data thanks to new [Innovation Models](https://www.cms.gov/priorities/innovation/models) and the general availability release of BCDA v3.
|
||||
|
||||
## 3 new payment models can access BCDA
|
||||
|
||||
As of July 2026, participants in the [ACCESS](https://www.cms.gov/priorities/innovation/innovation-models/access), [GUIDE](https://www.cms.gov/priorities/innovation/innovation-models/guide), and [IOTA](https://www.cms.gov/priorities/innovation/innovation-models/iota) models have access to Medicare claims data. Timely claims data will help model participants treat and manage complex conditions. These include chronic conditions, dementia, and needs arising around kidney transplants.
|
||||
|
||||
## General availability means faster access to v3
|
||||
|
||||
With the phased rollout complete (from early adopter program, to limited release, to general availability), eligible organizations can now initiate their own access to BCDA v3. As announced in the [BCDA Google Group](https://groups.google.com/g/bc-api), you no longer need to submit a request to [onboard]({{ '/production-access.html' | relative_url }}) or [migrate]({{ '/api-documentation/how-to-migrate-v3.html' | relative_url }}) in order to get started.
|
||||
|
||||
## Why move to v3?
|
||||
|
||||
With v3, platform-level improvements lead to earlier access to claims data. Earlier access supports timely follow-ups and interventions. A closer alignment between v3 and other CMS data sources supports a more detailed, longitudinal picture of health for people with Medicare.
|
||||
|
||||
Join the [BCDA Google Group](https://groups.google.com/g/bc-api) for additional news and support.
|
||||
612
dev/vendor/bcda-static-site/src/_pages/api-documentation/access-claims-data.md
vendored
Normal file
612
dev/vendor/bcda-static-site/src/_pages/api-documentation/access-claims-data.md
vendored
Normal file
@@ -0,0 +1,612 @@
|
||||
---
|
||||
layout: api-docs
|
||||
page_title: "How to Access Claims Data"
|
||||
seo_title: ""
|
||||
description: "Learn how to access Medicare enrollees' Parts A, B, and D claims data in the BCDA production environment for performance tracking and risk analysis."
|
||||
in-page-nav: true
|
||||
feedback_id: "f179685c"
|
||||
---
|
||||
|
||||
# {{ page.page_title }}
|
||||
|
||||
Learn how to access claims data for both the sandbox and production environments and use Beneficiary Claims Data API (BCDA) endpoints.
|
||||
|
||||
The sandbox and production environments follow similar instructions. They support the same workflow, endpoints, parameters, and resource types.
|
||||
|
||||
<table class="usa-table usa-table--borderless margin-bottom-6">
|
||||
<caption class="usa-sr-only">Sandbox and Production environments comparison</caption>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">Sandbox</th>
|
||||
<th scope="col">Production</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>Available to everyone via test credentials</td>
|
||||
<td>Must <a href="{{ '/production-access.html' | relative_url }}">complete the steps</a> for production credentials</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Contains test claims data</td>
|
||||
<td>Contains real Medicare enrollee data</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code>sandbox.bcda.cms.gov</code></td>
|
||||
<td><code>api.bcda.cms.gov</code></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
<div class="usa-alert usa-alert--info">
|
||||
<div class="usa-alert__body">
|
||||
<p class="usa-alert__heading text-bold">BCDA recommends using v3 of the API</p>
|
||||
<p class="usa-alert__text">This is the latest version which follows the <a href="https://hl7.org/fhir/R4/" target="_blank" rel="noopener noreferrer">FHIR R4 specification</a>.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
## Instructions
|
||||
|
||||
### 1. Get a bearer token
|
||||
|
||||
You will need a [bearer token]({{ '/api-documentation/get-a-bearer-token.html' | relative_url }}) to call the API. The process requires credentials, which are formatted as a client ID and client secret.
|
||||
|
||||
<div class="usa-alert usa-alert--warning usa-alert--slim">
|
||||
<div class="usa-alert__body">
|
||||
<p class="usa-alert__text">Jobs will not be interrupted when the bearer token <a href="{{ '/api-documentation/get-a-bearer-token.html#troubleshooting' | relative_url }}">expires</a>. In progress and queued jobs will continue to run.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
### 2. Start a job
|
||||
|
||||
Make a `GET` request to the /Group or /Patient endpoint to start a data export job. The examples below are sandbox curl requests to /Group. Follow along in your terminal or using a tool like Postman.
|
||||
|
||||
#### Request all resource types
|
||||
|
||||
By default, the `GET` request returns all available [resource types]({{ '/bcda-data.html#resource-types' | relative_url }}).
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
GET /api/v3/Group/all/$export
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
Use the [_type parameter]({{ '/api-documentation/filter-claims-data.html' | relative_url }}) to specify which resource types you'd like returned.
|
||||
|
||||
#### Request header
|
||||
|
||||
The header must contain your bearer token. You may receive a `401` response if your credentials are invalid or expired. `Bearer ` must be included in the header with a capital B and followed by a space.
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
Authorization: Bearer {bearer_token}
|
||||
Accept: application/fhir+json
|
||||
Prefer: respond-async
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="yaml" %}
|
||||
|
||||
#### Example curl commands to start a job
|
||||
|
||||
- Combine your `GET` request for resources with the request header.
|
||||
- The dollar sign `$` before `export` in the URL indicates the endpoint is an <a href="https://hl7.org/fhir/R4/operations.html" target="_blank" rel="noopener noreferrer">operation</a>, rather than a CRUD interaction.
|
||||
- PowerShell users will need to replace backslash characters `\` with backticks ( \` ) to properly escape the `$export` operation.
|
||||
|
||||
<div class="usa-alert usa-alert--info usa-alert--no-icon">
|
||||
<div class="usa-alert__body">
|
||||
<p class="usa-alert__text text-bold">Remember to use the correct URL for your environment</p>
|
||||
<p class="usa-alert__text">Use <code>sandbox.bcda.cms.gov</code> to access the sandbox or <code>api.bcda.cms.gov</code> to access the production environment.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- snippet x3 -->
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
curl -X GET "https://sandbox.bcda.cms.gov/api/v3/Group/all/\$export" \
|
||||
-H "Accept: application/fhir+json" \
|
||||
-H "Prefer: respond-async" \
|
||||
-H "Authorization: Bearer {bearer_token}" \
|
||||
-i
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" can_copy=true %}
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
curl -X GET "https://sandbox.bcda.cms.gov/api/v3/Group/all/\$export?_type=ExplanationOfBenefit,Patient" \
|
||||
-H "Accept: application/fhir+json" \
|
||||
-H "Prefer: respond-async" \
|
||||
-H "Authorization: Bearer {bearer_token}" \
|
||||
-i
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" can_copy=true %}
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
curl -X GET "https://sandbox.bcda.cms.gov/api/v3/Group/all/\$export?_type=Patient" \
|
||||
-H "Accept: application/fhir+json" \
|
||||
-H "Prefer: respond-async" \
|
||||
-H "Authorization: Bearer {bearer_token}" \
|
||||
-i
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" can_copy=true %}
|
||||
|
||||
#### Response example: successful request
|
||||
|
||||
A `202 Accepted` response with a Content-Location header indicates a successful request.
|
||||
|
||||
#### Response header example
|
||||
|
||||
You'll need the job ID in the Content-Location header to check your job status.
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
Content-Location: https://sandbox.bcda.cms.gov/api/v3/jobs/{job_id}
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
#### Response example: too many requests
|
||||
|
||||
A `429 Too Many Requests` response can occur due to 2 reasons:
|
||||
|
||||
1. Making too many HTTP requests within a period of time
|
||||
2. Trying to recreate jobs already marked as "In-Progress.” For reference, you can view both existing and past jobs using the [/jobs endpoint]({{ '/api-documentation/access-claims-data.html' | relative_url }}#request-job-history).
|
||||
|
||||
Wait until the period of time specified in the `Retry-After: <delay-seconds>` header passes before making any more requests. This makes sure your client can adapt without manual intervention, even if the rate-limiting parameters change.
|
||||
|
||||
### 3. Check job status
|
||||
|
||||
Make a `GET` request to check the status using the job ID from step 2. You may need another bearer token if it's been over 20 minutes since it was generated.
|
||||
|
||||
#### Request to check the job status
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
GET https://sandbox.bcda.cms.gov/api/v3/jobs/{job_id}
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
#### Request header
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
Authorization: Bearer {bearer_token}
|
||||
Accept: application/fhir+json
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="yaml" %}
|
||||
|
||||
#### curl command to check the job status
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
curl -X GET "https://sandbox.bcda.cms.gov/api/v3/jobs/{job_id}" \
|
||||
-H "Accept: application/fhir+json" \
|
||||
-H "Authorization: Bearer {bearer_token}" \
|
||||
-i
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" can_copy=true %}
|
||||
|
||||
#### Response example: incomplete job
|
||||
|
||||
A `202` response indicates your job is still processing. The status will change to `200 OK` when the export is complete and the data is ready for download.
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
202 Accepted
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
#### Response header example: incomplete job
|
||||
|
||||
The X-Progress will have a percentage indicating your estimated progress.
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
X-Progress: In Progress, 80%
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
#### Response example: completed job
|
||||
|
||||
You'll receive a `200 OK` response with the output URL(s) needed to download the data. In the example URLs below, `42` indicates the job ID.
|
||||
|
||||
There is a separate URL for each resource type requested. The following example shows a request for all resource types.
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
{
|
||||
"transactionTime": "2026-12-09T20:44:01.705398Z",
|
||||
"request": "https://sandbox.bcda.cms.gov/api/v3/Group/all/$export",
|
||||
"requiresAccessToken": true,
|
||||
"output": [
|
||||
{
|
||||
"type": "ExplanationOfBenefit",
|
||||
"url": "https://sandbox.bcda.cms.gov/data/42/afd22dfa-c239-4063-8882-eb2712f9f638.ndjson"
|
||||
},
|
||||
{
|
||||
"type": "Coverage",
|
||||
"url": "https://sandbox.bcda.cms.gov/data/42/f76a0b76-48ed-4033-aad9-d3eec37e7e83.ndjson"
|
||||
},
|
||||
{
|
||||
"type": "Patient",
|
||||
"url": "https://sandbox.bcda.cms.gov/data/42/f92dcf16-63a2-448e-a12a-3bf677f966ed.ndjson"
|
||||
}
|
||||
],
|
||||
"error": [],
|
||||
"JobID": 42
|
||||
}
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="json" %}
|
||||
|
||||
### 4. Download the data
|
||||
|
||||
Make a `GET` request to download your data using the URL(s) from step 3.
|
||||
|
||||
If you're downloading from more than 1 URL, make multiple download requests concurrently to save time. Large files may take significantly longer to download.
|
||||
|
||||
<div class="usa-alert usa-alert--info usa-alert--no-icon">
|
||||
<div class="usa-alert__body">
|
||||
<p class="usa-alert__text text-bold">Files expire after 24 hours</p>
|
||||
<p class="usa-alert__text">You can download these files using a new bearer token. After 24 hours, the files will expire and you will need to restart the job.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
#### Request to download the data
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
GET https://sandbox.bcda.cms.gov/data/{job_id}/{file_name}
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
#### Request header: compressed data files
|
||||
|
||||
Request compressed data files with the optional `Accept-Encoding: gzip` header in your requests for faster download times. Afterward, decompress (unzip) the files into NDJSON format.
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
Authorization: Bearer {bearer_token}
|
||||
Accept-Encoding: gzip
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="yaml" %}
|
||||
|
||||
#### curl command to download the data
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
curl -X GET "https://sandbox.bcda.cms.gov/data/{job_id}/{file_name}" \
|
||||
-H "Accept-Encoding: gzip" \
|
||||
-H "Authorization: Bearer {bearer_token}"
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" can_copy=true %}
|
||||
|
||||
If some of the data can't be exported due to errors, details can be found at the URLs in the error field. The errors are provided in an NDJSON file as FHIR OperationOutcome resources.
|
||||
|
||||
#### Response example
|
||||
|
||||
By default, you'll receive the requested data as FHIR resources in NDJSON format. Each resource type will appear as a separate, labeled file.
|
||||
|
||||
<div class="usa-alert usa-alert--info usa-alert--no-icon usa-alert--slim">
|
||||
<div class="usa-alert__body">
|
||||
<p class="usa-alert__text">Test data from the sandbox contains only negative Patient IDs.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ol>
|
||||
<li><a href="{{ '/assets/downloads/v3_ExplanationOfBenefit.ndjson' | relative_url }}" data-tealium="download">ExplanationOfBenefit.ndjson {% include sprite.html icon="file_download" class="text-middle" size="2" %}</a></li>
|
||||
<li><a href="{{ '/assets/downloads/v3_Patient.ndjson' | relative_url }}" data-tealium="download">Patient.ndjson {% include sprite.html icon="file_download" class="text-middle" size="2" %}</a></li>
|
||||
<li><a href="{{ '/assets/downloads/v3_Coverage.ndjson' | relative_url }}" data-tealium="download">Coverage.ndjson {% include sprite.html icon="file_download" class="text-middle" size="2" %}</a></li>
|
||||
</ol>
|
||||
|
||||
## Other BCDA endpoints
|
||||
|
||||
### Cancel a job
|
||||
|
||||
Cancel any active job. If the request is successful, you'll receive a `202` response.
|
||||
|
||||
#### Request to cancel a job
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
DELETE /api/v3/jobs/{job_id}
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
#### Request header
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
Authorization: Bearer {bearer_token}
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="yaml" %}
|
||||
|
||||
#### curl command to cancel a job
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
curl -X DELETE "https://sandbox.bcda.cms.gov/api/v3/jobs/{job_id}" \
|
||||
-H "Accept: application/fhir+json" \
|
||||
-H "Authorization: Bearer {bearer_token}"
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" can_copy=true %}
|
||||
|
||||
### Request job history
|
||||
|
||||
Retrieve details on your organization's historical requests, including the start and end datetime, unique ID, original valueString request, and status.
|
||||
|
||||
#### Request to retrieve all past jobs
|
||||
|
||||
If your organization has no jobs to return, you'll receive a `404 ERROR` response.
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
GET /api/v3/jobs
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
#### Request that filters jobs by end state
|
||||
|
||||
Supply the _status parameter to filter for jobs with a specific end state. BCDA jobs have 9 possible end states: Completed, Archived, Expired, Failed, FailedExpired, In Progress, Pending, Cancelled, and CancelledExpired.
|
||||
|
||||
These are how the job end states map to the 4 supported values you can receive in the response body:
|
||||
|
||||
- `Archived`, `Expired`, `Completed` → `completed`
|
||||
- `FailedExpired`, `Failed` → `failed`
|
||||
- `Pending`, `In Progress` → `in-progress`
|
||||
- `CancelledExpired`, `Cancelled` → `cancelled`
|
||||
|
||||
The example below is a filtered request for all past archived jobs. If any are found, the response will list the status as `completed`. Even so, the filter will only return archived jobs; it will exclude expired and completed jobs.
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
GET /api/v3/jobs?_status=Archived
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
#### Request header
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
Authorization: Bearer {bearer_token}
|
||||
Accept: application/fhir+json
|
||||
Prefer: respond-async
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="yaml" %}
|
||||
|
||||
#### curl command to check the job status
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
curl -X GET "https://sandbox.bcda.cms.gov/api/v3/jobs" \
|
||||
-H "Accept: application/fhir+json" \
|
||||
-H "Prefer: respond-async" \
|
||||
-H "Authorization: Bearer {bearer_token}" \
|
||||
-i
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" can_copy=true %}
|
||||
|
||||
#### Response example: completed job
|
||||
|
||||
The response will contain a bundle of resources for each historical job. Each resource section in the response represents a single past job request.
|
||||
|
||||
This example shows 1 historical job with a `completed` status. Since this was an unfiltered request, the job could either be archived, expired, or completed.
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
{
|
||||
"entry": [
|
||||
{
|
||||
"resource": {
|
||||
"executionPeriod": {
|
||||
"end": "2026-08-14T00:07:48+00:00",
|
||||
"start": "2026-08-13T00:07:48+00:00"
|
||||
},
|
||||
"identifier": [
|
||||
{
|
||||
"system": "https://bcda.cms.gov/api/v3/jobs",
|
||||
"use": "official",
|
||||
"value": "1"
|
||||
}
|
||||
],
|
||||
"input": [
|
||||
{
|
||||
"type": {
|
||||
"text": "BULK FHIR Export"
|
||||
},
|
||||
"valueString": "GET https://bcda.test.gov/this-is-a-test"
|
||||
}
|
||||
],
|
||||
"intent": "order",
|
||||
"resourceType": "Task",
|
||||
"status": "completed"
|
||||
}
|
||||
}
|
||||
],
|
||||
"resourceType": "Bundle",
|
||||
"total": 1,
|
||||
"type": "searchset"
|
||||
}
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="json" %}
|
||||
|
||||
### Request attribution status
|
||||
|
||||
Check your attribution status for a timestamp of when your attribution data was last updated. By comparing the timestamp to the date of your most recent job, you can determine if your organization has new claims data to download.
|
||||
|
||||
#### Request to check attribution status
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
GET /api/v3/attribution_status
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
#### Request header
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
Authorization: Bearer {bearer_token}
|
||||
Accept: application/json
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="yaml" %}
|
||||
|
||||
#### curl command to check attribution status
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
curl -X GET "https://sandbox.bcda.cms.gov/api/v3/attribution_status" \
|
||||
-H "Accept: application/json" \
|
||||
-H "Authorization: Bearer {bearer_token}"
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" can_copy=true %}
|
||||
|
||||
#### Response example
|
||||
If BCDA has never ingested an attribution or runout file for your organization, you'll receive a `404 not found` response.
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
{
|
||||
"ingestion_dates": [
|
||||
{
|
||||
"type": "last_attribution_update",
|
||||
"timestamp": "2020-12-22 22:31:40.397916+00"
|
||||
},
|
||||
{
|
||||
"type": "last_runout_update",
|
||||
"timestamp": "2020-12-22 22:31:40.397916+00"
|
||||
}
|
||||
]
|
||||
}
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="json" %}
|
||||
|
||||
### Check API status
|
||||
|
||||
Retrieve metadata to view the current status and release or FHIR version of the API. A bearer token, and therefore a response header, is not required.
|
||||
|
||||
#### Request to check API status
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
GET /api/v3/metadata
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
#### curl command to check API status
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
curl "https://sandbox.bcda.cms.gov/api/v3/metadata"
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" can_copy=true %}
|
||||
|
||||
#### Response example
|
||||
|
||||
The response will contain a FHIR Capability Statement resource in JSON format. The example below shows the API is active, using FHIR Release 4.0.1, and that the API release version is r292.
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
{
|
||||
"resourceType": "CapabilityStatement",
|
||||
"status": "active",
|
||||
"date": "2026-07-17T16:20:37Z",
|
||||
"publisher": "Centers for Medicare & Medicaid Services",
|
||||
"kind": "instance",
|
||||
"instantiates": [
|
||||
"https://prod-sbx.fhir.bfd.cmscloud.local/v3/fhir/metadata",
|
||||
"http://hl7.org/fhir/uv/bulkdata/CapabilityStatement/bulk-data"
|
||||
],
|
||||
"software": {
|
||||
"name": "Beneficiary Claims Data API",
|
||||
"version": "r292",
|
||||
"releaseDate": "2026-07-17T16:20:37Z"
|
||||
},
|
||||
"implementation": {
|
||||
"description": "The Beneficiary Claims Data API (BCDA) enables healthcare organizations participating in the Medicare Shared Savings Program or a CMS Innovation Model to retrieve Medicare Part A, Part B, and Part D claims data for their prospectively assigned or assignable beneficiaries.",
|
||||
"url": "https://sandbox.bcda.cms.gov"
|
||||
},
|
||||
"fhirVersion": "4.0.1",
|
||||
"format": [
|
||||
"application/json",
|
||||
"application/fhir+json"
|
||||
],
|
||||
"rest": [
|
||||
{
|
||||
"mode": "server",
|
||||
"security": {
|
||||
"cors": true,
|
||||
"service": [
|
||||
{
|
||||
"coding": [
|
||||
{
|
||||
"system": "http://terminology.hl7.org/CodeSystem/restful-security-service",
|
||||
"code": "OAuth",
|
||||
"display": "OAuth"
|
||||
}
|
||||
],
|
||||
"text": "OAuth"
|
||||
}
|
||||
],
|
||||
"extension": [
|
||||
{
|
||||
"url": "http://fhir-registry.smarthealthit.org/StructureDefinition/oauth-uris",
|
||||
"extension": [
|
||||
{
|
||||
"url": "token",
|
||||
"valueUri": "https://sandbox.bcda.cms.gov/auth/token"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"interaction": [
|
||||
{
|
||||
"code": "batch"
|
||||
},
|
||||
{
|
||||
"code": "search-system"
|
||||
}
|
||||
],
|
||||
"resource": [
|
||||
{
|
||||
"type": "Patient",
|
||||
"operation": [
|
||||
{
|
||||
"name": "export",
|
||||
"definition": "http://hl7.org/fhir/uv/bulkdata/OperationDefinition/patient-export",
|
||||
"documentation": "By default, the patient $export will return ExplanationOfBenefit resources with a meta.tag with a system of 'https://bluebutton.cms.gov/fhir/CodeSystem/System-Type' and code of either NationalClaimsHistory or DDPS. In order to return ExplanationOfBenefit resources with other system types (like SharedSystem), use the _typeFilter parameter."
|
||||
}
|
||||
],
|
||||
"searchParam": [
|
||||
{
|
||||
"name": "_since",
|
||||
"type": "date",
|
||||
"documentation": "Return resources updated after the date provided for existing and newly attributed enrollees."
|
||||
},
|
||||
{
|
||||
"name": "_type",
|
||||
"type": "string",
|
||||
"documentation": "Comma-delimited list of FHIR resource types to include in the export. By default, all supported resource types are returned."
|
||||
},
|
||||
{
|
||||
"name": "_typeFilter",
|
||||
"type": "string",
|
||||
"documentation": "Use a URL-encoded FHIR subquery to further-refine patient export results."
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "Group",
|
||||
"operation": [
|
||||
{
|
||||
"name": "export",
|
||||
"definition": "http://hl7.org/fhir/uv/bulkdata/OperationDefinition/group-export",
|
||||
"documentation": "By default, the group $export will return ExplanationOfBenefit resources with a meta.tag with a system of 'https://bluebutton.cms.gov/fhir/CodeSystem/System-Type' and code of either NationalClaimsHistory or DDPS. In order to return ExplanationOfBenefit resources with other system types (like SharedSystem), use the _typeFilter parameter."
|
||||
}
|
||||
],
|
||||
"searchParam": [
|
||||
{
|
||||
"name": "_since",
|
||||
"type": "date",
|
||||
"documentation": "Return resources updated after the date provided for existing enrollees and all resources for newly attributed enrollees."
|
||||
},
|
||||
{
|
||||
"name": "_type",
|
||||
"type": "string",
|
||||
"documentation": "Comma-delimited list of FHIR resource types to include in the export. By default, all supported resource types are returned."
|
||||
},
|
||||
{
|
||||
"name": "_typeFilter",
|
||||
"type": "string",
|
||||
"documentation": "Use a URL-encoded FHIR subquery to further-refine group export results."
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "ExplanationOfBenefit",
|
||||
"searchParam": [
|
||||
{
|
||||
"name": "_tag",
|
||||
"type": "token",
|
||||
"documentation": "Filter ExplanationOfBenefit by the meta.tag element. Pass full token as <system>|<code>. Supported codes in the 'https://bluebutton.cms.gov/fhir/CodeSystem/System-Type' system are: 'SharedSystem', 'NationalClaimsHistory', and 'DDPS'. By Default, only NationalClaimsHistory and DDPS claims will be returned."
|
||||
},
|
||||
{
|
||||
"name": "outcome",
|
||||
"type": "token",
|
||||
"documentation": "Filter ExplanationOfBenefit by the outcome element. Supported values: 'partial' and 'complete'."
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="json" %}
|
||||
240
dev/vendor/bcda-static-site/src/_pages/api-documentation/filter-claims-data.md
vendored
Normal file
240
dev/vendor/bcda-static-site/src/_pages/api-documentation/filter-claims-data.md
vendored
Normal file
@@ -0,0 +1,240 @@
|
||||
---
|
||||
layout: api-docs
|
||||
page_title: "How to Filter Claims Data"
|
||||
seo_title: ""
|
||||
description: "Learn how to filter Medicare claims data requests using the _since, _type, and _typeFilter parameters."
|
||||
in-page-nav: true
|
||||
feedback_id: "72cee024"
|
||||
tabs:
|
||||
- label: v3
|
||||
url: /api-documentation/filter-claims-data.html
|
||||
- label: v2
|
||||
url: /v2/api-documentation/filter-claims-data.html
|
||||
---
|
||||
|
||||
# {{ page.page_title }}
|
||||
|
||||
{% include tabs.html items=page.tabs %}
|
||||
|
||||
BCDA offers 3 query parameters to filter or specify the resources returned:
|
||||
- **_since:** applies a date boundary to your request
|
||||
- **_type:** limits your request to 1 or more specific resource types
|
||||
- **_typeFilter:** limits your request to resources matching the provided criteria
|
||||
|
||||
Use parameters in the sandbox or production environment to speed up download times and reduce file size.
|
||||
|
||||
## The _since parameter
|
||||
|
||||
The _since parameter lets you filter for claims data last updated after a specified date. Dates must be in the [FHIR standard instant format](https://www.hl7.org/fhir/datatypes.html#instant): `YYYY-MM-DDThh:mm:ss.sss+zz:zz`.
|
||||
|
||||
- Sample date: July 1, 2026 12:00 PM EST
|
||||
- Formatted sample: `2026-07-01T12:00:00.000-05:00`
|
||||
|
||||
<div class="usa-alert usa-alert--warning usa-alert--no-icon">
|
||||
<div class="usa-alert__body">
|
||||
<p class="usa-alert__text text-bold">Requesting data from before 03/26/2026</p>
|
||||
<p class="usa-alert__text">The FHIR resources available using BCDA v3 were first created in March 2026. Regardless of the service date, no resources from BCDA v3 will have a lastUpdated date earlier than March 2026.</p>
|
||||
<p>If you specify a date prior to 03/26/2026 with the _since parameter, your request will include a large amount of additional historical data for your enrollees. Your request using _since with a date on or later than 03/26/2026 will include resources marked with appropriate lastUpdated dates.</p>
|
||||
<p>If you wish to filter claims based on the date of service, use the _typeFilter parameter with service-date in your v3 request.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
We recommend new model entities run an unfiltered request for all historical data before using _since subsequently for incremental exports of new data. You can use the transactionTime from your most recent job as the specified date.
|
||||
|
||||
The _since parameter can be used with /Group or /Patient, but each endpoint will return data for newly attributed enrollees differently.
|
||||
|
||||
### Using _since with /Patient
|
||||
|
||||
Using _since with /Patient will return resources updated after the date provided for existing and newly attributed enrollees.
|
||||
|
||||
Newly attributed enrollees are those who’ve been assigned to your model entity since your last attribution date. If you don’t apply _since, BCDA will return data as early as March 1, 2021.
|
||||
|
||||
#### Example request using _since with /Patient
|
||||
|
||||
<!-- snippet -->
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
GET /api/v3/Patient/$export?_type=Patient&_since=2026-07-01T08:00:00.000-05:00
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
#### Example curl command using _since with /Patient
|
||||
|
||||
This command combines the `GET` request and request header. The dollar sign `$` before `export` in the URL indicates the endpoint is an action, not a resource.
|
||||
|
||||
<!-- snippet -->
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
curl -X GET "https://sandbox.bcda.cms.gov/api/v3/Patient/\$export?_type=Patient&_since=2026-07-01T08:00:00.000-05:00" \
|
||||
-H "Accept: application/fhir+json" \
|
||||
-H "Prefer: respond-async" \
|
||||
-H "Authorization: Bearer {bearer_token}" \
|
||||
-i
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" can_copy=true %}
|
||||
|
||||
### Using _since with /Group
|
||||
|
||||
Using _since with /Group will return resources updated after the date provided for existing enrollees and all resources for newly attributed enrollees.
|
||||
|
||||
This lets you retrieve all new claims data with a single request. If you don't apply _since, BCDA will return data as early as March 1, 2021.
|
||||
|
||||
#### Example request using _since with /Group
|
||||
|
||||
The request below will return:
|
||||
|
||||
- Claims data last updated since July 1, 2026 for existing enrollees
|
||||
- Claims data as far back as 2014 for all new enrollees attributed to your organization in the last month
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
GET /api/v3/Group/all/$export?_type=Patient&_since=2026-07-01T08:00:00.000-05:00
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
#### Example curl command using _since with /Group
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
curl -X GET "https://sandbox.bcda.cms.gov/api/v3/Group/all/\$export?_type=Patient&_since=2026-07-01T08:00:00.000-05:00" \
|
||||
-H "Accept: application/fhir+json" \
|
||||
-H "Prefer: respond-async" \
|
||||
-H "Authorization: Bearer {bearer_token}" \
|
||||
-i
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" can_copy=true %}
|
||||
|
||||
## The _type parameter
|
||||
|
||||
The _type parameter lets you specify which resource types you'd like returned. Otherwise, making a `GET` request to start a job with the /Group or /Patient endpoint will return all resource types.
|
||||
|
||||
### Using _type
|
||||
|
||||
You'll need to use commas when specifying multiple resource types. The examples below are curl requests to /Group using _type.
|
||||
|
||||
#### Example request for 1 resource type
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
GET /api/v3/Group/all/$export?_type=Patient
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
#### Example request for 2 resource types
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
GET /api/v3/Group/all/$export?_type=ExplanationOfBenefit,Patient
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
#### Example curl command using _type
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
curl -X GET "https://sandbox.bcda.cms.gov/api/v3/Group/all/\$export?_type=ExplanationOfBenefit,Patient" \
|
||||
-H "Accept: application/fhir+json" \
|
||||
-H "Prefer: respond-async" \
|
||||
-H "Authorization: Bearer {bearer_token}" \
|
||||
-i
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" can_copy=true %}
|
||||
|
||||
## The _typeFilter parameter
|
||||
|
||||
<div class="usa-alert usa-alert--success usa-alert--no-icon">
|
||||
<div class="usa-alert__body">
|
||||
<p class="usa-alert__text text-bold font-ui-lg">Only available in v3</p>
|
||||
<p class="usa-alert__text">The _typeFilter parameter is only available in v3.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
The _typeFilter parameter lets you use resource metadata to create finer-grained filtering criteria. BCDA will only return claims data that meets the specified criteria provided as a URL Encoded FHIR REST API query.
|
||||
|
||||
### Using _typeFilter
|
||||
|
||||
Currently, _typeFilter supports queries using the `_tag`, `outcome`, and `service-date` search parameters for the ExplanationOfBenefit resource:
|
||||
|
||||
* **_tag:** filters the export based on the `meta.tag` element. Pass a full token as `<system>|<code>`.
|
||||
* Supported codes in the `https://bluebutton.cms.gov/fhir/CodeSystem/System-Type` system are:
|
||||
* `SharedSystem`
|
||||
* `NationalClaimsHistory`
|
||||
* `DDPS`
|
||||
* If you do not specify a System-Type _tag filter, the export will include only `NationalClaimsHistory` and `DDPS` claims by default.
|
||||
|
||||
* **outcome:** filters the export based on the processing status of the claim. The two values for this param, `partial` and `complete`, represent the "Partially Adjudicated" and "Fully Adjudicated" claim statuses.
|
||||
|
||||
* **service-date:** filters the export based on the claim's service date. The service date is the date that the care occurred within a billable period. This is a FHIR date param format (ex. `gt2026-01-14`)
|
||||
|
||||
|
||||
#### Example request using _typeFilter
|
||||
|
||||
The request below will return:
|
||||
- All Patient and Coverage resources
|
||||
- ExplanationOfBenefit resources of fully adjudicated claims only
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
GET /api/v3/Group/all/$export?_typeFilter=ExplanationOfBenefit%3Foutcome%3Dcomplete
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
#### Example curl command using _typeFilter
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
curl -X GET "https://sandbox.bcda.cms.gov/api/v3/Group/all/\$export?_typeFilter=ExplanationOfBenefit%3Foutcome%3Dcomplete" \
|
||||
-H "Accept: application/fhir+json" \
|
||||
-H "Prefer: respond-async" \
|
||||
-H "Authorization: Bearer {bearer_token}" \
|
||||
-i
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" can_copy=true %}
|
||||
|
||||
## The \`runout` identifier
|
||||
|
||||
The \`runout` identifier lets you request runouts data for enrollees attributed to your model entity the previous year, but not the current year. Claims data returned will have a service date no later than December 31 of the previous year.
|
||||
|
||||
### Using the `runout` identifier
|
||||
|
||||
The examples below are `GET` requests made to the /Group endpoint.
|
||||
|
||||
#### Example request for 1 resource type using `runout`
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
GET /api/v3/Group/runout/$export?_type=Patient
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
curl -X GET "https://sandbox.bcda.cms.gov/api/v3/Group/runout/\$export?_type=Patient" \
|
||||
-H "accept: application/fhir+json" \
|
||||
-H "Prefer: respond-async" \
|
||||
-H "Authorization: Bearer {bearer_token}" \
|
||||
-i
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" can_copy=true %}
|
||||
|
||||
#### Example request for 2 resource types using `runout`
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
GET /api/v3/Group/runout/$export?_type=ExplanationOfBenefit,Patient
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
curl -X GET "https://sandbox.bcda.cms.gov/api/v3/Group/runout/\$export?_type=ExplanationOfBenefit,Patient" \
|
||||
-H "accept: application/fhir+json" \
|
||||
-H "Prefer: respond-async" \
|
||||
-H "Authorization: Bearer {bearer_token}" \
|
||||
-i
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" can_copy=true %}
|
||||
|
||||
#### Request for all resources using `runout`
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
GET /api/v3/Group/runout/$export
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" %}
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
curl -X GET "https://sandbox.bcda.cms.gov/api/v3/Group/runout/\$export" \
|
||||
-H "accept: application/fhir+json" \
|
||||
-H "Prefer: respond-async" \
|
||||
-H "Authorization: Bearer {bearer_token}" \
|
||||
-i
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="shell" can_copy=true %}
|
||||
345
dev/vendor/bcda-static-site/src/_pages/api-documentation/how-to-migrate-v3.md
vendored
Normal file
345
dev/vendor/bcda-static-site/src/_pages/api-documentation/how-to-migrate-v3.md
vendored
Normal file
@@ -0,0 +1,345 @@
|
||||
---
|
||||
layout: api-docs
|
||||
page_title: "How to Migrate to v3"
|
||||
seo_title: "How to Migrate to BCDA v3 | CMS Beneficiary Claims Data API"
|
||||
description: "Learn about new endpoints, FHIR resource consolidation, and updated URLs and IDs."
|
||||
in-page-nav: true
|
||||
feedback_id: "8a4c0b7b"
|
||||
---
|
||||
|
||||
# {{ page.page_title }}
|
||||
|
||||
BCDA v3 became available July 1, 2026. Existing v1 and v2 users will need to migrate to v3 by July 30, 2027.
|
||||
|
||||
Along with background information, this guide:
|
||||
|
||||
- Introduces the [v3 Data Dictionary]({{ '/assets/downloads/BCDA_v3_Data_Dictionary.xlsx' | relative_url }})
|
||||
- Helps you reformat [requests](#requesting-data-from-new-v3-endpoints) and [URLs](#new-extension-and-code-system-urls) in v3
|
||||
- Introduces the [_typeFilter]({{ '/api-documentation/filter-claims-data.html#the-_typefilter-parameter' | relative_url }}) parameter
|
||||
- Provides additional info on mapping and matching claims and variables between versions
|
||||
|
||||
## Migration overview
|
||||
|
||||
As you migrate from BCDA v1/v2 to v3, you’ll need to become familiar with changes including:
|
||||
|
||||
- New endpoint URL structure
|
||||
- Unified ExplanationOfBenefit resource for all claims
|
||||
- Updated extension and code system URLs
|
||||
- Different resource IDs requiring new matching strategies
|
||||
|
||||
Please note that your initial v3 data request may take extra time. Additionally, as we continue to refine the v3 dataset, some fields will occasionally be re-loaded on our end. Corrected claims will show a more recent `last_updated` date and may result in larger than expected payloads. We will provide updates when these reloads are expected.
|
||||
|
||||
## BCDA v3 overview
|
||||
|
||||
BCDA v3 introduces access to more timely and accurate Medicare claims data and additional benefits to BCDA users including:
|
||||
|
||||
- More consistent claims data by using a single data source, the CMS Integrated Data Repository.
|
||||
- Improved alignment with sources such as the Claim and Claim Line Feed (CCLF) files through more standard claim and patient identifiers.
|
||||
|
||||
### Changes to BCDA in v3
|
||||
|
||||
If you are currently using BCDA v1 or BCDA v2, there are changes to the API and FHIR Resources you need to be aware of in v3:
|
||||
|
||||
- There is a new v3 endpoint: `https://api.bcda.cms.gov/api/v3/`
|
||||
- Partially adjudicated claims<sup><a href="#fn1">1</a></sup> will be represented as `ExplanationOfBenefit` (EOB) FHIR resources in v3, instead of `Claim`/`ClaimResponse` in v2
|
||||
- There will be new Extension and Code System URLs to reference
|
||||
- Resource IDs are different between versions
|
||||
|
||||
<p id="fn1" style="scroll-margin-top: 6.25rem;"><sup>1</sup> Medical claims that have been submitted but not fully processed and paid by Medicare.</p>
|
||||
|
||||
### v3 Data Dictionary
|
||||
|
||||
Download the <a href="{{ '/assets/downloads/BCDA_v3_Data_Dictionary.xlsx' | relative_url }}" data-tealium="download">BCDA v3 Data Dictionary</a> to learn about:
|
||||
|
||||
- updated information on resource type and claim field names
|
||||
- updated mappings between CCLF and BCDA data
|
||||
- new data available in v3
|
||||
|
||||
## Requesting data from new v3 endpoints
|
||||
|
||||
### Point your app to v3 instead of v2
|
||||
|
||||
BCDA v3 will be located at the same domain as v1 and v2. However, it will have new endpoints for metadata requests and the Group and Patient $export operations. BCDA v3 will still support the [Bulk Data FHIR Implementation Guide](https://hl7.org/fhir/uv/bulkdata/STU2/). If you are currently connected to BCDA v1 or v2 endpoints, you can migrate to BCDA v3 by making the following changes.
|
||||
|
||||
Point your app to **v3** instead of **v2** to connect to the new endpoint, complete the steps to export the data, check the job status, read the JSON manifest, and download the files.
|
||||
|
||||
- v2 Patient $export operation:
|
||||
{% include copy_snippet.html code="GET /api/v2/Group/all/$export" language="shell" %}
|
||||
|
||||
- v3 Patient $export operation:
|
||||
{% include copy_snippet.html code="GET /api/v3/Group/all/$export" language="shell" %}
|
||||
|
||||
The /auth and /data URLs will remain the same between versions. You won't need to make any changes to how you request a token or download files.
|
||||
|
||||
## Changes to claims representation
|
||||
|
||||
In BCDA v3, claims data are still returned in FHIR R4 format, but there are changes to the Patient, Coverage, and ExplanationOfBenefit resources. These changes include:
|
||||
- Conformity with [CARIN Blue Button Implementation Guide (v2.2.0)](https://hl7.org/fhir/us/carin-bb/STU2.2/en/)
|
||||
- New StructureDefenition and CodeSystem URLs for CMS-specific extensions and terminologies
|
||||
- New data elements
|
||||
|
||||
Refer to the [v3 Data Dictionary]({{ '/api-documentation/how-to-migrate-v3.html#v3-data-dictionary' | relative_url }}) for a list of v3 supported data elements.
|
||||
|
||||
### Changes to partially adjudicated claims
|
||||
|
||||
BCDA v2 represents fully adjudicated claims by the ExplanationOfBenefit FHIR resource and partially adjudicated claims by the Claim and ClaimResponse resources.
|
||||
|
||||
BCDA v3 represents all claims (fully and partially adjudicated) with the ExplanationOfBenefit resource.
|
||||
|
||||
- v2 - `Claim`/`ClaimResponse` resource
|
||||
- v3 - `ExplanationOfBenefit` resource
|
||||
|
||||
This change in v3 lets you compare claims at different stages in the adjudication process without mapping between resource types.
|
||||
|
||||
### Exporting claims based on adjudication status with v3
|
||||
|
||||
If you make requests for `Claim` and/or `ClaimResponse` resources using the `_type` parameter in v2, you'll need to update those requests in v3.
|
||||
|
||||
#### How it works in v2
|
||||
|
||||
In BCDA v2 you exported claims based on adjudication status using the `_type` parameter, and passing the appropriate resource types (`Claim`, `ClaimResponse` for partially adjudicated claims and `ExplanationOfBenefit` for fully adjudicated claims) as the parameter value:
|
||||
|
||||
- v2 $export for only partially adjudicated claims:
|
||||
{% include copy_snippet.html code="GET /api/v2/Patient/$export?_type=Claim,ClaimResponse" language="shell" %}
|
||||
|
||||
- v2 $export for only fully adjudicated claims:
|
||||
{% include copy_snippet.html code="GET /api/v2/Patient/$export?_type=ExplanationOfBenefit" language="shell" %}
|
||||
|
||||
In v2, BCDA differentiates "partially adjudicated" from "fully adjudicated" claims based on the data source rather than the claim status. BCDA's partially adjudicated data (Claim and ClaimResponse resources) are populated with data from the Medicare Shared Systems which often includes data for claims that had been fully processed and paid.
|
||||
|
||||
#### How it works in v3
|
||||
|
||||
We've extended the API with the [`_typeFilter` parameter]({{ '/api-documentation/filter-claims-data.html#the-_typefilter-parameter' | relative_url }}) to filter export data more granularly. Because all claims in v3 are represented by the same resource type (`ExplanationOfBenefit`), use this parameter to specify the System-Type _tag, recreating your v2 filtering logic.
|
||||
|
||||
Remember when using the _typeFilter parameter:
|
||||
1. The _typeFilter parameter value must be URL-encoded
|
||||
2. The _tag subquery parameter requires a token in the form `system|code`
|
||||
|
||||
{% capture sampleRequest %}{% raw %}
|
||||
GET /api/v3/Patient/$export
|
||||
?_type=ExplanationOfBenefit
|
||||
&_typeFilter=ExplanationOfBenefit%3F_tag%3Dhttps%3A%2F%2Fbluebutton.cms.gov%2Ffhir%2FCodeSystem%2FSystem-Type%7CSharedSystem
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=sampleRequest language="shell" %}
|
||||
|
||||
**If you received `ExplanationOfBenefit`, `Claim`, and `ClaimResponse` resources in v2,** you received all claims.
|
||||
|
||||
In v3, specify all System-Type codes:
|
||||
- SharedSystem
|
||||
- NationalClaimsHistory
|
||||
- DDPS
|
||||
|
||||
{% capture sampleRequest %}{% raw %}
|
||||
GET /api/v3/Patient/$export
|
||||
?_type=ExplanationOfBenefit
|
||||
&_typeFilter=ExplanationOfBenefit%3F_tag%3Dhttps%3A%2F%2Fbluebutton.cms.gov%2Ffhir%2FCodeSystem%2FSystem-Type%7CSharedSystem%2Chttps%3A%2F%2Fbluebutton.cms.gov%2Ffhir%2FCodeSystem%2FSystem-Type%7CNationalClaimsHistory%2Chttps%3A%2F%2Fbluebutton.cms.gov%2Ffhir%2FCodeSystem%2FSystem-Type%7CDDPS
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=sampleRequest language="shell" %}
|
||||
|
||||
**If you used the _type parameter for `_type=Claim,ClaimResponse` in v2 requests,** you received SharedSystem claims only.
|
||||
|
||||
In v3, specify the SharedSystem System-Type code:
|
||||
{% capture sampleRequest %}{% raw %}
|
||||
GET /api/v3/Patient/$export
|
||||
?_type=ExplanationOfBenefit
|
||||
&_typeFilter=ExplanationOfBenefit%3F_tag%3Dhttps%3A%2F%2Fbluebutton.cms.gov%2Ffhir%2FCodeSystem%2FSystem-Type%7CSharedSystem
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=sampleRequest language="shell" %}
|
||||
|
||||
**If you used the _type parameter for `_type=ExplanationOfBenefit` for v2 requests,** you received NationalClaimsHistory claims and DDPS claims.
|
||||
|
||||
In v3, specify the NationalClaimsHistory and DDPS System-Type codes:
|
||||
{% capture sampleRequest %}{% raw %}
|
||||
GET /api/v3/Patient/$export
|
||||
?_type=ExplanationOfBenefit
|
||||
&_typeFilter=ExplanationOfBenefit%3F_tag%3Dhttps%3A%2F%2Fbluebutton.cms.gov%2Ffhir%2FCodeSystem%2FSystem-Type%7CNationalClaimsHistory%2Chttps%3A%2F%2Fbluebutton.cms.gov%2Ffhir%2FCodeSystem%2FSystem-Type%7CDDPS
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=sampleRequest language="shell" %}
|
||||
|
||||
##### Omitting _typeFilter
|
||||
|
||||
In v3, if you make a request without using the `_typeFilter` parameter to filter by System-Type, BCDA will return only NationalClaimsHistory and DDPS claims.
|
||||
|
||||
{% capture sampleRequest %}{% raw %}
|
||||
GET /api/v3/Patient/$export?_type=ExplanationOfBenefit
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=sampleRequest language="shell" %}
|
||||
|
||||
## New extension and code system URLs
|
||||
|
||||
BCDA v3 uses the StructureDefinition and CodeSystem FHIR resources. This is the standard way to represent code system URLs. It makes it easier to access the metadata. You can access the metadata for each Extension and CodeSystem by hitting the URL. This will return a StructureDefinition or CodeSystem FHIR resource.
|
||||
|
||||
### URLs changing between v2 and v3
|
||||
|
||||
Make the following changes to migrate to v3 if you’ve mapped any bluebutton extension or code system URLs:
|
||||
|
||||
#### Changes to Extension URLs
|
||||
|
||||
<table class="usa-table usa-table--borderless usa-table--stacked margin-bottom-4">
|
||||
<caption class="usa-sr-only">Changes to Extension URLs between v2 and v3</caption>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="row">v2 URL</th>
|
||||
<td>
|
||||
{% include copy_snippet.html code="https://bluebutton.cms.gov/resources/variables/nch_near_line_rec_ident_cd/" language="ruby" can_copy=true %}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">v3 URL</th>
|
||||
<td>
|
||||
{% include copy_snippet.html code="https://bluebutton.cms.gov/fhir/StructureDefinition/CLM-NRLN-RIC-CD" language="ruby" can_copy=true %}
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
#### Changes to CodeSystem URLs
|
||||
|
||||
<table class="usa-table usa-table--borderless usa-table--stacked margin-bottom-4">
|
||||
<caption class="usa-sr-only">Changes to CodeSystem URLs between v2 and v3</caption>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="row">v2 URL</th>
|
||||
<td>
|
||||
{% include copy_snippet.html code="https://bluebutton.cms.gov/resources/variables/nch_near_line_rec_ident_cd/" language="ruby" can_copy=true %}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">v3 URL</th>
|
||||
<td>
|
||||
{% include copy_snippet.html code="https://bluebutton.cms.gov/fhir/CodeSystem/CLM-NRLN-RIC-CD" language="ruby" can_copy=true %}
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
If your BCDA client is using any of the v2 URLs, you’ll need to update your code to look for the v3 version.
|
||||
|
||||
## Different resource IDs between versions
|
||||
|
||||
<div class="usa-alert usa-alert--warning">
|
||||
<div class="usa-alert__body">
|
||||
<p class="usa-alert__heading text-bold">Do not use FHIR IDs to match resources between versions.</p>
|
||||
<p class="usa-alert__text">To match <a href="{{ '/api-documentation/how-to-migrate-v3.html#matching-beneficiaries-between-v2-and-v3' | relative_url }}">beneficiaries</a>, use MBI and demographics data. To match <a href="{{ '/api-documentation/how-to-migrate-v3.html#matching-claims-between-v2-and-v3' | relative_url }}">claims</a>, use the claim control number.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
In BCDA v3, the FHIR ID (`Patient.id`, `ExplanationOfBenefit.id`, `Coverage.id`) for a given resource will not match the v2 FHIR resource ID.
|
||||
|
||||
**Example:**
|
||||
|
||||
If you receive the `Patient` resource from BCDA v3, do not look up an existing patient by expecting the v2 `Patient.id` to equal the v3 `Patient.id` value. These values will not match. They are a different set of identifiers. However, the range of v2 and v3 Patient IDs does overlap, so there are some IDs that represent a v2 Patient and v3 Patient. This would not mean they represent the same beneficiary in real life.
|
||||
|
||||
Instead of matching on `Patient.id`, use the relevant CMS identifier (MBI), along with additional supporting resource info (patient demographics like name, date of birth, etc.). Similarly, `ExplanationOfBenefit.id` and Coverage.id will not match between v2 and v3.
|
||||
|
||||
### Matching beneficiaries between v2 and v3
|
||||
|
||||
Because the v2 and v3 Patient IDs will not match, in order to match a v3 patient to a patient you already have in your database, the best way is to use the MBI and demographics. The MBI and demographics should match between versions of BCDA.
|
||||
|
||||
To find the MBI in the FHIR Patient resource, look at the `Patient.identifier` element for an identifier where the `identifier.system` is `http://hl7.org/fhir/sid/us-mbi`. The `identifier.value` will be the MBI.
|
||||
|
||||
Example v3 `Patient.identifier` element:
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
{
|
||||
"identifier": [
|
||||
{
|
||||
"type": {
|
||||
"coding": [
|
||||
{
|
||||
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
|
||||
"code": "MB"
|
||||
}
|
||||
]
|
||||
},
|
||||
"system": "http://hl7.org/fhir/sid/us-mbi",
|
||||
"value": "1S00E00AA08",
|
||||
"period": {
|
||||
"start": "2018-01-24T00:00:00+00:00"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="json" can_copy=true %}
|
||||
|
||||
It is always good practice to have some kind of validation based on patient demographics, like supplementing the MBI exact match with some subset of name, date of birth, and gender matching.
|
||||
|
||||
Once you have matched an existing `Patient`, or created a new one, it is ok to store the BCDA v3 `Patient.id`. It is possible for two different MBIs to reference the same beneficiary, and therefore the same BCDA v3 `Patient`. If that happens, you will see multiple instances of `Patient.identifier` where the system is `http://hl7.org/fhir/sid/us-mbi`. This is rare, but you should be prepared for it to happen.
|
||||
|
||||
Example of v3 `Patient.identifier` with two MBIs:
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
{
|
||||
"identifier": [
|
||||
{
|
||||
"type": {
|
||||
"coding": [
|
||||
{
|
||||
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
|
||||
"code": "MB"
|
||||
}
|
||||
]
|
||||
},
|
||||
"system": "http://hl7.org/fhir/sid/us-mbi",
|
||||
"value": "1S00E00AA08",
|
||||
"period": {
|
||||
"start": "2022-04-05T00:00:00+00:00",
|
||||
"end": "2022-04-12T00:00:00+00:00"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": {
|
||||
"coding": [
|
||||
{
|
||||
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
|
||||
"code": "MB"
|
||||
}
|
||||
]
|
||||
},
|
||||
"system": "http://hl7.org/fhir/sid/us-mbi",
|
||||
"value": "1S00E00AE22",
|
||||
"period": {
|
||||
"start": "2022-04-12T00:00:00+00:00"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="json" can_copy=true %}
|
||||
|
||||
### Matching claims between v2 and v3
|
||||
|
||||
Because the v3 `ExplanationOfBenefit` FHIR ID will not match the v2 `ExplanationOfBenefit` or `Claim`/`ClaimResponse` FHIR IDs, in order to match a v3 claim to a claim you already have in your database, the best way is to use the claim control number.
|
||||
|
||||
Because each version of a claim will have a unique claim ID, you should avoid using the unique claim ID to track a claim across versions, or even within a version across the adjudication journey. Instead, use the claim control number. It is the identifier where the `identifier.system` equals `https://bluebutton.cms.gov/identifiers/CLM-CNTL-NUM`.
|
||||
|
||||
Example `ExplanationOfBenefit.identifier` element:
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
{
|
||||
"identifier": [
|
||||
{
|
||||
"type": {
|
||||
"coding": [
|
||||
{
|
||||
"system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType",
|
||||
"code": "uc",
|
||||
"display": "Unique Claim ID"
|
||||
}
|
||||
]
|
||||
},
|
||||
"value": "-9422919134190"
|
||||
},
|
||||
{
|
||||
"system": "https://bluebutton.cms.gov/identifiers/CLM-CNTL-NUM",
|
||||
"value": "05968201612271KJS"
|
||||
}
|
||||
]
|
||||
}
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="json" can_copy=true %}
|
||||
|
||||
FHIRPath for claim identifier:
|
||||
|
||||
{% include copy_snippet.html code="ExplanationOfBenefit.identifier.where(system = 'https://bluebutton.cms.gov/identifiers/CLM-CNTL-NUM').value" language="ruby" can_copy=true %}
|
||||
218
dev/vendor/bcda-static-site/src/_pages/bcda-data/comparison-bcda-cclf-files.md
vendored
Normal file
218
dev/vendor/bcda-static-site/src/_pages/bcda-data/comparison-bcda-cclf-files.md
vendored
Normal file
@@ -0,0 +1,218 @@
|
||||
---
|
||||
layout: api-docs
|
||||
page_title: "Comparison of BCDA v3 and CCLF Files"
|
||||
seo_title: ""
|
||||
description: ""
|
||||
in-page-nav: true
|
||||
tabs:
|
||||
- label: v3
|
||||
url: /bcda-data/comparison-bcda-cclf-files.html
|
||||
- label: v2
|
||||
url: /v2/bcda-data/comparison-bcda-cclf-files.html
|
||||
---
|
||||
|
||||
# {{ page.page_title }}
|
||||
|
||||
{% include tabs.html items=page.tabs %}
|
||||
|
||||
Beneficiary Claims Data API (BCDA) and [Claim and Claim Line Feed (CCLF)](https://www.cms.gov/files/document/cclf-information-packet.pdf) files both offer Medicare Parts A, B, and D claims data. While the data sources overlap, there are some differences including their formatting and the frequency with which they make data available.
|
||||
|
||||
## Overview of similarities and differences
|
||||
|
||||
BCDA and CCLF files differ in how and when Medicare claims data is made available.
|
||||
|
||||
### BCDA: frequent access and standardization
|
||||
|
||||
As an API, BCDA lets you automate data requests and streamline workflows for more efficient, secure processes. The API uses Fast Healthcare Interoperability Resources ([FHIR](https://www.hl7.org/fhir/)) standards. It also supports frequent and early access to Medicare enrollees' claims data. This includes access to claims that would otherwise be unavailable during processing ("adjudication"). Earlier access to claims helps your organization build near real-time workflows and coordinate care for your patients.
|
||||
|
||||
FHIR breaks claims data into discrete blocks of recognizable data called `Resources`. These use information categories such as Patient, Explanation of Benefit, and Coverage to organize files, which make them easy to share and interpret. BCDA uses the [CMS recommended Bulk FHIR Standards](https://www.cms.gov/priorities/key-initiatives/burden-reduction/interoperability/implementation-guides-and-standards/standards-and-igs-index-and-resources) to export larger amounts of data across systems and populations.
|
||||
|
||||
### CCLF: ease of access and direct delivery
|
||||
|
||||
CCLF files provide adjudicated claims data delivered on a regular cadence, which may be useful for organizations with established file-based workflows or analyses that depend on fields unavailable in BCDA. You can download CCLF files directly from your model-specific portal.
|
||||
|
||||
## Who can use BCDA and CCLF files?
|
||||
|
||||
BCDA and CCLF claims data are available to organizations participating in some [Alternative Payment Models](https://www.cms.gov/priorities/innovation/key-concepts/alternative-payment-models-apms). These are programs that reward health care providers for high-quality, coordinated care. BCDA and CCLF files are currently available to organizations in these models:
|
||||
|
||||
- Medicare Shared Savings Program
|
||||
- Realizing Equity, Access, and Community Health (ACO REACH)
|
||||
- Kidney Care Choices (KCC)
|
||||
- Increasing Organ Transplant Access (IOTA)
|
||||
|
||||
## Differences in access, format, content, and timing
|
||||
|
||||
{% assign unique = 1 %}
|
||||
<table class="usa-table usa-table--stacked usa-table--borderless margin-bottom-0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col" id="col-bcda-{{unique}}">BCDA</th>
|
||||
<th scope="col" id="col-cclf-{{unique}}">CCLF</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="colgroup" colspan="2" id="colgroup-{{unique}}">Access method</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td headers="col-bcda-{{unique}} colgroup-{{unique}}" style="vertical-align: baseline; padding: 1rem; width:50%; border-bottom:0;">Programmatically using API requests</td>
|
||||
<td headers="col-cclf-{{unique}} colgroup-{{unique}}" style="vertical-align: baseline; padding: 1rem; width:50%; border-bottom:0;">Manually using portals or programmatically using API requests or Command Line Interface</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
{% assign unique = 2 %}
|
||||
<table class="usa-table usa-table--stacked usa-table--borderless margin-y-0">
|
||||
<thead class="usa-sr-only">
|
||||
<tr>
|
||||
<th scope="col" id="col-bcda-{{unique}}">BCDA</th>
|
||||
<th scope="col" id="col-cclf-{{unique}}">CCLF</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="colgroup" colspan="2" id="colgroup-{{unique}}">Claims data format</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td headers="col-bcda-{{unique}} colgroup-{{unique}}" style="vertical-align: baseline; padding: 1rem; width:50%; border-bottom:0;">Interoperable and machine-readable, using <a href="https://hl7.org/fhir/R4/">FHIR R4</a>.</td>
|
||||
<td headers="col-cclf-{{unique}} colgroup-{{unique}}" style="vertical-align: baseline; padding: 1rem; width:50%; border-bottom:0;">Human-readable, using <a href="https://www.cms.gov/files/document/cclf-information-packet.pdf">fixed-width tabular files</a>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
{% assign unique = 3 %}
|
||||
<table class="usa-table usa-table--stacked usa-table--borderless margin-y-0">
|
||||
<thead class="usa-sr-only">
|
||||
<tr>
|
||||
<th scope="col" id="col-bcda-{{unique}}">BCDA</th>
|
||||
<th scope="col" id="col-cclf-{{unique}}">CCLF</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="colgroup" colspan="2" id="colgroup-{{unique}}">Claims data source</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td headers="col-bcda-{{unique}} colgroup-{{unique}}" style="vertical-align: baseline; padding: 1rem; width:50%; border-bottom:0;">National Claims History and CMS Shared Systems data from the Integrated Data Repository (IDR)</td>
|
||||
<td headers="col-cclf-{{unique}} colgroup-{{unique}}" style="vertical-align: baseline; padding: 1rem; width:50%; border-bottom:0;">National Claims History data from the Integrated Data Repository (IDR)</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
{% assign unique = 4 %}
|
||||
<table class="usa-table usa-table--stacked usa-table--borderless margin-y-0">
|
||||
<thead class="usa-sr-only">
|
||||
<tr>
|
||||
<th scope="col" id="col-bcda-{{unique}}">BCDA</th>
|
||||
<th scope="col" id="col-cclf-{{unique}}">CCLF</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="colgroup" colspan="2" id="colgroup-{{unique}}">Historical data provided on newly attributed enrollees</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td headers="col-bcda-{{unique}} colgroup-{{unique}}" style="vertical-align: baseline; padding: 1rem; width:50%; border-bottom:0;">
|
||||
<ul style="margin: 0; padding-left: 1rem;">
|
||||
<li>Shared Savings Program: all historical data available as far back as 2014</li>
|
||||
<li>ACO REACH: 36 months of historical data from the start of the current performance year</li>
|
||||
<li>KCC: 24 months of historical data from the start of the current performance year</li>
|
||||
</ul>
|
||||
</td>
|
||||
<td headers="col-cclf-{{unique}} colgroup-{{unique}}" style="vertical-align: baseline; padding: 1rem; width:50%; border-bottom:0;">
|
||||
<ul style="margin: 0; padding-left: 1rem;">
|
||||
<li>Shared Savings Program: 36 months prior to agreement start date</li>
|
||||
<li>ACO REACH: 36 months of historical data from the start of the current performance year</li>
|
||||
<li>KCC: 36 months of historical data from the start of the current performance year</li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
{% assign unique = 5 %}
|
||||
<table class="usa-table usa-table--stacked usa-table--borderless margin-y-0">
|
||||
<thead class="usa-sr-only">
|
||||
<tr>
|
||||
<th scope="col" id="col-bcda-{{unique}}">BCDA</th>
|
||||
<th scope="col" id="col-cclf-{{unique}}">CCLF</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="colgroup" colspan="2" id="colgroup-{{unique}}">Update frequency</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td headers="col-bcda-{{unique}} colgroup-{{unique}}" style="vertical-align: baseline; padding: 1rem; width:50%; border-bottom:0;">
|
||||
<ul style="margin: 0; padding-left: 1rem;">
|
||||
<li>Adjudicated claims (Medicare Part A and Part B): weekly</li>
|
||||
<li>Adjudicated claims (Medicare Part D): 6x/week</li>
|
||||
<li>Partially adjudicated claims: 4 to 5x/week</li>
|
||||
</ul>
|
||||
</td>
|
||||
<td headers="col-cclf-{{unique}} colgroup-{{unique}}" style="vertical-align: baseline; padding: 1rem; width:50%; border-bottom:0;">
|
||||
<ul style="margin: 0; padding-left: 1rem;">
|
||||
<li>Adjudicated claims: monthly</li>
|
||||
<li>Adjudicated claim extracts: weekly<sup><a href="#fn1">*</a></sup></li>
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<ul>
|
||||
<li id="fn1" style="scroll-margin-top: 6.25rem;">CCLF Self-Service is only available to ACOs in the Medicare Shared Savings Program. Visit the <a href="https://acoms.cms.gov/knowledge-management/view/8321">ACO-MS Knowledge Library</a> to learn more about CCLF Self-Service.</li>
|
||||
</ul>
|
||||
|
||||
## Which data source is right for me?
|
||||
|
||||
Both sources support model entities' use cases, and can even be used together. When choosing between them, consider the frequency, source, and level of automation most suited to your needs. You can also consider your organization's existing healthcare analytics and actuarial tools. A benefit of BCDA is its conformance with FHIR standards. This saves time and money on integrations with EHRs and off-the-shelf FHIR data clients.
|
||||
|
||||
BCDA aligns with CCLF partly by using shared claim identifiers. This alignment makes it easy to use both CCLF files and BCDA's standards-based format.
|
||||
|
||||
### Can I use both CCLF and BCDA as sources of Medicare claims data?
|
||||
|
||||
Yes. Using both data sources provides many benefits:
|
||||
|
||||
- Ensure data accuracy: Compare and cross-reference both sources to access a wider variety of historical data and identify any discrepancies.
|
||||
- Evaluate care coordination and payment processes: Combine BCDA's insurance coverage details with CCLF files' payment data. This can evaluate the coordination of benefits between Medicare and other insurers, assess the financial impact on all parties, and identify primary or secondary payers.
|
||||
|
||||
## How soon will I receive claims data from BCDA v3 and CCLF files?
|
||||
|
||||
Depending on the model your organization participates in, claims data can be available:
|
||||
|
||||
- 2-4 days after the claim is **submitted to CMS** via BCDA v3
|
||||
- 1-7 days after the claim is **adjudicated by CMS** via CCLF
|
||||
|
||||
The following diagram illustrates these differences while providing more detail about the claims process.
|
||||
|
||||
<figure class="width-full margin-y-4 margin-x-0" style="border: 1px solid #f0f0f0; border-radius: 4px; overflow:hidden; padding: 12px;">
|
||||
<img
|
||||
src="{{ '/assets/img/bcda-vs-cclf.svg' | relative_url }}"
|
||||
alt="Timeline of when claim data becomes available to users through BCDA and CCLF after providers submit a claim."
|
||||
class="width-full"
|
||||
>
|
||||
<figcaption class="usa-sr-only">
|
||||
<ul>
|
||||
<li>Through BCDA: a partially adjudicated claim is available 2 to 4 days after submission and continues to update every 2 to 4 days while CMS is processing. Once the claim is fully adjudicated, it is available through BCDA within 1 to 7 days.</li>
|
||||
<li>Through CCLF: the fully adjudicated claim is available via CCLF Self-Service 1 to 7 days after adjudication and via the CCLF monthly feed 2 to 6 weeks after full adjudication.</li>
|
||||
</ul>
|
||||
</figcaption>
|
||||
</figure>
|
||||
|
||||
## Which data fields in BCDA v3 are not available from CCLF files?
|
||||
|
||||
The BCDA v3 Data Dictionary contains a comprehensive list of all data fields available in BCDA v3 and includes a mapping to the equivalent or related CCLF file and element.
|
||||
|
||||
<p>For an exhaustive list of fields available only in BCDA v3, look for rows where the <code class="language-plaintext highlighter-rouge">cclfMapping</code> column is blank in the "Data Dictionary" worksheet in the <a href="{{ '/assets/downloads/BCDA_v3_Data_Dictionary.xlsx' | relative_url }}" data-tealium="download">BCDA v3 Data Dictionary {% include sprite.html icon="file_download" class="text-middle" size="2" %}</a>.</p>
|
||||
|
||||
## Which data fields in CCLF files are not available from BCDA v3?
|
||||
|
||||
The majority of data elements found in CCLF files are also available from BCDA v3. There are some elements not available from BCDA v3 including:
|
||||
|
||||
- Legacy HICN identifiers
|
||||
- Certain beneficiary demographic information
|
||||
- CCLF metadata
|
||||
- Data fields from inactive programs
|
||||
|
||||
Review the "CCLF fields absent from BCDA v3" worksheet in the BCDA v3 Data Dictionary for a comprehensive list of fields found in CCLF files which are unavailable in BCDA v3.
|
||||
231
dev/vendor/bcda-static-site/src/_pages/bcda-data/partially-adjudicated-claims-data.md
vendored
Normal file
231
dev/vendor/bcda-static-site/src/_pages/bcda-data/partially-adjudicated-claims-data.md
vendored
Normal file
@@ -0,0 +1,231 @@
|
||||
---
|
||||
layout: api-docs
|
||||
page_title: "Partially Adjudicated Claims Data"
|
||||
seo_title: ""
|
||||
description: "Get earlier access to Medicare enrollee data with BCDA partially adjudicated claims, now available as ExplanationOfBenefit resources in v3."
|
||||
in-page-nav: true
|
||||
feedback_id: "355f6ea6"
|
||||
tabs:
|
||||
- label: v3
|
||||
url: /bcda-data/partially-adjudicated-claims-data.html
|
||||
- label: v2
|
||||
url: /v2/bcda-data/partially-adjudicated-claims-data.html
|
||||
---
|
||||
|
||||
# {{ page.page_title }}
|
||||
|
||||
{% include tabs.html items=page.tabs %}
|
||||
|
||||
<p class="usa-intro">A faster way to access claims data</p>
|
||||
|
||||
Medicare claims processing (adjudication) can take weeks. Through partially adjudicated claims, ACO REACH participants (REACH ACOs) receive patient data only 2-4 days after providers submit claims to Medicare. This helps them provide patients with more effective interventions, transitions, and coordination of care.
|
||||
|
||||
Fully adjudicated claims offer the same rich insights, with some small differences including a longer frequency.
|
||||
|
||||
## Comparison: partially and fully adjudicated claims
|
||||
|
||||
<table class="usa-table usa-table--borderless usa-table--stacked margin-bottom-4">
|
||||
<caption class="usa-sr-only">Partially versus fully adjudicated claims data</caption>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">Partially adjudicated claims</th>
|
||||
<th scope="col">Fully adjudicated claims</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr scope="row">
|
||||
<td data-label="Partially adjudicated claims">
|
||||
Update daily
|
||||
</td>
|
||||
<td data-label="Fully adjudicated claims">
|
||||
Update weekly
|
||||
</td>
|
||||
</tr>
|
||||
<tr scope="row">
|
||||
<td data-label="Partially adjudicated claims">
|
||||
Available to all <a href="{{ '/index.html#eligible-model-entities' | relative_url }}">eligible model
|
||||
entities</a>, except <a
|
||||
href="https://www.cms.gov/priorities/innovation/innovation-models/guide"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>GUIDE</a> participants
|
||||
</td>
|
||||
<td data-label="Fully adjudicated claims">
|
||||
Available to all <a href="{{ '/index.html#eligible-model-entities' | relative_url }}">eligible model
|
||||
entities</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr scope="row">
|
||||
<td data-label="Partially adjudicated claims">
|
||||
Requires BCDA v2<sup><a href="#fn1">*</a></sup> or v3
|
||||
</td>
|
||||
<td data-label="Fully adjudicated claims">
|
||||
Available in all BCDA versions
|
||||
</td>
|
||||
</tr>
|
||||
<tr scope="row">
|
||||
<td data-label="Partially adjudicated claims">
|
||||
Sourced from Medicare Shared Systems
|
||||
</td>
|
||||
<td data-label="Fully adjudicated claims">
|
||||
Sourced from National Claims History (NCH)
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<ul>
|
||||
<li id="fn1" style="scroll-margin-top: 6.25rem;">Access to partially adjudicated claims data using BCDA v2 is limited to REACH ACOs. Participants in other CMS Innovation Models and the Medicare Shared Savings Program must use BCDA v3 to access partially adjudicated claims data.</li>
|
||||
</ul>
|
||||
|
||||
## What's in partially adjudicated claims data?
|
||||
|
||||
- In BCDA v3, partially adjudicated claims data:
|
||||
- Are represented with 1 FHIR resource type:
|
||||
- <a href="https://hl7.org/fhir/R4/explanationofbenefit.html" target="_blank" rel="noopener noreferrer">ExplanationOfBenefit (EOB)</a> - Information about the professional and institutional claims that providers submit for payment and information about a claim's adjudication status and processing results
|
||||
- Contain Part A and Part B data from the current performance year and historical claims data from the previous 2 or more performance years, depending on your organization’s Alternative Payment Model.
|
||||
- In BCDA v2, partially adjudicated claims data:
|
||||
- Are represented with 2 FHIR resource types:
|
||||
- <a href="https://hl7.org/fhir/R4/claim.html" target="_blank" rel="noopener noreferrer">Claim</a> - Information about the professional and institutional claims that providers submit for payment (including the services that enrollees receive)
|
||||
- <a href="https://hl7.org/fhir/R4/claimresponse.html" target="_blank" rel="noopener noreferrer">ClaimResponse</a> - Information about a claim's adjudication status and processing results
|
||||
- Contain Part A and Part B data (excluding Durable Medical Equipment) with updates from the past 60 days
|
||||
|
||||
## What's in fully adjudicated claims data?
|
||||
|
||||
In all versions of BCDA, adjudicated claims data:
|
||||
- Are represented with 3 FHIR resource types:
|
||||
- <a href="https://hl7.org/fhir/R4/patient.html" target="_blank" rel="noopener noreferrer">Patient</a> - Enrollees' demographic details and updates to their patient identifiers.
|
||||
- <a href="https://hl7.org/fhir/R4/coverage.html" target="_blank" rel="noopener noreferrer"> Coverage</a> - Enrollees' insurance coverage details, including dual coverage.
|
||||
- <a href="https://hl7.org/fhir/R4/explanationofbenefit.html" target="_blank" rel="noopener noreferrer"> ExplanationOfBenefit</a> - Details for episodes of care, including where and when the service was performed, diagnosis codes, provider, and cost of care.
|
||||
- Contain Part A, Part B, and Part D data from the current performance year and historical claims data from the previous 2 or more performance years, depending on your organization's Alternative Payment Model
|
||||
|
||||
|
||||
## How do I know when a claim has been fully processed?
|
||||
|
||||
|
||||
All EOBs contain the <a href="https://hl7.org/fhir/R4/explanationofbenefit-definitions.html#ExplanationOfBenefit.outcome" target="_blank" rel="noopener noreferrer">ExplanationOfBenefit.outcome</a> element which will indicate if the claim is still processing. If you wish to include only EOBs that have been fully processed and paid in your job requests, see our guidance on <a href="{{ '/api-documentation/filter-claims-data.html#the-_typefilter-parameter' | relative_url }}">filtering claims by `ExplanationOfBenefit.outcome` using _typeFilter</a>.
|
||||
|
||||
### Matching multiple EOBs to the same claim
|
||||
|
||||
In v3, claims are automatically deduplicated within a source system. You won't need to deduplicate multiple versions of a claim within the same System-Type.
|
||||
|
||||
However, if you are receiving claims with the `SharedSystem` System-Type AND claims with the `NationalClaimsHistory` System-Type, then it is possible to receive two versions of the same claim as two different ExplanationOfBenefit resources.
|
||||
|
||||
To identify EOBs that represent the same claim, use the `CLM-CNTL-NUM` identifier `ExplanationOfBenefit.identifier.where('system'='https://bluebutton.cms.gov/fhir/CodeSystem/CLM-CNTL-NUM').value` to identify the matching pair. If two EOBs have the same Claim Control Number, then they represent the same claim.
|
||||
|
||||
Example identifier element with claim control number:
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
"identifier": [
|
||||
{
|
||||
"system": "https://bluebutton.cms.gov/identifiers/CLM-CNTL-NUM",
|
||||
"value": "-01614121123648SZF"
|
||||
}
|
||||
]
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="json" can_copy=true %}
|
||||
|
||||
There may be some instances in which a claim can't be de-duplicated via `CLM-CNTL-NUM`:
|
||||
|
||||
- #### Changes in Claim Control Number
|
||||
If a claim receives a new claim control number, a previous claim control number will be available in `ExplanationOfBenefit.related`, and can be used to de-duplicate claims even if the claim control number has changed.
|
||||
|
||||
- #### PDE Claims
|
||||
Because Medicare does not process Part D / Prescription claims directly, the rules to identify related claims are a bit different than Part A / Part B claims.
|
||||
|
||||
Part D claims are submitted to CMS by the Part D plan sponsors. As a result, not all Part D claims have a claim control number. However, those that do have a claim control number can be deduplicated using it.
|
||||
|
||||
For claims without a claim control number, you can use a natural key to link together related Part D Events for a given patient. The natural key logic is outlined in <a href="https://www.cms.gov/files/document/cclf-information-packet.pdf" target="_blank" rel="noopener">CCLF Information Packet</a> under Section 5.1.2, and repeated here:
|
||||
|
||||
- Line Item From Date (`CLM_LINE_FROM_DT`)
|
||||
- Provider Service Identifier Qualifier Code (`PRVDR_SRVC_ID_QLFYR_CD`)
|
||||
- Service Provider Generic ID Number (`CLM_SRVC_PRVDR_GNRC_ID_NUM`)
|
||||
- RX Number (`CLM_LINE_RX_SRVC_RFRNC_NUM`)
|
||||
- RX Fill Number (`CLM_LINE_RX_FILL_NUM`)
|
||||
|
||||
- #### DME Claims
|
||||
When a claim from VMS is processed and released to the NCH, the leading digit (a 1) is dropped from the `CLM-CNTL-NUM`, due to a design decision made in preparation for Y2K.
|
||||
<table class="usa-table usa-table--borderless margin-bottom-4">
|
||||
<caption>Example</caption>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">VMS Claim Control Number</th>
|
||||
<th scope="col">NCH Claim Control Number</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>1222222222222222</td>
|
||||
<td>222222222222222</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
### Tracking a Claim After it is Fully Processed
|
||||
|
||||
After a claim is fully adjudicated and released to the National Claims History system, it is still possible for updates to be made to the claim. Similar to matching ExplanationOfBenefit resources from different sources in the same export, you may need logic to match a claim from a current export to an existing claim from a previous export. Most of the time, you can still rely on the claim control number or the parent/original claim control number in `ExplanationOfBenefit.related`.
|
||||
|
||||
A couple of quirks to call out:
|
||||
|
||||
- **Professional claims:** NCH professional claims will never populate a new claim control number. Each new version of the claim will appear to have the original claim control number.
|
||||
- **Institutional claims:** If an NCH institutional claim receives multiple rounds of claim control numbers, only the parent (the immediately-preceding claim control number) will be populated in `ExplanationOfBenefit.related`.
|
||||
|
||||
## Get started with partially adjudicated claims data
|
||||
|
||||
Access partially adjudicated claims data in the <a href="{{ '/api-documentation/get-a-bearer-token.html#sample-claims-data-sets' | relative_url }}">BCDA Sandbox</a>.
|
||||
|
||||
Review the <a href="{{ '/assets/downloads/BCDA_v3_Data_Dictionary.xlsx' | relative_url }}" data-tealium="download">Data Dictionary {% include sprite.html icon="file_download" class="text-middle"%}</a> for a complete list and description of the data fields.
|
||||
|
||||
## Use cases
|
||||
|
||||
### Example 1: Improve transition of care
|
||||
|
||||
<p class="usa-intro font-ui-md text-italic text-base">REACH ACOs can check if post-discharge processes are in place for
|
||||
an attributed enrollee shortly after a hospital discharge. Benefits include reduced readmissions and healthcare costs.
|
||||
</p>
|
||||
|
||||
On May 1, 2022, Mrs. Gonzales is doing better after a bout of pneumonia and is released home from the hospital. The hospital submits a claim for her stay to Medicare on May 3, 2022.
|
||||
|
||||
1. BCDA receives partially adjudicated claims data that reflects this update. This is identified by a Document Control Number (DCN) within a few days.
|
||||
2. A REACH ACO sets up a dashboard to track newly identified discharges. After receiving an automated care-coordination alert for Mrs. Gonzales, they're able to follow up on her post-discharge care in a timely manner.
|
||||
3. Using supplemental data, the REACH ACO adds filters to the dashboard for parameters of interest like whether the discharging hospital is in-network.
|
||||
4. BCDA will reflect any status changes to the claim, for example if Mrs. Gonzales' claim is returned to the provider or adjusted.
|
||||
5. These changes may involve updates to key variables used for care coordination, like diagnosis codes. The claims data will indicate the final status once a claim finishes adjudication and is submitted for payment.
|
||||
6. BCDA's adjudicated data will pick up this claim after several additional processing steps. This is typically up to 14 days after adjudication.
|
||||
|
||||
REACH ACOs can also flag and identify patients who have a high risk of readmission based on factors like past diagnosis. Early access to claims data can help reduce readmissions and healthcare costs.
|
||||
|
||||
### Example 2: Identify opportunities for intervention
|
||||
|
||||
<p class="usa-intro font-ui-md text-italic text-base">REACH ACOs can monitor outpatient events for follow-up care and
|
||||
track patterns that often indicate future utilization. The data can be used to target case management and deliver
|
||||
clinically appropriate follow-up care. Additionally it can help reduce the volume of unnecessary procedures.</p>
|
||||
|
||||
On September 6, 2022, Mr. Fritz underwent a duplex scan to evaluate for carotid artery stenosis. The cardiology clinic submits a claim for this procedure to Medicare on September 8, 2022.
|
||||
|
||||
1. BCDA receives partially adjudicated claims data that reflects this update. This is identified by a Claim Control Number in a few days.
|
||||
2. A REACH ACO creates a dashboard to track procedures that merit review. Mr. Fritz's service is flagged because it signals the surgeon may be planning a carotid endarterectomy procedure.
|
||||
3. However, if Mr. Fritz does not have neurological symptoms, this procedure may not be a recommended course of action. The REACH ACO is able to activate protocols to alert Mr. Fritz's primary care provider for intervention.
|
||||
4. As with example 1, BCDA will reflect any status changes to the claim.
|
||||
5. Similarly, BCDA's adjudicated data will pick up this claim.
|
||||
|
||||
REACH ACOs can also track performance on cases where the care may be of limited value. For example, if Mr. Fritz does not have neurologic symptoms, then this kind of scan has been indicated to be more harmful than beneficial. This information could be used by the REACH ACO to reduce the volume of unnecessary procedures.
|
||||
|
||||
### Example 3: Enhance care coordination
|
||||
|
||||
<p class="usa-intro font-ui-md text-italic text-base">REACH ACOs can learn more about their patients' health histories, build their clinical profiles, and improve care coordination.</p>
|
||||
|
||||
Ms. Thompson began treatment for breast cancer on March 8, 2023. She is experiencing nausea and dehydration as a result of chemotherapy. While visiting family on March 14, she drove to an emergency room (ER) 50 miles from home. She was treated with IV fluids and nausea medication.
|
||||
|
||||
1. BCDA receives partially adjudicated claims data that reflects this update. This is identified by a Claim Control Number in a few days.
|
||||
2. This emergency room visit may provide useful insights into Ms. Thompson's health history and chemotherapy journey. If Ms. Thompson is experiencing symptoms, her plan of treatment may need to be adjusted moving forward.
|
||||
3. REACH ACOs can track procedures and services, including those from a different system, to get a holistic view of patients' health histories. They can then follow up with the patient and/or provider to improve care coordination.
|
||||
|
||||
REACH ACOs can also monitor the rate of emergency services used by patients undergoing active cancer treatment and following transplantation.
|
||||
|
||||
In the past, it would take weeks to know whether patients received care outside the network. Partially adjudicated claims data allows REACH ACOs to more quickly identify and investigate out-of-network care.
|
||||
|
||||
## Additional resources
|
||||
|
||||
- <a href="https://www.medicare.gov/what-medicare-covers" target="_blank" rel="noopener noreferrer">Services covered by Medicare Parts A and B</a>
|
||||
- <a href="https://4innovation.cms.gov/secure/knowledge-management/view/341" target="_blank" rel="noopener noreferrer">Original Medicare (OM) Claims Processing</a> (requires 4i access)
|
||||
- <a href="https://4innovation.cms.gov/secure/knowledge-management/view/491" target="_blank" rel="noopener noreferrer">Reporting and Data Sharing Overview</a> (requires 4i access)
|
||||
156
dev/vendor/bcda-static-site/src/_pages/support/faqs.md
vendored
Normal file
156
dev/vendor/bcda-static-site/src/_pages/support/faqs.md
vendored
Normal file
@@ -0,0 +1,156 @@
|
||||
---
|
||||
layout: support
|
||||
page_title: "Frequently Asked Questions"
|
||||
seo_title: ""
|
||||
description: "Frequently asked questions about BCDA."
|
||||
in-page-nav: true
|
||||
---
|
||||
|
||||
# {{ page.page_title }}
|
||||
|
||||
## About the API
|
||||
|
||||
### Who is eligible to use Beneficiary Claims Data API (BCDA)?
|
||||
|
||||
BCDA supports organizations (entities) participating in the following CMS [alternative payment models](https://www.cms.gov/priorities/innovation/about/alternative-payment-models){:target="_blank" rel="noopener"}:
|
||||
|
||||
- [ACCESS (Advancing Chronic Care with Effective, Scalable Solutions)](https://www.cms.gov/priorities/innovation/innovation-models/access){:target="_blank" rel="noopener"}
|
||||
- [ACO REACH (Accountable Care Organization Realizing Equity, Access, and Community Health)](https://www.cms.gov/priorities/innovation/innovation-models/aco-reach){:target="_blank" rel="noopener"}
|
||||
- [GUIDE (Guiding an Improved Dementia Experience)](https://www.cms.gov/priorities/innovation/innovation-models/guide){:target="_blank" rel="noopener"}
|
||||
- [IOTA (Increasing Organ Transplant Access)](https://www.cms.gov/priorities/innovation/innovation-models/iota){:target="_blank" rel="noopener"}
|
||||
- [KCC (Kidney Care Choices)](https://www.cms.gov/priorities/innovation/innovation-models/kidney-care-choices-kcc-model){:target="_blank" rel="noopener"}
|
||||
- [SSP (Shared Savings Program)](https://www.cms.gov/medicare/payment/fee-for-service-providers/shared-savings-program-ssp-acos){:target="_blank" rel="noopener"}
|
||||
|
||||
### When do terminated and discontinued model entities lose API access?
|
||||
|
||||
Terminated and discontinued organizations lose access to the API, including runouts data, the same day their participation in the model ends.
|
||||
|
||||
### What's the difference between BCDA and CCLF files?
|
||||
|
||||
CCLF files are automatically available monthly using 12 flat files, and can be downloaded weekly upon request.
|
||||
|
||||
BCDA updates adjudicated claims weekly and partially adjudicated claims 4x/week using 3 NDJSON files (Coverage, Patient, ExplanationOfBenefit).
|
||||
|
||||
Additionally, BCDA is an API that uses the [Bulk Fast Healthcare Interoperability Resources (FHIR)](https://hl7.org/fhir/uv/bulkdata/){:target="_blank" rel="noopener noreferrer"} format, as required by CMS. [Learn more about the differences]({{ '/bcda-data/comparison-bcda-cclf-files.html' | relative_url }}).
|
||||
|
||||
### What's the difference between BCDA v2 and v3?
|
||||
|
||||
BCDA v3 introduces a number of improvements, including:
|
||||
|
||||
- More frequent and timely updates
|
||||
- Easier claims tracking
|
||||
- Enhanced filtering capabilities
|
||||
- Simplified, reliable data mapping capabilities
|
||||
- Improved conformance with select FHIR Implementation Guides
|
||||
- Simplified linking between partially and fully adjudicated claims
|
||||
- Uses consistent claim identifiers across all phases of adjudication
|
||||
|
||||
We’ve also corrected issues some users encountered with v1 and v2 such as:
|
||||
|
||||
- Mismatched data between BCDA resources and CCLF files
|
||||
- Missing data for newly attributed enrollees
|
||||
- Issues for enrollees assigned more than one BENE_ID
|
||||
|
||||
You can learn more about v3 improvements and problems solved at [Introducing BCDA v3]({{ '/about/introducing-v3.html' | relative_url }}).
|
||||
|
||||
## Compliance and restrictions
|
||||
{: .margin-bottom-2}
|
||||
|
||||
### How do I redact PHI and PII when sharing information?
|
||||
|
||||
Completely cover or label [Personally Identifiable Information (PII)](https://www.hhs.gov/answers/hhs-administrative/what-is-pii/index.html) and [Protected Health Information (PHI)](https://www.hhs.gov/answers/hipaa/what-is-phi/index.html) as “REDACTED” in emails, screenshots, and documents. Ensure any masks are 100% opaque and in a format that supports layers.
|
||||
|
||||
Examples of PII and PHI:
|
||||
|
||||
- Medicare Beneficiary Identifier (MBI)
|
||||
- Taxpayer Identification Number (TIN)
|
||||
- National Provider Identifier (NPI)
|
||||
- Social Security Number (SSN)
|
||||
- API keys or access credentials (e.g., client ID and secret)
|
||||
- authorization or bearer tokens
|
||||
|
||||
PII and PHI are often found in API requests or response payloads referenced in:
|
||||
|
||||
- the text of your Google Group posts or emails
|
||||
- files attached to your Google Group posts or emails (e.g., XMLs, JSONs)
|
||||
- screenshots attached to your Google Group posts or emails
|
||||
|
||||
Example of a redacted response:
|
||||
|
||||
{% capture curlSnippet %}{% raw %}
|
||||
{
|
||||
"taxpayerIdentificationNumber": "REDACTED",
|
||||
"nationalProviderIdentifier": "REDACTED"
|
||||
}
|
||||
{% endraw %}{% endcapture %}
|
||||
{% include copy_snippet.html code=curlSnippet language="json" %}
|
||||
|
||||
### Can I use 3rd party web-based REST clients or tools?
|
||||
|
||||
Use caution with 3rd party web-based clients. By sharing your credentials, you may be allowing them to make REST calls on your behalf. This is a serious data privacy and security risk. We recommend using secure REST client tools.
|
||||
|
||||
## Claims processing timeline
|
||||
|
||||
### How long does it take BCDA to receive a claim after it is submitted?
|
||||
|
||||
It typically takes 2-4 days after submission for BCDA to receive [partially adjudicated claims data]({{ '/bcda-data/partially-adjudicated-claims-data.html' | relative_url }}) and up to 7 days for adjudicated claims data. Even after adjudication, claims may go through additional processing. BCDA will continue to provide the latest updates available for each claim.
|
||||
|
||||
According to Section 6404 of the Affordable Care Act, Original Medicare claims must be submitted within 12 months (1 calendar year) of the date of service.
|
||||
|
||||
### Where does the data come from?
|
||||
|
||||
BCDA v3 sources data from CMS's Integrated Data Repository (IDR).
|
||||
|
||||
For earlier versions of BCDA, adjudicated claims data is loaded from the [Chronic Conditions Data Warehouse (CCW)](https://www2.ccwdata.org/web/guest/home/){:target="_blank" rel="noopener noreferrer"}. Partially adjudicated claims data is loaded from the Fiscal Intermediary Standard System (FISS) and Multi-Carrier System (MCS).
|
||||
|
||||
### How often is data refreshed?
|
||||
|
||||
The following table shows how frequently Medicare claims data is refreshed and potentially available to eligible organizations.
|
||||
|
||||
<table class="usa-table usa-table--borderless usa-table--stacked margin-bottom-2">
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">FHIR Resource</th>
|
||||
<th scope="col">BCDA v3</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<th scope="row">Patient</th>
|
||||
<td>6x/week, Sunday to Friday</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">Coverage</th>
|
||||
<td>6x/week, Sunday to Friday</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">ExplanationOfBenefit - Part A/B (National Claims History)</th>
|
||||
<td>Weekly, on Monday<sup><a href="#refresh-fn1">1</a></sup></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">ExplanationOfBenefit - Part D</th>
|
||||
<td>5x/week, Sunday to Thursday</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th scope="row">ExplanationOfBenefit - Part A/B (Shared Systems)</th>
|
||||
<td>4x/week, Sunday and Tuesday to Thursday</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<sup>1</sup> Data is loaded on the Monday after it's loaded into the source system, 0-7 days from processing or "adjudication."
|
||||
{: #refresh-fn1 .font-body-2xs style="scroll-margin-top: 6.25rem;"}
|
||||
|
||||
To stay up to date with the latest claims data for your enrollees, we recommend exporting data from National Claims History once per week, and daily for all other sources. Use the [_since parameter]({{ '/api-documentation/filter-claims-data.html#the-_since-parameter' | relative_url }}) when running jobs to avoid downloading duplicate data.
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Why do I get connection timeout issues with my production credentials?
|
||||
|
||||
BCDA requires that all production requests come from a registered IP address. Make sure the IP addresses you're using to request data have been added to the Allow List in your model-specific system. Visit [Production Access]({{ '/production-access.html' | relative_url }}) for more details.
|
||||
|
||||
### Why am I getting a 429 error response?
|
||||
|
||||
A status code of 429 indicates “Too Many Requests.” Wait until the period of time specified in the header has passed before making more requests.
|
||||
|
||||
This makes sure your client can adapt without manual intervention, even if the rate-limiting parameters change. [Learn more about the 429 status code.]({{ '/api-documentation/access-claims-data.html' | relative_url }}#response-example-too-many-requests)
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack api serve
|
||||
sidebar_position: 66
|
||||
sidebar_position: 81
|
||||
---
|
||||
|
||||
# `stack api serve`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack api
|
||||
sidebar_position: 65
|
||||
sidebar_position: 80
|
||||
---
|
||||
|
||||
# `stack api`
|
||||
|
||||
23
docs/docs/cli/bcda-adopt.md
Normal file
23
docs/docs/cli/bcda-adopt.md
Normal file
@@ -0,0 +1,23 @@
|
||||
---
|
||||
title: stack bcda adopt
|
||||
sidebar_position: 16
|
||||
---
|
||||
|
||||
# `stack bcda adopt`
|
||||
|
||||
```
|
||||
Usage: stack bcda adopt [OPTIONS] JOB_ID
|
||||
|
||||
Download a completed job this store did not start.
|
||||
|
||||
╭─ Arguments ──────────────────────────────────────────────────────────────────╮
|
||||
│ * job_id TEXT Server job id (see `stack bcda jobs`). [required] │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
╭─ Options ────────────────────────────────────────────────────────────────────╮
|
||||
│ --preset TEXT Public sandbox entity when BCDA_CLIENT_ID is unset. │
|
||||
│ [default: Large Model Entity] │
|
||||
│ --type -t TEXT Resource type(s) the job holds, for the store │
|
||||
│ record. │
|
||||
│ --help Show this message and exit. │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
```
|
||||
18
docs/docs/cli/bcda-auth.md
Normal file
18
docs/docs/cli/bcda-auth.md
Normal file
@@ -0,0 +1,18 @@
|
||||
---
|
||||
title: stack bcda auth
|
||||
sidebar_position: 13
|
||||
---
|
||||
|
||||
# `stack bcda auth`
|
||||
|
||||
```
|
||||
Usage: stack bcda auth [OPTIONS]
|
||||
|
||||
Issue a token and show attribution status.
|
||||
|
||||
╭─ Options ────────────────────────────────────────────────────────────────────╮
|
||||
│ --preset TEXT Public sandbox entity when BCDA_CLIENT_ID is unset. │
|
||||
│ [default: Large Model Entity] │
|
||||
│ --help Show this message and exit. │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
```
|
||||
21
docs/docs/cli/bcda-cancel.md
Normal file
21
docs/docs/cli/bcda-cancel.md
Normal file
@@ -0,0 +1,21 @@
|
||||
---
|
||||
title: stack bcda cancel
|
||||
sidebar_position: 18
|
||||
---
|
||||
|
||||
# `stack bcda cancel`
|
||||
|
||||
```
|
||||
Usage: stack bcda cancel [OPTIONS] JOB_ID
|
||||
|
||||
Cancel an in-progress job.
|
||||
|
||||
╭─ Arguments ──────────────────────────────────────────────────────────────────╮
|
||||
│ * job_id TEXT Server job id. [required] │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
╭─ Options ────────────────────────────────────────────────────────────────────╮
|
||||
│ --preset TEXT Public sandbox entity when BCDA_CLIENT_ID is unset. │
|
||||
│ [default: Large Model Entity] │
|
||||
│ --help Show this message and exit. │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
```
|
||||
20
docs/docs/cli/bcda-errors.md
Normal file
20
docs/docs/cli/bcda-errors.md
Normal file
@@ -0,0 +1,20 @@
|
||||
---
|
||||
title: stack bcda errors
|
||||
sidebar_position: 20
|
||||
---
|
||||
|
||||
# `stack bcda errors`
|
||||
|
||||
```
|
||||
Usage: stack bcda errors [OPTIONS] KEY
|
||||
|
||||
OperationOutcome issues from a job's error files (a partial export).
|
||||
|
||||
╭─ Arguments ──────────────────────────────────────────────────────────────────╮
|
||||
│ * key TEXT Store job key. [required] │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
╭─ Options ────────────────────────────────────────────────────────────────────╮
|
||||
│ --limit INTEGER Issues to print. [default: 50] │
|
||||
│ --help Show this message and exit. │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
```
|
||||
48
docs/docs/cli/bcda-export.md
Normal file
48
docs/docs/cli/bcda-export.md
Normal file
@@ -0,0 +1,48 @@
|
||||
---
|
||||
title: stack bcda export
|
||||
sidebar_position: 15
|
||||
---
|
||||
|
||||
# `stack bcda export`
|
||||
|
||||
```
|
||||
Usage: stack bcda export [OPTIONS]
|
||||
|
||||
Run an export through the store (blocks until downloaded).
|
||||
|
||||
╭─ Options ────────────────────────────────────────────────────────────────────╮
|
||||
│ --preset TEXT Public sandbox entity when │
|
||||
│ BCDA_CLIENT_ID is unset. │
|
||||
│ [default: Large Model Entity] │
|
||||
│ --type -t TEXT Resource type(s); default all │
|
||||
│ three. │
|
||||
│ --endpoint TEXT Group/all, Group/runout or │
|
||||
│ Patient. │
|
||||
│ [default: Group/all] │
|
||||
│ --since TEXT FHIR instant │
|
||||
│ (2026-10-01T00:00:00+00:00) │
|
||||
│ or 'auto' = the per-type │
|
||||
│ watermark. │
|
||||
│ --force Start even when the _since │
|
||||
│ checks say block. │
|
||||
│ --system-type TEXT _typeFilter System-Type │
|
||||
│ tag(s). │
|
||||
│ --outcome TEXT _typeFilter outcome: partial │
|
||||
│ and/or complete. │
|
||||
│ --service-date-from TEXT _typeFilter earliest │
|
||||
│ service-date (YYYY[-MM[-DD]], │
|
||||
│ optional gt/ge/eq prefix). │
|
||||
│ --service-date-to TEXT _typeFilter latest │
|
||||
│ service-date (optional lt/le │
|
||||
│ prefix). │
|
||||
│ --per-type --one-job One job per type (survives │
|
||||
│ sandbox sweeps). │
|
||||
│ [default: per-type] │
|
||||
│ --cancel-retries INTEGER Restarts after server-side │
|
||||
│ cancellation. │
|
||||
│ [default: 6] │
|
||||
│ --poll-interval FLOAT Seconds between status polls. │
|
||||
│ [default: 15.0] │
|
||||
│ --help Show this message and exit. │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
```
|
||||
19
docs/docs/cli/bcda-jobs.md
Normal file
19
docs/docs/cli/bcda-jobs.md
Normal file
@@ -0,0 +1,19 @@
|
||||
---
|
||||
title: stack bcda jobs
|
||||
sidebar_position: 14
|
||||
---
|
||||
|
||||
# `stack bcda jobs`
|
||||
|
||||
```
|
||||
Usage: stack bcda jobs [OPTIONS]
|
||||
|
||||
Server job history for the entity (shared on the sandbox).
|
||||
|
||||
╭─ Options ────────────────────────────────────────────────────────────────────╮
|
||||
│ --preset TEXT Public sandbox entity when BCDA_CLIENT_ID is unset. │
|
||||
│ [default: Large Model Entity] │
|
||||
│ --limit INTEGER Newest N jobs. [default: 25] │
|
||||
│ --help Show this message and exit. │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
```
|
||||
20
docs/docs/cli/bcda-load.md
Normal file
20
docs/docs/cli/bcda-load.md
Normal file
@@ -0,0 +1,20 @@
|
||||
---
|
||||
title: stack bcda load
|
||||
sidebar_position: 21
|
||||
---
|
||||
|
||||
# `stack bcda load`
|
||||
|
||||
```
|
||||
Usage: stack bcda load [OPTIONS]
|
||||
|
||||
Reconcile the store (or flatten the newest export per type), load, run the
|
||||
connector, publish the replica.
|
||||
|
||||
╭─ Options ────────────────────────────────────────────────────────────────────╮
|
||||
│ --pipeline --no-pipeline Run the connector into input_layer.* │
|
||||
│ [default: pipeline] │
|
||||
│ --skip-flatten Reuse existing Parquet. │
|
||||
│ --help Show this message and exit. │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
```
|
||||
18
docs/docs/cli/bcda-preflight.md
Normal file
18
docs/docs/cli/bcda-preflight.md
Normal file
@@ -0,0 +1,18 @@
|
||||
---
|
||||
title: stack bcda preflight
|
||||
sidebar_position: 12
|
||||
---
|
||||
|
||||
# `stack bcda preflight`
|
||||
|
||||
```
|
||||
Usage: stack bcda preflight [OPTIONS]
|
||||
|
||||
/_version, /_health and metadata — no token needed.
|
||||
|
||||
╭─ Options ────────────────────────────────────────────────────────────────────╮
|
||||
│ --preset TEXT Public sandbox entity when BCDA_CLIENT_ID is unset. │
|
||||
│ [default: Large Model Entity] │
|
||||
│ --help Show this message and exit. │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
```
|
||||
21
docs/docs/cli/bcda-resume.md
Normal file
21
docs/docs/cli/bcda-resume.md
Normal file
@@ -0,0 +1,21 @@
|
||||
---
|
||||
title: stack bcda resume
|
||||
sidebar_position: 17
|
||||
---
|
||||
|
||||
# `stack bcda resume`
|
||||
|
||||
```
|
||||
Usage: stack bcda resume [OPTIONS] KEY
|
||||
|
||||
Finish a store job: re-poll, download missing files, record the manifest.
|
||||
|
||||
╭─ Arguments ──────────────────────────────────────────────────────────────────╮
|
||||
│ * key TEXT Store job key (see `stack bcda store`). [required] │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
╭─ Options ────────────────────────────────────────────────────────────────────╮
|
||||
│ --preset TEXT Public sandbox entity when BCDA_CLIENT_ID is unset. │
|
||||
│ [default: Large Model Entity] │
|
||||
│ --help Show this message and exit. │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
```
|
||||
16
docs/docs/cli/bcda-store.md
Normal file
16
docs/docs/cli/bcda-store.md
Normal file
@@ -0,0 +1,16 @@
|
||||
---
|
||||
title: stack bcda store
|
||||
sidebar_position: 19
|
||||
---
|
||||
|
||||
# `stack bcda store`
|
||||
|
||||
```
|
||||
Usage: stack bcda store [OPTIONS]
|
||||
|
||||
Local store: jobs, files, bytes.
|
||||
|
||||
╭─ Options ────────────────────────────────────────────────────────────────────╮
|
||||
│ --help Show this message and exit. │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
```
|
||||
25
docs/docs/cli/bcda-sync.md
Normal file
25
docs/docs/cli/bcda-sync.md
Normal file
@@ -0,0 +1,25 @@
|
||||
---
|
||||
title: stack bcda sync
|
||||
sidebar_position: 23
|
||||
---
|
||||
|
||||
# `stack bcda sync`
|
||||
|
||||
```
|
||||
Usage: stack bcda sync [OPTIONS] COMMAND [ARGS]...
|
||||
|
||||
Incremental (_since) pulls.
|
||||
|
||||
╭─ Options ────────────────────────────────────────────────────────────────────╮
|
||||
│ --help Show this message and exit. │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
╭─ Commands ───────────────────────────────────────────────────────────────────╮
|
||||
│ status Watermarks per (endpoint, _typeFilter, type), downloaded vs applied │
|
||||
│ jobs, ledger, current counts. │
|
||||
│ check Temporality checks for a proposed _since (exit 2 on block). │
|
||||
│ apply Reconcile downloaded jobs into the current tables (ledger kept), │
|
||||
│ then load. │
|
||||
│ pull Pull every type since its watermark (one job per type), then │
|
||||
│ reconcile and load. │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
```
|
||||
20
docs/docs/cli/bcda-ui.md
Normal file
20
docs/docs/cli/bcda-ui.md
Normal file
@@ -0,0 +1,20 @@
|
||||
---
|
||||
title: stack bcda ui
|
||||
sidebar_position: 11
|
||||
---
|
||||
|
||||
# `stack bcda ui`
|
||||
|
||||
```
|
||||
Usage: stack bcda ui [OPTIONS]
|
||||
|
||||
Launch the BCDA manager (Streamlit; /metrics when STACK_TELEMETRY is on).
|
||||
|
||||
╭─ Options ────────────────────────────────────────────────────────────────────╮
|
||||
│ --port INTEGER Port for the Streamlit server. │
|
||||
│ [default: 8501] │
|
||||
│ --headless --no-headless Do not open a browser. │
|
||||
│ [default: headless] │
|
||||
│ --help Show this message and exit. │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
```
|
||||
18
docs/docs/cli/bcda-vendor.md
Normal file
18
docs/docs/cli/bcda-vendor.md
Normal file
@@ -0,0 +1,18 @@
|
||||
---
|
||||
title: stack bcda vendor
|
||||
sidebar_position: 22
|
||||
---
|
||||
|
||||
# `stack bcda vendor`
|
||||
|
||||
```
|
||||
Usage: stack bcda vendor [OPTIONS]
|
||||
|
||||
Vendored upstream (CMSgov/bcda-app, bcda.cms.gov): manifest, verification,
|
||||
drift.
|
||||
|
||||
╭─ Options ────────────────────────────────────────────────────────────────────╮
|
||||
│ --check Also query GitHub / bcda.cms.gov for drift. │
|
||||
│ --help Show this message and exit. │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
```
|
||||
36
docs/docs/cli/bcda.md
Normal file
36
docs/docs/cli/bcda.md
Normal file
@@ -0,0 +1,36 @@
|
||||
---
|
||||
title: stack bcda
|
||||
sidebar_position: 10
|
||||
---
|
||||
|
||||
# `stack bcda`
|
||||
|
||||
```
|
||||
Usage: stack bcda [OPTIONS] COMMAND [ARGS]...
|
||||
|
||||
BCDA client and manager (exports, store, load, UI).
|
||||
|
||||
╭─ Options ────────────────────────────────────────────────────────────────────╮
|
||||
│ --help Show this message and exit. │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
╭─ Commands ───────────────────────────────────────────────────────────────────╮
|
||||
│ ui Launch the BCDA manager (Streamlit; /metrics when STACK_TELEMETRY │
|
||||
│ is on). │
|
||||
│ preflight /_version, /_health and metadata — no token needed. │
|
||||
│ auth Issue a token and show attribution status. │
|
||||
│ jobs Server job history for the entity (shared on the sandbox). │
|
||||
│ export Run an export through the store (blocks until downloaded). │
|
||||
│ adopt Download a completed job this store did not start. │
|
||||
│ resume Finish a store job: re-poll, download missing files, record the │
|
||||
│ manifest. │
|
||||
│ cancel Cancel an in-progress job. │
|
||||
│ store Local store: jobs, files, bytes. │
|
||||
│ errors OperationOutcome issues from a job's error files (a partial │
|
||||
│ export). │
|
||||
│ load Reconcile the store (or flatten the newest export per type), │
|
||||
│ load, run the connector, publish the replica. │
|
||||
│ vendor Vendored upstream (CMSgov/bcda-app, bcda.cms.gov): manifest, │
|
||||
│ verification, drift. │
|
||||
│ sync Incremental (_since) pulls. │
|
||||
╰──────────────────────────────────────────────────────────────────────────────╯
|
||||
```
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib attach-iom
|
||||
sidebar_position: 21
|
||||
sidebar_position: 36
|
||||
---
|
||||
|
||||
# `stack bib attach-iom`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib attach-oig
|
||||
sidebar_position: 26
|
||||
sidebar_position: 41
|
||||
---
|
||||
|
||||
# `stack bib attach-oig`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib backfill-comments
|
||||
sidebar_position: 19
|
||||
sidebar_position: 34
|
||||
---
|
||||
|
||||
# `stack bib backfill-comments`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib cfr-jump
|
||||
sidebar_position: 31
|
||||
sidebar_position: 46
|
||||
---
|
||||
|
||||
# `stack bib cfr-jump`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib code-tags
|
||||
sidebar_position: 32
|
||||
sidebar_position: 47
|
||||
---
|
||||
|
||||
# `stack bib code-tags`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib discover-pfs-rules
|
||||
sidebar_position: 15
|
||||
sidebar_position: 30
|
||||
---
|
||||
|
||||
# `stack bib discover-pfs-rules`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib fetch-docket-comments
|
||||
sidebar_position: 16
|
||||
sidebar_position: 31
|
||||
---
|
||||
|
||||
# `stack bib fetch-docket-comments`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib fetch-pfs-comments
|
||||
sidebar_position: 17
|
||||
sidebar_position: 32
|
||||
---
|
||||
|
||||
# `stack bib fetch-pfs-comments`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib fr-grab
|
||||
sidebar_position: 29
|
||||
sidebar_position: 44
|
||||
---
|
||||
|
||||
# `stack bib fr-grab`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib fr-jump
|
||||
sidebar_position: 30
|
||||
sidebar_position: 45
|
||||
---
|
||||
|
||||
# `stack bib fr-jump`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib import-zotero
|
||||
sidebar_position: 23
|
||||
sidebar_position: 38
|
||||
---
|
||||
|
||||
# `stack bib import-zotero`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib ingest-iom
|
||||
sidebar_position: 20
|
||||
sidebar_position: 35
|
||||
---
|
||||
|
||||
# `stack bib ingest-iom`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib ingest-mail
|
||||
sidebar_position: 18
|
||||
sidebar_position: 33
|
||||
---
|
||||
|
||||
# `stack bib ingest-mail`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib ingest-oig
|
||||
sidebar_position: 25
|
||||
sidebar_position: 40
|
||||
---
|
||||
|
||||
# `stack bib ingest-oig`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib query
|
||||
sidebar_position: 14
|
||||
sidebar_position: 29
|
||||
---
|
||||
|
||||
# `stack bib query`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib refresh-iom
|
||||
sidebar_position: 28
|
||||
sidebar_position: 43
|
||||
---
|
||||
|
||||
# `stack bib refresh-iom`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib refresh-oig
|
||||
sidebar_position: 27
|
||||
sidebar_position: 42
|
||||
---
|
||||
|
||||
# `stack bib refresh-oig`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib sync-zotero
|
||||
sidebar_position: 24
|
||||
sidebar_position: 39
|
||||
---
|
||||
|
||||
# `stack bib sync-zotero`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib sync
|
||||
sidebar_position: 12
|
||||
sidebar_position: 27
|
||||
---
|
||||
|
||||
# `stack bib sync`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib tag
|
||||
sidebar_position: 13
|
||||
sidebar_position: 28
|
||||
---
|
||||
|
||||
# `stack bib tag`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib watch-iom
|
||||
sidebar_position: 22
|
||||
sidebar_position: 37
|
||||
---
|
||||
|
||||
# `stack bib watch-iom`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: stack bib
|
||||
sidebar_position: 11
|
||||
sidebar_position: 26
|
||||
---
|
||||
|
||||
# `stack bib`
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user