# Sign in request

## What are sign in requests?

A sign in request is **the way a dApp can identify a user**. Let's explain it with the following example:

When a user wants to log in or register in your dApp, the dApp has to know how to identify a user to know which operations to perform. To do so, it uses the **CKBull Signer API** with the dApp credentials to generate a new and unique sign in request that needs to be signed by the user who requested it.

Here's a workflow on how a sign in request is generated and signed by a user and how it affects all the entities in the system:

<figure><img src="/files/cT58wENQ2rf54fitBaHj" alt=""><figcaption><p>Sign in request workflow</p></figcaption></figure>

## Sign in request life cycle

In the lifetime of a sign in request, it may contain multiple states depending on the actions performed by a user. The next flow shows the complete life cycle of a sign in request and its states.

<figure><img src="/files/5XRbVYeu6IEbTegTARev" alt=""><figcaption><p>Sign in request life cycle</p></figcaption></figure>

## How does the request identifies the user?

To identify who signed the transaction via **CKBull Wallet**, a payload containing the address and network of the signer is passed when the user signs the request. For a detailed explanation, read the [**API docs**](/api/requests/sign-in-request.md). A sign in request has the following appearance in CKBull Wallet, showing the dApp's name, description and logo.<br>

<figure><img src="/files/4WqoDyRils9yOXwqVe35" alt="" width="375"><figcaption><p>Sign in request in CKBull Wallet</p></figcaption></figure>

Having explained sign in requests, we can now introduce the second key concept of the platform, transaction requests.


---

# 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.ckbull.app/guides-and-concepts/sign-in-request.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.
