Department of Medicine 2016 Tech Challenge

New Uses of Information Technology to Advance the Missions of the Department of Medicine

UCSF Apex Hackathon

Primary Author: Priyanka Agarwal
Idea Status: 

It is a common perception on campus that "Epic is closed and doesn't want to talk to outside systems."

While there is a kernel of truth in this observation, Epic actually has several standard, robust Web services--and additional customized ones written by our APEX developers--through its interconnect API. After undergoing appropriate security review, YOUR application idea can connect to UCSF's electronic health record in a way that lets it read the patient roster, the treatment and care teams, and even vital signs and some lab values. This data can be used for everything from syncing lists to creating a "second skin" over Epic for specific clinical leads like a nephrology clinic or endoscopy suite.

In that spirit, we are proposing an APEX HACKATHON. Bring your developer friends, come prepared to write code, or just come with a great idea about what you could do with access to certain parts of the EHR IN REAL TIME. Want to see a beautiful graph of medication burden for your clinic panel? Want to track and plot your patients' immunosuppressant levels X days out from transplant, and build in logic for when a level is or isn't therapeutic? No idea is too hare-brained. Spend 24 hours writing code and building an application that connects to one of the practice, non-PHI environments in teams, getting practice for when/if you want to do the real thing.

At the end of the Hackathon, participants will submit their developed ideas for demonstration and the best idea will win a cash prize and the opportunity to develop the idea further in the UCSF environment. Any code developed at the Hackathon is owned by the developers.

The Hackathon will be great for advancing the digital health space for DOM, not least by building partnerships with developers and within our own institution, and for giving our incredibly smart community a taste of what can be achieved with what Epic already allows.

If the DOM funds this proposal as part of the IT challenge, we'd use the money to plan and put on the event, including giving out prizes.

Thanks for liking and commenting on our proposal!

Raman Khanna, MD

Aaron Neinstein, MD

Priyanka Agarwal, MD


This is a great idea and I'm fully supportive.  I suspect many participants will be from outside UCSF - how will the hackathon prevent unauthorized access to protected health information?  

Thanks Alvin for this comment! It's a great question. For sure no developer will touch the actual Apex environment, but will develop instead against a "play" environment that has neither any real patients, nor is it on a "path to production" (meaning the code has no chance of moving automatically into the real patient environment). I've modified the proposal to reflect this subtlety which wasn't clear before.

I've always loved this idea to let developers access the Interconnect API's, but there are these limitations that will affect the scope of a potential hackathon:

  • You need to be an UCSF employee or sanctioned contractor/consultant to see the API documentation.  Epic discourages (prevents?) you from using the API's unless you've been to their Interconnect API training in beautiful Verona, WI.
  • There is no built-in authentication or authorization, though there are a couple of workarounds using authentication proxies.  Without using a proxy, you're constrained to apps that work only within the UCSF network
  • You'll need a sandbox Epic environment with realistic looking, but fake data, most likely separate from what exists today so as to not interfere with other development work occuring.  There are over 200 API's, i.e. a substantial amount of data will need to be created for full coverage of functionality.  For developers to create their own test data, they would need M (Epic programming language) skills and knowledge of how the data is stored in Cache (Epic's hierarchical [non-relational] database), both of which require another trip to Verona, WI in order to acquire.
  • Any apps developed in the hackathon aren't necessarily portable to other institutions.  It depends on the API version availability in the other institutions' installed version of Epic.

These aren't insurmountable, but they're not trivial, either.  You'd have to organize the hackathon to compensate for these obstructions.


Commenting is closed.