# IdentityHub Client

The IDHub client helps users to generate, manage, and interact with their aggregated identities. The client also syncs with the parachain to submit the latest state of the user's ID graph and issue verifiable credentials.&#x20;

When a 3rd party dApp wants to access the user's identity data, it must make a request to the IDHub client and get the user's authorization before it gets the data. The Heima Network will only allow returning identity data to the identity owner, it is up to the user to decide whether to give the data to a 3rd party.

The IDHub client allows the user to interact with the IDHub dashboard, IDgraph, VCs, and the Identity score.

The client interacts with the parachain & sidechain - where calls made to the parachain are encrypted and opaque to invoke confidentiality. The content of the operation is only visible to the Client and the sidechain TEE (SGX, SGX workers/nodes, and SGX runtime).

<figure><img src="/files/0S99D48jlkl4yf1h55kY" alt=""><figcaption></figcaption></figure>

Different types of calls can be executed by the client based on the operation destination. They include:

* Untrusted Call: The client interacts with the parachain node via untrusted calls, sending transactions or queries.
* Trusted call: The client interacts with the TEE enclave directly.&#x20;
* Direct Invocation: Client calls extrinsic in SGX runtime (same as a trusted call).
* Indirect invocation: Client encrypts SGX runtime call, sends to Teerex Pallet in parachain. The worker node syncs blocks, identifies call\_work extrinsic, parses call from parachain, and dispatches them to SGX runtime.&#x20;


---

# 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.heima.network/featured-dapps/idhub/identityhub-client.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.
