> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usecobalt.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Eligibility Checks

> Returns insurance eligibility checks (270/271) for a clinic.

Each eligibility check is one 270/271 verification: a request sent to a payer and
the benefits response that came back. This endpoint returns the check **headers**,
each with a `benefits_summary` (the headline deductible and out-of-pocket numbers)
and a `benefit_count`. To read the full per-benefit detail for a check, use its
`id` with [Get Eligibility Benefits](/api-reference/eligibility-checks/benefits).

Filter by service-date range, `patient_mrn`, or `coverage_status`. A check whose
`coverage_status` is `error` is one the payer could not process (for example a
missing provider NPI); the reason is in `status_message`.

### Example Request

```bash theme={null}
curl -X GET "https://api.usecobalt.com/v1/eligibility-checks?start_date=2026-06-01&end_date=2026-06-30&coverage_status=active&page=1&page_size=100" \
-H 'Content-Type: application/json' \
-H 'client_id: ci_live_198908HJDKJSH98789OHKJL' \
-H 'client_secret: cs_live_9827hofdsklOYYHJLJh' \
-H 'access_token: 493JKLHIU98789hLKH9HHJH'
```

### Example Response

```json theme={null}
{
    "success": true,
    "eligibility_checks": [
        {
            "id": "abc123def4567890abcdef1234567890",
            "emr_id": "4588",
            "emr_patient_id": "100482",
            "patient_name": "Sample, Patient",
            "patient_dob": "1990-01-01",
            "emr_encounter_id": "293018",
            "provider_name": "Pat Provider",
            "payer_name": "Sample Health Plan",
            "subscriber_name": "Patient Sample",
            "subscriber_member_id": "W000000000",
            "patient_relationship": "self",
            "plan_name": "Sample PPO Plan",
            "coverage_status": "active",
            "status_message": null,
            "service_date": "2026-06-01",
            "response_at": "2026-06-01T05:01:00.000Z",
            "plan_begin_date": "2026-01-01",
            "plan_end_date": "2026-12-31",
            "benefits_summary": {
                "deductible": {
                    "individual": { "total": 2000, "remaining": 0 },
                    "family": { "total": 4000, "remaining": 1500 }
                },
                "out_of_pocket": {
                    "individual": { "total": 7000, "remaining": 917.76 },
                    "family": { "total": 10000, "remaining": 6217.76 }
                }
            },
            "benefit_count": 61,
            "synced_at": "2026-06-22T15:00:00.000Z"
        }
    ],
    "pagination": {
        "page": 1,
        "page_size": 100,
        "total_records": 1,
        "total_pages": 1
    }
}
```

### Query Parameters

* **start\_date** / **end\_date**: Filter by service date (`YYYY-MM-DD`).
* **patient\_mrn**: Filter to a single patient by medical record number.
* **coverage\_status**: Filter by `active`, `inactive`, `error`, or `unknown`.
* **page**: Page number (default `1`).
* **page\_size**: Results per page (default `100`, max `500`).

### Response Parameters

* **id**: Cobalt's eligibility check identifier. Use this in the benefits endpoint path.
* **emr\_id**: The eligibility request identifier as it appears in the EMR.
* **emr\_patient\_id** / **patient\_name** / **patient\_dob**: The patient the check was run for.
* **emr\_encounter\_id**: The encounter/visit the check is tied to.
* **provider\_name** / **payer\_name**: Rendering provider and the payer that responded.
* **subscriber\_name** / **subscriber\_member\_id** / **patient\_relationship**: Subscriber details; `patient_relationship` is `self` or `dependent`.
* **plan\_name**: Plan description from the 271.
* **coverage\_status**: `active`, `inactive`, `error` (payer could not process the request), or `unknown`.
* **status\_message**: Payer reject reason when `coverage_status` is `error`.
* **service\_date** / **response\_at**: Date of service and when the payer response was received.
* **plan\_begin\_date** / **plan\_end\_date**: The plan's effective date range (either may be `null`).
* **benefits\_summary**: Headline EOB rollup. `deductible` and `out_of_pocket` are each split by `individual` / `family` into `total` and `remaining` amounts.
* **benefit\_count**: Number of benefit lines parsed from the 271.
* **pagination**: `page`, `page_size`, `total_records`, `total_pages`.


