Redox supports app launch from an EHR system by combining single sign-on (SSO) with any following API requests all in one session. Learn more about handling app launch.
SMART on FHIR® is one of the supported authentication standards to accomplish the app launch workflow. Learn more about SMART App Launch.
We make developing SMART apps easy by providing:
- OAuth normalization: Redox handles minor differences in OAuth implementations.
- Access token storage: Redox stores and automatically refreshes access tokens for you.
- Decoupling of SSO and FHIR® API: Use SSO with SAML, SMART, or any number of other SSO schemes.
Using SMART apps with Redox allows you to quickly integrate with new EHR systems with minimal code changes.
Follow the outline below to see how app launch works with SMART on FHIR®:
- Either the patient or a provider initiates an app launch from the EHR system.
- The launch URL is a Redox URL, which Redox uses to look up your Redox organization, then redirects the request to the authorization server.
- The authorization server prompts the patient or provider to authorize your app—not Redox—to access the relevant data.
- The patient or provider is redirected back to Redox.
- Redox requests an access token and stores it securely.
- Redox sends an SSO message to an SSO destination in your Redox organization. Refer to the SSO data model schema.
- Your destination records the session ID and redirects to either a static page or initiates SSO.
- Redox redirects the client as appropriate.
- When additional FHIR® API requests are made, they should use the session ID to use the access token from step #5.
To use SMART apps with Redox, you must first register your app with a provider that supports SMART. Redox is compatible with any OAuth or OpenID Connect provider.
Then, check out these sandbox environments that work with Redox:
Each vendor requires different information, but one requirement for any FHIR® API request is to include the callback/redirect URL: https://launch.redoxengine.com/redirect. Essentially, this tells the authorization service that it’s okay for Redox to handle the app launch with SMART on FHIR®.
For Redox to handle authorization and access tokens on your behalf, you must have an SSO destination in your Redox organization, even if you don’t have an app component. Redox generates and sends a unique session ID that you use with any FHIR® requests to Redox.
The SSO data model contains the following fields:
Field | Description |
|---|---|
Meta.SessionID | A unique session ID that you must append to the FHIR® base URL for any FHIR® requests during the session. |
Meta.SessionBaseURL | The FHIR® base URL to use for any FHIR® requests during the session. |
Here’s an example of performing a patient search to the Redox FHIR® sandbox URL using SSO: