Eden Health grdn.routes.impl.patients API

Contains handlers for routes related to Patients.

Business capability
Patient Registration Management BC-2800.20

Operations 25

POST /v2/patient create-patient-handler
GET /v2/patient search-handler
GET /v2/patient/patient-app-data get-patient-app-data
GET /v2/patient/validate validate-patient-handler
PUT /v2/patient/{patient-id} update-patient-handler
GET /v2/patient/{patient-id} get-patient-handler
GET /v2/patient/{patient-id}/account-info get-patient-account-info-handler
PUT /v2/patient/{patient-id}/account-info put-patient-account-info-handler
GET /v2/patient/{patient-id}/ai-chat-suggestion ai-chat-suggestion
PUT /v2/patient/{patient-id}/app-language put-patient-app-language-handler
POST /v2/patient/{patient-id}/case post-patient-case
GET /v2/patient/{patient-id}/chart get-chart-handler
PUT /v2/patient/{patient-id}/deactivate deactivate-patient
GET /v2/patient/{patient-id}/headshot get-headshot-handler
PUT /v2/patient/{patient-id}/join join-channels-handler
PUT /v2/patient/{patient-id}/location location-handler
GET /v2/patient/{patient-id}/pharmacy get-pharmacy-handler
GET /v2/patient/{patient-id}/prescription get-prescriptions-medications
GET /v2/patient/{patient-id}/profile get-patient-profile-handler
GET /v2/patient/{patient-id}/triage-status get-triage-status-handler
POST /v2/patient/{patient-id}/triage-status post-triage-status-handler
GET /v2/patient/{patient-id}/vaccination-status get-vaccination-status-handler
GET /v2/patient/{patient-id}/video-messages patient-has-had-video-visits-handler
GET /v2/patient/{patient-id}/visits get-visits-handler
GET /v2/sidebar get-sidebar-handler

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/eden-health-grdn-routes-impl-patients-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

eden-health-grdn-routes-impl-patients-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: '1.0'
  title: Grdn grdn.handler Grdn.routes.impl.patients API
  description: Eden Health Inc. primary backend API service.
servers:
- url: https://api.edenhealth.com/
tags:
- name: grdn.routes.impl.patients
  description: Contains handlers for routes related to Patients.
