PatientPowerbeyondmychart.com 🏠 Home
Dev / TestSecure · OAuthPHI

Kaiser Permanente — Patient Access API

SMART on FHIR member connect: pull your prescriptions, labs & conditions into PatientPower (with your consent).
⏳ Checking configuration…

Connect

You'll be sent to KP to log in and consent, then returned to /kp-callback.html which imports your records.

What this is

The KP Patient Access API — Explanation of Benefits & Associated Resources is the secure, consent-based CMS payer/claims API. Unlike the open Formulary API, it returns your own records:

  • ExplanationOfBenefit → your claims, incl. pharmacy claims (prescriptions filled + cost)
  • Coverage → your plan
  • Patient + associated reference resources

Clinical detail (lab values, diagnoses, medication orders) comes from Epic — complementary. This API gives the claims/cost view + prescription-fill history.

Auth: SMART on FHIR — OAuth 2.0 Authorization Code + PKCE; you log into KP and consent. Endpoints auto-discovered from {fhirBaseUrl}/.well-known/smart-configuration.

Powerful combo: pull your pharmacy claims here → check each drug against the Formulary API for tier/copay/cheaper covered alternatives.

Setup needed (developer.kp.org)

  1. ✅ App "PatientPortal" registered; API requested: Patient Access API – Explanation of Benefits and Associated Resources (production approval pending).
  2. Generate SANDBOX credentials now (allowed while review is pending) → copy Client ID (+ secret if confidential) → set Netlify env KP_CLIENT_ID_SANDBOX (and KP_CLIENT_SECRET if any).
  3. Register Redirect URI: https://beyondmychart.com/kp-callback.html
  4. View Endpoints → copy the sandbox FHIR base URL into kp-config.js (the sandbox region entry — currently a placeholder).
  5. Confirm/request scopes: openid fhirUser offline_access patient/Patient.read patient/ExplanationOfBenefit.read patient/Coverage.read (match what the API grants).