SMART on FHIR (Substitutable Medical Applications and Reusable Technologies) is an open standard that layers an OAuth 2.0-based authorization and user interface integration framework on top of FHIR APIs. It defines a protocol for securely launching third-party clinical applications from within an EHR context, ensuring the app receives a scoped access token tied to the specific patient record and clinician session currently active. This mechanism replaces proprietary, vendor-specific integration methods with a universal, plug-and-play app ecosystem.
Glossary
SMART on FHIR

What is SMART on FHIR?
SMART on FHIR is an open standard that adds a secure authorization layer and embeddable user interface capabilities to FHIR APIs, enabling third-party applications to launch seamlessly within an EHR context.
The standard defines distinct launch scenarios, including EHR Launch (initiated from within the clinician's workflow) and Standalone Launch (where an app requests access independently). By mandating OpenID Connect for identity federation and defining a standardized CapabilitySet discovery document, SMART on FHIR ensures that any compliant application can securely connect to any compliant FHIR server without custom integration code. This architecture is the technical foundation for mandated patient and provider API access under the ONC Cures Act Final Rule.
Core Components of SMART on FHIR
SMART on FHIR defines a standardized protocol for launching third-party applications securely within an EHR context, combining FHIR's data model with OAuth2-based authorization.
EHR Launch Context
The mechanism by which an app is launched directly from the EHR interface, receiving contextual parameters to orient itself immediately.
- Launch Parameters: The EHR passes a
launchcode andiss(issuer) parameter to the app, which it exchanges for an access token. - Patient Context: The app receives a specific patient ID, allowing it to load that patient's data without manual search.
- Encounter Context: For inpatient settings, the app can be scoped to a specific visit or encounter ID.
Standalone Launch Flow
Allows an app to be launched independently of the EHR, such as from a mobile device or a portal link, while still connecting to the FHIR server.
- Discovery: The app discovers the FHIR endpoint and authorization server via a well-known URL (
/.well-known/smart-configuration). - Authorization Code Flow with PKCE: Uses Proof Key for Code Exchange to secure the flow for public clients that cannot keep a client secret.
- User Initiation: The user must still authenticate and authorize the app to access their data on the FHIR server.
Scopes & User Identity
The granular permission model that governs what data a SMART app can access and what identity claims it receives.
- Clinical Scopes: Define access to patient-level data (e.g.,
patient/Patient.read,patient/Observation.rs). - User-Level Scopes: Provide identity claims about the authenticated user (e.g.,
openid,fhirUser,profile). - fhirUser Claim: A critical OpenID Connect claim that returns a URL pointing to the FHIR resource representing the current user (Practitioner, Patient, or RelatedPerson).
Frequently Asked Questions
Clarifying the open standard that layers secure authorization and embedded user interfaces on top of FHIR APIs to enable interoperable, context-aware healthcare applications.
SMART on FHIR is an open, standards-based technology platform that enables developers to build applications that run seamlessly and securely across the electronic health record ecosystem. It works by combining the FHIR (Fast Healthcare Interoperability Resources) standard for data models and RESTful APIs with the OAuth 2.0 and OpenID Connect protocols for authentication and authorization. This combination allows a third-party application to be launched from within an EHR, request specific clinical data scopes (like patient/Observation.rs), and receive an access token to query the FHIR server directly. The platform defines a launch context that passes critical parameters—such as the current patient ID and encounter—to the app, ensuring it opens in the correct clinical context without requiring a separate login.
SMART App Launch vs. Traditional EHR Integration
A technical comparison of the SMART on FHIR authorization and UI integration standard against legacy EHR integration methods.
| Feature | SMART App Launch | C-CDA Exchange | HL7 v2 Interface |
|---|---|---|---|
API Architecture | RESTful FHIR API | Document-based XML | TCP/IP socket or MLLP |
Authorization Protocol | OAuth 2.0 + OpenID Connect | VPN or point-to-point TLS | VPN or point-to-point TLS |
Single Sign-On Context | |||
Embedded EHR UI Launch | |||
Real-Time Data Access | |||
Standardized Discovery | FHIR CapabilityStatement + .well-known/smart-configuration | Direct Trust Bundle exchange | Manual IP/port configuration |
Patient-Scoped Access | OAuth patient/ scopes | ||
Granular Resource Scoping | Per-resource OAuth scopes | Entire document exchange | Message-level filtering |
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Related Terms
Core standards and specifications that form the foundation of the SMART on FHIR application platform, enabling secure, interoperable healthcare applications.
EHR Launch Context
The mechanism by which a SMART app receives clinical context at startup. When launched from within an EHR, the app receives:
- Patient ID: The FHIR ID of the patient currently in context
- Encounter ID: The current clinical encounter, if applicable
- FHIR Server Base URL: The endpoint for all subsequent API calls
- Launch Token: A one-time token that binds the app session to the EHR session
This contextual awareness allows the app to immediately display relevant patient data without manual searching.

About the author
Prasad Kumkar
CEO & MD, Inference Systems
Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.
His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us