# Data flows

idOS provides multiple ways for users to access, manage, and share their identity data securely. Below, we outline four key user flows, demonstrating how users interact with the idOS network at different stages.

### A new user joins idOS and gets a credential issued into their profile <a href="#a-new-user-joins-the-idos" id="a-new-user-joins-the-idos"></a>

**(A): Joining the idOS ecosystem:** A new user (in this case Alice) joins idOS by (1) going to any integrated idOS Issuer or Consumer Application. If the integrating dApp uses the idOS Isle Alice will interface accordingly (2). Alice verifies her wallet (3). (4). Alice defines a secure encryption key seed via the idOS enclave. (5) The idOS Data Issuer ("Neobank") creates Alice’s idOS entry and adds her wallet to her data store. \
\&#xNAN;**(B): Issuing a new Credential:** Alice gets her first credential by (1) interfacing with the integrating application (1), interacting with idOS Dashboard (if integrated, 2), the supporting app ("Neobank) will ask Alice for a (delegated) Write Grant (3). and takes her through an (externally integrated) Verification flow (4). After successful verification, the Service will return verified information (5) and write it signed into the idOS (6).

<figure><img src="https://content.gitbook.com/content/gv8HakfqZWUk4wT7l2Gl/blobs/lTwB7AbRpaAxfjcE9eRv/idOS_User_Credential_Flow.jpg" alt=""><figcaption><p>Onboarding and Credential Issuance.</p></figcaption></figure>

### **A user manages data on a data dashboard** <a href="#a-user-manages-data-on-a-data-dashboard" id="a-user-manages-data-on-a-data-dashboard"></a>

**(A): Accessing Data in the idOS Profile:** For Alice to see her data on a dashboard (e.g. the [User Data Dashboard](https://app.gitbook.com/o/CTEccIGTIOCKYOoZR03F/s/HHuxcxHW3wWO2HhMI3B3/how-it-works/functionality/user-data-dashboard)), she needs to (1) go to a data dashboard and (2) sign a message transaction with her wallet for the dashboard (3) to retrieve her idOS data. Afterwards she needs to decrypt the end-2-end encrypted data via an implemented idOS Enclave interface (4).\
(**B): Updating Data in the idOS Profile**: To change data on the dashboard, Alice (1) signs a message through her wallet (2) the dashboard then creates or updates her idOS data according to her input and (3) reloads Alice’s data from the idOS.

<figure><img src="https://content.gitbook.com/content/gv8HakfqZWUk4wT7l2Gl/blobs/dmrf5jK58aPkXMfdsZlD/idOS_Data_Dashboard_Flow.jpg" alt=""><figcaption><p>Reading and Writing Data through the Dashboard</p></figcaption></figure>

### **Granting another user access to data** <a href="#granting-another-user-access-to-data" id="granting-another-user-access-to-data"></a>

**(A) Granting access to a Data Consumer:** Alice grants Bob access to her data by (1) going to a integrated idOS Issuer or Consumer Application, optionally interacting with the idOS Isle (2), creating an access grant and (3) approving the transaction in her wallet. The Access Management Protocol is (4) updated, which in directly updates the idOS nodes. The encrypted credential is retrieved from the idOS, decrypted via the idOS enclave (5), reencrypted for the recipient (Charlie) and placed back into the idOS (6). Charlie can now see Alice’s data on a dashboard, and/or get it from a node. (see next flow)\
(**B) Retrieving Credential via the idOS Data Dashboard:** Charlie can now (1) go to his data dashboard, (2) sign a message in his wallet and (3) see Alice's data that the dashboard dApp retrieved from the idOS (unless Alice revokes the grant or deletes the data before). The retrieved data needs to be decrypted (4).

<figure><img src="https://content.gitbook.com/content/gv8HakfqZWUk4wT7l2Gl/blobs/XXEz6JVBM1I19n31ayld/idOS_Gitbook_Access_Granting.jpg" alt=""><figcaption><p>Granting Access to a Data Consumer</p></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.idos.network/how-it-works/key-flows/data-flows.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