paths:
  /v2/patient:
    post:
      summary: create-patient-handler
      description: Adjusts how we handle the act of registration of a patient.
      tags:
      - grdn.routes.impl.patients
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema: {}
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                funnel-id:
                  type: string
                  format: uuid
                first-name:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                ethnicity-id:
                  type: string
                  format: uuid
                dob:
                  type: string
                city:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                preferred-name:
                  type: string
                  allowEmptyValue: true
                email:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                last-name:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                address2:
                  type: string
                  allowEmptyValue: true
                race-id:
                  type: string
                  format: uuid
                language-id:
                  type: string
                  format: uuid
                address1:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                pronouns:
                  type: string
                  allowEmptyValue: true
                sponsor:
                  type: string
                mobile-phone:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                consent-version:
                  type: string
                state:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                password:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                sex:
                  enum:
                  - ''
                  - M
                  - F
                  type: string
                zip:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                work-email:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
              required:
              - email
              - mobile-phone
              - password
              - first-name
              - last-name
              - sex
              - dob
              - address1
              - city
              - state
              - zip
              - sponsor
              - consent-version
              title: grdn.specs/create-patient-params
        description: 'origin spec: grdn.specs/create-patient-params'
    get:
      summary: search-handler
      description: Searches for a patient given search params.
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: query
        name: mrn
        description: 'origin spec: grdn.specs/patient-search-params'
        required: false
        schema:
          type: integer
          format: int64
          minimum: 1
      - in: query
        name: patient-id
        description: 'origin spec: grdn.specs/patient-search-params'
        required: false
        schema:
          type: string
          format: uuid
      - in: query
        name: sub
        description: 'origin spec: grdn.specs/patient-search-params'
        required: false
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema: {}
  /v2/patient/patient-app-data:
    get:
      summary: get-patient-app-data
      description: Gets patient-specific data relevant to app state. Called on app foreground.
      tags:
      - grdn.routes.impl.patients
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema: {}
  /v2/patient/validate:
    get:
      summary: validate-patient-handler
      description: validates patient account credentials in cognito during registration.
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: query
        name: email
        description: 'origin spec: grdn.specs/validate-patient-params'
        required: false
        x-allOf:
        - type: string
        - {}
        schema:
          type: string
      - in: query
        name: phone
        description: 'origin spec: grdn.specs/validate-patient-params'
        required: false
        x-allOf:
        - type: string
        - {}
        schema:
          type: string
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema: {}
  /v2/patient/{patient-id}:
    put:
      summary: update-patient-handler
      description: "Updates patient data (i.e. Athena, Cognito).\n  Requires PUT operations to be idempotent.\n  Sends the user an email letting them know their profile changed."
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: grdn.specs/update-patient-params'
        required: true
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema: {}
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                first-name:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                ethnicity-id:
                  type: string
                  format: uuid
                app-language:
                  enum:
                  - en
                  - es
                  type: string
                dob:
                  type: string
                city:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                preferred-name:
                  type: string
                  allowEmptyValue: true
                email:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                last-name:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                address2:
                  type: string
                  allowEmptyValue: true
                race-id:
                  type: string
                  format: uuid
                language-id:
                  type: string
                  format: uuid
                address1:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                pronouns:
                  type: string
                  allowEmptyValue: true
                mobile-phone:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                state:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                sex:
                  enum:
                  - ''
                  - M
                  - F
                  type: string
                zip:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
              title: grdn.specs/update-patient-params
        description: 'origin spec: grdn.specs/update-patient-params'
    get:
      summary: get-patient-handler
      description: Given a patient-id, hydrate all patient data.
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: '
        required: true
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema: {}
  /v2/patient/{patient-id}/account-info:
    get:
      summary: get-patient-account-info-handler
      description: Given a patient id, return patient account info from Athena, Cognito and Postgres.
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: grdn.specs/patient-id-params'
        required: true
        schema:
          type: string
          format: uuid
      - in: query
        name: funnel-id
        description: 'origin spec: grdn.specs/patient-id-params'
        required: false
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema: {}
    put:
      summary: put-patient-account-info-handler
      description: Update patient account info in Athena, Cognito and Postgres for a given patient id.
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: grdn.specs.patients/patient-account-info-specs'
        required: true
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema: {}
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                first-name:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                last-name:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                email:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                mobile-phone:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
              required:
              - first-name
              - last-name
              - email
              - mobile-phone
              title: grdn.specs.patients/patient-account-info-specs
        description: 'origin spec: grdn.specs.patients/patient-account-info-specs'
  /v2/patient/{patient-id}/ai-chat-suggestion:
    get:
      summary: ai-chat-suggestion
      description: ''
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: grdn.specs.patients/co-pilot-handler-params'
        required: true
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  suggestion:
                    type: string
                required:
                - suggestion
                title: grdn.specs.patients/co-pilot-handler-resp
  /v2/patient/{patient-id}/app-language:
    put:
      summary: put-patient-app-language-handler
      description: Updates the patient's preferred app language
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: grdn.specs.patients/put-patient-app-language-params-spec'
        required: true
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  app-language:
                    enum:
                    - en
                    - es
                    type: string
                required:
                - app-language
                title: grdn.specs.patients/put-patient-app-language-response-spec
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                app-language:
                  enum:
                  - en
                  - es
                  type: string
              required:
              - app-language
              title: grdn.specs.patients/put-patient-app-language-params-spec
        description: 'origin spec: grdn.specs.patients/put-patient-app-language-params-spec'
  /v2/patient/{patient-id}/case:
    post:
      summary: post-patient-case
      description: Creates a patient case on athena
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: grdn.specs.patients/post-patient-case-params-spec'
        required: true
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema: {}
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                notes:
                  type: string
                pharmacy:
                  type: string
                prescription-name:
                  type: string
                provider-id:
                  type: integer
                  format: int64
                  x-anyOf:
                  - type: integer
                    format: int64
                  - type: string
                medication-id:
                  type: number
                  format: double
              required:
              - notes
              - pharmacy
              - prescription-name
              - provider-id
              - medication-id
              title: grdn.specs.patients/post-patient-case-params-spec
        description: 'origin spec: grdn.specs.patients/post-patient-case-params-spec'
  /v2/patient/{patient-id}/chart:
    get:
      summary: get-chart-handler
      description: "Given a Patient ID, fetch patient chart info.\n  Gathers Allergies, Medications, and Problems"
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: grdn.specs/patient-id-params'
        required: true
        schema:
          type: string
          format: uuid
      - in: query
        name: funnel-id
        description: 'origin spec: grdn.specs/patient-id-params'
        required: false
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema: {}
  /v2/patient/{patient-id}/deactivate:
    put:
      summary: deactivate-patient
      description: Deactivates the patient. Deletes their cognito user.
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: '
        required: true
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema: {}
  /v2/patient/{patient-id}/headshot:
    get:
      summary: get-headshot-handler
      description: Gets patient headshot.
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: grdn.specs/patient-id-params'
        required: true
        schema:
          type: string
          format: uuid
      - in: query
        name: funnel-id
        description: 'origin spec: grdn.specs/patient-id-params'
        required: false
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema: {}
  /v2/patient/{patient-id}/join:
    put:
      summary: join-channels-handler
      description: "For a given patient-id, if a clinician has permission to join a patient's channels,\n   join those channels."
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: grdn.specs/patient-id-params'
        required: true
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema: {}
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                funnel-id:
                  type: string
                  format: uuid
              title: grdn.specs/patient-id-params
        description: 'origin spec: grdn.specs/patient-id-params'
  /v2/patient/{patient-id}/location:
    put:
      summary: location-handler
      description: Updates a patients location given state and time zone or lat/lng.
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: grdn.specs/location-params'
        required: true
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema: {}
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                state:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                lat:
                  type: number
                  format: float
                lng:
                  type: number
                  format: float
              required:
              - state
              - lat
              - lng
              title: grdn.specs/location-params
        description: 'origin spec: grdn.specs/location-params'
  /v2/patient/{patient-id}/pharmacy:
    get:
      summary: get-pharmacy-handler
      description: Given a patient id, fetch their default pharmacy.
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: grdn.specs/patient-id-params'
        required: true
        schema:
          type: string
          format: uuid
      - in: query
        name: funnel-id
        description: 'origin spec: grdn.specs/patient-id-params'
        required: false
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema: {}
  /v2/patient/{patient-id}/prescription:
    get:
      summary: get-prescriptions-medications
      description: Get the member's prescriptions medications details.
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: grdn.specs/patient-id-params'
        required: true
        schema:
          type: string
          format: uuid
      - in: query
        name: funnel-id
        description: 'origin spec: grdn.specs/patient-id-params'
        required: false
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    end-date:
                      type:
                      - string
                      - 'null'
                    dosage-frequency-unit:
                      type: string
                    external-note:
                      type: string
                    quantity-value:
                      type: integer
                      format: int64
                    dosage-quantity-value:
                      type: integer
                      format: int64
                    dosage-duration-value:
                      type: integer
                      format: int64
                    name:
                      type: string
                    last-updated:
                      type: string
                    sig:
                      type: string
                    dosage-frequency-value:
                      type: integer
                      format: int64
                    medication:
                      type: string
                    quantity-unit:
                      type: string
                    medication-id:
                      type: number
                      format: double
                    refills-allowed:
                      type: integer
                      format: int64
                    start-date:
                      type: string
                    dosage-duration-unit:
                      type: string
                    active:
                      type: boolean
                    dosage-quantity-unit:
                      type: string
                    dosage-additional-instructions:
                      type: string
                  required:
                  - medication
                  - medication-id
                  - last-updated
                  - name
                  - active
                  - start-date
  /v2/patient/{patient-id}/profile:
    get:
      summary: get-patient-profile-handler
      description: Given a patient id, return additional profile data.
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: grdn.specs/patient-id-params'
        required: true
        schema:
          type: string
          format: uuid
      - in: query
        name: funnel-id
        description: 'origin spec: grdn.specs/patient-id-params'
        required: false
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  employer-name:
                    type: string
                  first-name:
                    type: string
                    x-allOf:
                    - type: string
                    - {}
                  app-language:
                    enum:
                    - en
                    - es
                    type: string
                  dob:
                    type: string
                  city:
                    type: string
                    x-allOf:
                    - type: string
                    - {}
                  address-1:
                    type: string
                    x-allOf:
                    - type: string
                    - {}
                  preferred-name:
                    type:
                    - string
                    - 'null'
                  vaccination-status:
                    type:
                    - string
                    - 'null'
                  patient-id:
                    type: string
                    format: uuid
                  vaccinations:
                    type: array
                    items:
                      type: object
                      properties:
                        manufacturer:
                          type:
                          - string
                          - 'null'
                        vaccinated-at: {}
                      title: grdn.specs.patients/vaccination
                    x-allOf:
                    - type: array
                      items:
                        type: object
                        properties:
                          manufacturer:
                            type:
                            - string
                            - 'null'
                          vaccinated-at: {}
                        title: grdn.specs.patients/vaccination
                  id:
                    type: string
                  email:
                    type: string
                    x-allOf:
                    - type: string
                    - {}
                  sponsor-name:
                    type: string
                  last-name:
                    type: string
                    x-allOf:
                    - type: string
                    - {}
                  pronouns:
                    type:
                    - string
                    - 'null'
                  primary-provider-id:
                    type:
                    - string
                    - 'null'
                  mobile-phone:
                    type: string
                    x-allOf:
                    - type: string
                    - {}
                  sponsor-id:
                    type: string
                    format: uuid
                  address-2:
                    type:
                    - string
                    - 'null'
                  state:
                    type: string
                    x-allOf:
                    - type: string
                    - {}
                  patient-location:
                    type: object
                    properties:
                      location-valid:
                        type: boolean
                      combined-statistical-area:
                        type:
                        - string
                        - 'null'
                      patient-id:
                        type: string
                        format: uuid
                      id:
                        type: string
                        format: uuid
                      updated-at: {}
                      lat-long:
                        type:
                        - string
                        - 'null'
                      created-at: {}
                      state:
                        type: string
                        x-allOf:
                        - type: string
                        - {}
                      time-zone-id:
                        type:
                        - string
                        - 'null'
                    required:
                    - updated-at
                    - state
                    - lat-long
                    - id
                    - patient-id
                    - location-valid
                    - created-at
                    - time-zone-id
                    - combined-statistical-area
                    title: grdn.specs.patients/patient-location
                  sex:
                    enum:
                    - ''
                    - M
                    - F
                    type: string
                  membership-valid:
                    type: boolean
                  zip:
                    type: string
                    x-allOf:
                    - type: string
                    - {}
                required:
                - email
                - preferred-name
                - last-name
                - mobile-phone
                - sex
                - employer-name
                - vaccinations
                - city
                - pronouns
                - state
                - first-name
                - patient-location
                - dob
                - vaccination-status
                - primary-provider-id
                - membership-valid
                - zip
                - id
                - sponsor-id
                - sponsor-name
                - address-1
                - address-2
                - patient-id
                - app-language
                title: grdn.specs.patients/get-patient-profile-handler-response
  /v2/patient/{patient-id}/triage-status:
    get:
      summary: get-triage-status-handler
      description: Gets triage status for patient.
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: grdn.specs/patient-id-params'
        required: true
        schema:
          type: string
          format: uuid
      - in: query
        name: funnel-id
        description: 'origin spec: grdn.specs/patient-id-params'
        required: false
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema: {}
    post:
      summary: post-triage-status-handler
      description: Creates manual triage status updates by providers.
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description: 'origin spec: grdn.specs.patients/triage-status-params'
        required: true
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: Default success response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  patient-id:
                    type: string
                    format: uuid
                  triage-status:
                    enum:
                    - triage-status/never-taken
                    - triage-status/incomplete
                    - triage-status/isolate
                    - triage-status/cleared
                    type: string
                  return-to-work-date:
                    type:
                    - string
                    - 'null'
                    x-allOf:
                    - type: string
                    - {}
                    x-anyOf:
                    - type: string
                      x-allOf:
                      - type: string
                      - {}
                    - {}
                required:
                - patient-id
                - triage-status
                title: grdn.specs.patients/triage-status-params
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                triage-status:
                  enum:
                  - triage-status/never-taken
                  - triage-status/incomplete
                  - triage-status/isolate
                  - triage-status/cleared
                  type: string
                return-to-work-date:
                  type: string
                  x-allOf:
                  - type: string
                  - {}
                  x-anyOf:
                  - type: string
                    x-allOf:
                    - type: string
                    - {}
                  - {}
                  allowEmptyValue: true
              required:
              - triage-status
              title: grdn.specs.patients/triage-status-params
        description: 'origin spec: grdn.specs.patients/triage-status-params'
  /v2/patient/{patient-id}/vaccination-status:
    get:
      summary: get-vaccination-status-handler
      description: Return patient vaccination status
      tags:
      - grdn.routes.impl.patients
      parameters:
      - in: path
        name: patient-id
        description:

# --- truncated at 32 KB (56 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/eden-health/refs/heads/main/openapi/eden-health-grdn-routes-impl-patients-api-openapi.yml