Healthcare EMR Integration with OAuth 2.0
Publicada el 2026-07-22
Descripción de la oferta
I need a lightweight proof-of-concept that demonstrates an end-to-end OAuth 2.0 flow against a real healthcare EMR, then uses the granted token to call the FHIR Patient endpoint. The aim is simple: confirm that system-to-system (backend) credentials can be exchanged for an access token and that—with that token—I can reliably pull a single Patient resource when I supply either the patient’s MRN or their ID. Here is how I picture the work: • Implement the OAuth 2.0 client IN GO using the EMR vendor’s documented authorization-code or client-credentials flow (whichever the API allows for backend access). • Once authenticated, call the FHIR /Patient search endpoint twice—first filtering by identifier type “MRN”, then by the native “ID”—and return the JSON response untouched. • Wrap the calls in a minimal web or command-line app so I can enter credentials, request scopes, and see the raw request/response pairs in real time (curl traces or similar are fine). • Keep the code clean and self-contained; language choice is open as long as common libraries are used (e.g., GO, with OAuth requests + requests-oauthlib, Node.js with axios, With OAuth2). PLEASE NOTE!!!, I expect you to know how to do it so I can learn, I have never done OUTH though have experience retrieving FHIR Resoures. That experience is about 10 years old. So I will be refresshing my knowledge also. You will need to get your own free Cerner sandbox account and use it for testing. I want to know where the various env valuse need to make the login call come from so I can put my values in the correct ENVs you set up using yours. I will use mine for testing and the final acceptance test with a customers live test system. Acceptance is straightforward: Using Make I can build the go app from the github repository. I run the app with my sandbox credentials, OAuth succeeds, and I receive the proper Patient resource for both identifier types—no manual tweaks required.
Skills
Fuente original: freelancer