FHIR Server for Azure is an open-source implementation of the emerging[HL7 Fast Healthcare Interoperability Resources (FHIR) specification](https://www.hl7.org/fhir/)designed for the Microsoft cloud. The FHIR specification defines how clinical health data can be made interoperable across systems, and the FHIR Server for Azure helps facilitate that interoperability in the cloud. The goal of this Microsoft Healthcare project is to enable developers to rapidly deploy a FHIR service.
With data in the FHIR format, the FHIR Server for Azure enables developers to quickly ingest and manage FHIR datasets in the cloud, track and manage data access and normalize data for machine learning workloads. FHIR Server for Azure is optimized for the Azure ecosystem:
FHIR Server for Azure is built with logical separation, enabling developers with flexibility to modify how it is implemented, and extend its capabilities as needed. The logic layers of the FHIR server are:
* Hosting Layer – Supports hosting in different environments, with custom configuration of Inversion of Control (IoC) containers.
* RESTful API Layer – The implementation of the APIs defined by the HL7 FHIR specification.
* Core Logic Layer – The implementation of the core FHIR logic.
* Persistence Layer – A pluggable persistence provider enabling the FHIR server to connect to virtually any data persistence utility. FHIR Server for Azure includes a ready-to-use data persistence provider for Azure Cosmos DB (a globally replicated database service that offers rich querying over data).
FHIR Server for Azure empowers developers – saving time when they need to quickly integrate a FHIR server into their own applications or providing them with a foundation on which they can customize their own FHIR service. As an open source project, contributions and feedback from the FHIR developer community will continue to improve this project.
Privacy and security are top priorities and the FHIR Server for Azure has been developed in support of requirements for Protected Health Information (PHI). All the Azure services used in FHIR Server for Azure [meet the compliance requirements for Protected Health Information](https://www.microsoft.com/en-us/trustcenter/compliance/complianceofferings).
This open source project is fully backed by the Microsoft Healthcare team, but we know that this project will only get better with your feedback and contributions. We are leading the development of this code base, and test builds and deployments daily.
There are also two managed offerings in Azure. One is a generally available offering called the [Azure API for FHIR](https://docs.microsoft.com/en-us/azure/healthcare-apis/azure-api-for-fhir/). The second is the [Azure Healthcare APIs](https://azure.microsoft.com/en-us/services/healthcare-apis/). The Azure Healthcare APIs includes the ability to deploy a FHIR server and a DICOM server in a single workspace. These Platform as a Service (PaaS) FHIR servers are backed by the open source project in this repository and offer a turn key solution to provisioning a compliant, secure FHIR service.
To see what is releasing in the FHIR Server, please refer to the [releases](https://github.com/microsoft/fhir-server/releases) section on this project. Starting in November 2020, we have tags on the PRs to better describe what is releasing. We have also released documentation on how to [test the most recent build](docs/Testing-Releases.md).
- Quickstart guides to deploy open source using [portal](docs/QuickstartDeployPortal.md), [CLI](docs/QuickstartDeployCLI.md), and [PowerShell](docs/QuickstartDeployPowershell.md).
- [Register a resource application](docs/Register-Resource-Application.md): Learn how to register a resource application, which is an Azure Active Directory representation of the FHIR server API.
- [Register a client application](docs/Register-Client-Application.md): Learn how to register a client application registration, which is an Azure Active Directory representation of an application that can be used to authenticate on behalf of a user and request access to resource applications.
- [Azure Healthcare APIs FHIR documentation](https://docs.microsoft.com/azure/healthcare-apis/fhir/): Includes all FHIR service documentation which has many conceptual, how-to guides, and tutorials that can be leveraged in the open-source as well.
- [Features](https://docs.microsoft.com/azure/healthcare-apis/fhir-features-supported): This document lists the main features of the Azure Healthcare APIs and the Azure API for FHIR. In general, you can use the features of the Azure Healthcare APIs as a view to the SQL open-source FHIR service and the Azure API for FHIR as a view to the Cosmos DB open-source FHIR server.
- [Authentication](docs/Authentication.md): Describes the authentication settings for the FHIR server and how to make use of it in development and test scenarios.
- [Roles](docs/Roles.md): Describes how the FHIR Server for Azure role-based access control (RBAC) system works.
- [FHIR Server Samples Repo](https://github.com/Microsoft/fhir-server-samples): A demo sandbox using the Azure API for FHIR.
- [SMART on FHIR Proxy tutorial](docs/SMARTonFHIR.md): Describes how to use the proxy to enable SMART on FHIR applications with the FHIR Server.
- [FHIR Postman tutorial](https://docs.microsoft.com/azure/healthcare-apis/access-fhir-postman-tutorial): Describes how to access a FHIR API using Postman.
- [Debugging](docs/HowToDebug.md): Describes how to debug FHIR Server for Azure using Visual Studio.
* Blog: [FHIR Server for Azure, an open source project for modern healthcare](https://cloudblogs.microsoft.com/industry-blog/health/2018/11/12/fhir-server-for-azure-an-open-source-project-for-cloud-based-health-solutions/).