> For the complete documentation index, see [llms.txt](https://docs.coronasafe.network/abdm-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.coronasafe.network/abdm-documentation/overview-of-fhr-framework/fhr-framework-components-and-roles.md).

# FHR framework components & roles

The following section describes the roles played by the various entities represented in the FHR architecture.

#### Health data consent manager (HDCM)

HDCM plays the role of fiduciary or trustee with which a patient signs up to begin with. The HDCM does the following:

* Helps to create or discover existing ABDM ABHA Number
* Manages patient linkages to providers
* Manages consent for access to health information
* Helps discover patient information
* Monitors information exchange between HIP and HIU

All the above are done via a Patient App. In future, there will be other channels for patients to manage their health data.

#### Health information gateway

Gateway is the hub that mediates and connects Consent Manager(s), Health Repository Providers and HIUs in the network. Its primary job is to allow for discovery, routing in the network. The gateway does the following:

* Connects and validates the HDCMs and health repositories (servicing HIUs and HIPs) to the network.
* Enables routing of information.
* Authenticates connected systems within the FHR Framework (provides a signed authentication token for further communication). The entire FHR framework including the gateway communicates via asynchronous APIs over HTTPs channel.

#### Registries

There are various National level Registries that are integrated with the network.

* Health Facility registry (HFR)
* Doctor or practitioner registry (DigiDoctor)
* HDCM and Health Repository Provider (HPR) Registry

The HDCM and HRP registries are currently maintained by the ABDM Gateway.

#### Health repository

A health repository is the connector or bridge through which any HIU or HIP can connect to the network. The health repository allows HIPs and HIUs to access patient data for a specific period of time. The sandbox environment provides a basic HIU system, representing a doctor's interface. The sandbox environment also provides a mock HIP system using which you can test linkages and access to health information from multiple sources.

#### HIP services

The following responsibilities are expected to be carried out by HIP services in the FHR Framework context:

* Ability to discover and link patient's care contexts within an organization's system.
* Allow for consented means of exchange of patient's health information in a machine readable format (FHIR), conforming to standards setup by ABDM.
* Provide a secure and safe means of data transfer from organization-specific HIS (Health Information System) instance to a validated and consented requester HIU, through the ABDM Gateway.

#### HIU services

The following capabilities are expected of HIU services in the FHR context:

* Ability to search for and identify a patient using her ABHA Number. HIU systems can search for patients linked within the ABDM Gateway network, and across diverse Gateway networks in future.
* Ability to request and receive patient data in a safe and secure manner, manage data lifecycle, and enable secure data storage and access.

#### Health locker services

Health locker provides a personal digital storage for users/patients. The following capabilities are expected of Health locker services in the FHR context:

* Sign up users/patients in their system.
* Allow users to upload their health documents to their locker.
* Ability to fetch users health documents from the HIPs based on patient consent.
* Ability to Provide Health Documents, both self uploaded and fetched from HIPs, to a valid requester (HIU) based on patient consent.
* Allow user/patient access to their health documents (through their locker apps or other channels).
* Provide secure means for health document access and storage.

#### What is a Patient App?

While building and testing your health repository in integration with the sandbox's network components, you'll need to test patient flows as well. For example:

* Signup of patient with Consent Manager (CM)
* Linking patient's CM account with HIP's patient reference and health care contexts
* Granting or revoking consents

You can do all of the above using APIs as well, but the easiest way would be to use the reference patient Android App. [Download .apk file![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAACxLAAAsSwGlPZapAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAHPSURBVHgB7dpLTsJAGAfwfx9LFxyBI+gNwPCISy4gegNZa7WoB9AT2MQDqCvjI7FH4AgcgYToijJOXZgw2AfgfFMy32/RxTBJmQ/m35lJAcYYY4wxxhizkANq4XMdrtdYaJsnY4QHMQzwQS0dvOPcLbT5XiSvMQxwYTkuACzHBYDluACwHBcAluMCwHJcAFiOCwDLWV+A7BOh4UsE1+0vNs6aCEqc3Fy+Hi0deqzLcSKctY5L9b16E0ttQTv31EvPP+C8E8lvfouNiTFm0wE00jcFgtYJNjrmkoNPkibC3gQa6c2AxO/9DGQtYiAPSsfQTG8BwuZE3kEWASv+ivMhgu4jCOh/Cpx2RhCi/DxOQy/ohiBC8xgsHYr6Q09Ftw4oDEWa0FPRLoRyQ5Em9FS0BcgMRbrQU9EvhdVQJA49lZm9wG8o0oeeytxmKA3F5HOPOvRUZneDhgef4vMAWM76Aqz4hoh/gev3PqpKCKwqpwDOXwHVWOcmBo2KOmRPAdcxsjL7X/Onoh7ZBQjasbwOsbXSzdXXTVEvL/fTj/sY+4fyUFHU5ZSoYXvEcpFVamdZ7j3B8KEGb2dXzv86qsxxJ0imcRUWWIwxxhhjrOq+ARo6hGx9V/o4AAAAAElFTkSuQmCC)](https://dev.ndhm.gov.in/nexus/content/repositories/sandbox-cm/app-nhsSandbox-release_2.1.8.apk).
