Eden Health grdn.routes.impl.patients API
Contains handlers for routes related to Patients.
Contains handlers for routes related to Patients.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/eden-health-grdn-routes-impl-patients-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
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