## OpenAPI

````yaml GET /eligibility-checks
openapi: 3.0.0
info:
  title: Cobalt API
  version: 1.0.1
  description: API for interacting with Cobalt's EHR integration services
servers:
  - url: https://api.usecobalt.com/v1
security:
  - ClientCredentials: []
    ClientSecret: []
    AccessToken: []
paths:
  /eligibility-checks:
    get:
      tags:
        - Eligibility
      summary: List eligibility checks
      description: >-
        Returns insurance eligibility checks (270/271) for your organization,
        each with a benefits_summary (deductible and out-of-pocket totals and
        remaining amounts) and a benefit count. Use a check's id with the
        benefits endpoint to page its full per-benefit detail.
      operationId: getEligibilityChecks
      parameters:
        - name: start_date
          in: query
          required: false
          description: >-
            Filter to checks with a service date on or after this date
            (YYYY-MM-DD).
          schema:
            type: string
            format: date
        - name: end_date
          in: query
          required: false
          description: >-
            Filter to checks with a service date on or before this date
            (YYYY-MM-DD).
          schema:
            type: string
            format: date
        - name: patient_mrn
          in: query
          required: false
          description: Filter to a single patient by medical record number.
          schema:
            type: string
        - name: coverage_status
          in: query
          required: false
          description: Filter by coverage status.
          schema:
            type: string
            enum:
              - active
              - inactive
              - error
              - unknown
        - name: page
          in: query
          required: false
          description: Page number (default 1).
          schema:
            type: integer
            default: 1
        - name: page_size
          in: query
          required: false
          description: Results per page (default 100, max 500).
          schema:
            type: integer
            default: 100
            maximum: 500
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  eligibility_checks:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: >-
                            Cobalt eligibility check ID (UUID without dashes).
                            Use this for the benefits endpoint.
                        emr_id:
                          type: string
                          description: The eligibility request ID as it appears in the EMR.
                        emr_patient_id:
                          type: string
                          description: EMR patient identifier.
                        patient_name:
                          type: string
                        patient_dob:
                          type: string
                          format: date
                        emr_encounter_id:
                          type: string
                          description: EMR encounter/visit the check was run for.
                        provider_name:
                          type: string
                        payer_name:
                          type: string
                          description: Insurance payer that responded.
                        subscriber_name:
                          type: string
                        subscriber_member_id:
                          type: string
                        patient_relationship:
                          type: string
                          description: >-
                            Patient relationship to the subscriber (self or
                            dependent).
                        plan_name:
                          type: string
                        coverage_status:
                          type: string
                          enum:
                            - active
                            - inactive
                            - error
                            - unknown
                          description: >-
                            active, inactive, error (payer could not process the
                            request), or unknown.
                        status_message:
                          type: string
                          description: >-
                            Payer reject reason when coverage_status is error
                            (e.g. "Please enter NPI.").
                        service_date:
                          type: string
                          format: date
                        response_at:
                          type: string
                          format: date-time
                          description: When the payer response was received.
                        plan_begin_date:
                          type: string
                          format: date
                        plan_end_date:
                          type: string
                          format: date
                        benefits_summary:
                          type: object
                          description: >-
                            Headline EOB rollup. deductible and out_of_pocket
                            each split by individual/family into total and
                            remaining amounts.
                          properties:
                            deductible:
                              type: object
                            out_of_pocket:
                              type: object
                        benefit_count:
                          type: integer
                          description: Number of benefit lines parsed from the 271.
                        synced_at:
                          type: string
                          format: date-time
                  pagination:
                    type: object
                    properties:
                      page:
                        type: integer
                      page_size:
                        type: integer
                      total_records:
                        type: integer
                      total_pages:
                        type: integer
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  message:
                    type: string
components:
  securitySchemes:
    ClientCredentials:
      type: apiKey
      in: header
      name: client_id
    ClientSecret:
      type: apiKey
      in: header
      name: client_secret
    AccessToken:
      type: apiKey
      in: header
      name: access_token

````