> For the complete documentation index, see [llms.txt](https://docs.questera.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.questera.ai/questera-ai-sdks/rest-apis/user-module.md).

# User Module

**User** **Profile Module** maintains all the data associated with the user.

#### Create New User

Creates a new user. The main reason is to setup the signature initial authentication mechanism for all the requests by the user.

**Steps -**&#x20;

1. Create a token or any unique text for the user on your platform/protocol.
2. Have it signed by the user with their EVM based wallet.
3. Send user eth address, token and the generated signature to create new user of Quest Protocol.

<mark style="color:blue;">`GET`</mark> `https://api.questprotocol.xyz/api/token`

#### Query Parameters

| Name                                             | Type   | Description |
| ------------------------------------------------ | ------ | ----------- |
| UserETHAddress<mark style="color:red;">\*</mark> | String |             |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

#### Get User Info

Get details for the user. Send user ETH address and the saved signature in query params to get the user details. This is the user Info upon available upon request -

name, imageUrl, bannerUrl, subtitle, location, expertise, goals, interests, helpWith, about, currentWork, funFacts, email, twitter, discordId, linkedin, instagram, website, calendly

<mark style="color:blue;">`GET`</mark> `https://api.questprotocol.xyz/api/users`

#### Path Parameters

| Name           | Type   | Description |
| -------------- | ------ | ----------- |
| UserETHAddress | String |             |

#### Query Parameters

| Name                                        | Type   | Description |
| ------------------------------------------- | ------ | ----------- |
| address<mark style="color:red;">\*</mark>   | String |             |
| signature<mark style="color:red;">\*</mark> | String |             |

#### Set User Info

To set details for the User, send user ETH address and the saved generated signature to set the User details.

<mark style="color:green;">`POST`</mark> `https://api.questprotocol.xyz/api`

#### Path Parameters

| Name                                             | Type   | Description |
| ------------------------------------------------ | ------ | ----------- |
| UserETHAddress<mark style="color:red;">\*</mark> | String |             |

#### Query Parameters

| Name                                        | Type   | Description |
| ------------------------------------------- | ------ | ----------- |
| address<mark style="color:red;">\*</mark>   | String |             |
| signature<mark style="color:red;">\*</mark> | String |             |

#### Request Body

| Name                                        | Type   | Description |
| ------------------------------------------- | ------ | ----------- |
| name<mark style="color:red;">\*</mark>      | String |             |
| imageUrl<mark style="color:red;">\*</mark>  | String |             |
| bannerUrl<mark style="color:red;">\*</mark> | String |             |
| subtitle<mark style="color:red;">\*</mark>  | String |             |
| location<mark style="color:red;">\*</mark>  | String |             |
| expertise                                   | String |             |
| goals                                       | String |             |
| interests                                   | String |             |
| helpWith                                    | String |             |
| about                                       | String |             |
| currentWork                                 | String |             |
| funFacts                                    | String |             |
| twitter<mark style="color:red;">\*</mark>   | String |             |
| email<mark style="color:red;">\*</mark>     | String |             |
| discordId<mark style="color:red;">\*</mark> | String |             |
| linkedin<mark style="color:red;">\*</mark>  | String |             |
| instagram<mark style="color:red;">\*</mark> | String |             |
| website<mark style="color:red;">\*</mark>   | String |             |
| calendly                                    | String |             |

{% hint style="success" %}

#### **For any other custom, fields contact Quest Admins.**

{% endhint %}
