# Web3 Module

**Dynamic NFT Module** creates a Dynamic NFT whose metadata updates based on member activity.

#### Get All User’s Dynamic NFTs

Get all the Dynamic NFTs of a user across all entities.

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

#### Query Parameters

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

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

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

{% endtab %}
{% endtabs %}

#### Get  User Dynamic NFT For an Entity

Get user’s Dynamic NFTs for a particular Entity.

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

#### Path Parameters

| Name                                       | Type   | Description |
| ------------------------------------------ | ------ | ----------- |
| entityID<mark style="color:red;">\*</mark> | String |             |
| mynfts<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 |             |

#### Get All Dynamic NFT Themes for an Entity

Get all the Dynamic NFT themes for a particular Entity.

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

#### Path Parameters

| Name     | Type   | Description |
| -------- | ------ | ----------- |
| entityID | String |             |
| themes   | String |             |

#### Query Parameters

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

{% hint style="warning" %}
Can be only performed by admin/owner of the Entity.
{% endhint %}

#### Add New Dynamic NFT Theme for an Entity

Get all the Dynamic NFT themes for a particular Entity.

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

#### Path Parameters

| Name     | Type   | Description |
| -------- | ------ | ----------- |
| entityID | String |             |
| themes   | 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 |
| --------------------------------------------------------- | ------ | ----------- |
| level<mark style="color:red;">\*</mark>                   | String |             |
| title<mark style="color:red;">\*</mark>                   | String |             |
| price<mark style="color:red;">\*</mark>                   | String |             |
| backgroundImageIPFS<mark style="color:red;">\*</mark>     | String |             |
| horizontalLogoImageIPFS<mark style="color:red;">\*</mark> | String |             |
| squareLogoImageIPFS<mark style="color:red;">\*</mark>     | String |             |
| backgroundColor<mark style="color:red;">\*</mark>         | String |             |
| accentColor1                                              | String |             |
| accentColor2                                              | String |             |

{% hint style="info" %}
Can be only performed by admin/owner of the Entity. Please contact Quest Admin if you want to add more items in here.
{% endhint %}

#### Update Dynamic NFT Theme for an Entity

Update Dynamic NFT theme for a particular Entity. Can be only performed by admin/owner of the Entity.

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

#### Path Parameters

| Name     | Type   | Description |
| -------- | ------ | ----------- |
| entityID | String |             |
| themes   | String |             |
| themeID  | String |             |
| update   | String |             |

#### Query Parameters

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

#### Delete Dynamic NFT Theme for an Entity

Delete Dynamic NFT theme for a particular Entity.

<mark style="color:green;">`POST`</mark> `https://api.questprotocol.xyz/api/${entityID}/themes/${themeID}/delete?address=&signature=`

#### Path Parameters

| Name     | Type   | Description |
| -------- | ------ | ----------- |
| entityID | String |             |
| themes   | String |             |
| themeID  | String |             |
| delete   | String |             |

#### Query Parameters

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

{% hint style="info" %}
Can be only performed by admin/owner of the Entity.
{% endhint %}

#### Set Default Dynamic NFT Theme for an Entity

Set default Dynamic NFT theme in an Entity like setting the first theme for any user in the Entity.

<mark style="color:green;">`POST`</mark> `https://api.questprotocol.xyz/api/entities/${entityID}/themes/default?address=&signature=`

#### Path Parameters

| Name     | Type   | Description |
| -------- | ------ | ----------- |
| entities | String |             |
| entityID | String |             |
| themes   | String |             |
| default  | String |             |

#### Query Parameters

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

{% hint style="info" %}
Can be only performed by admin/owner of the Entity.
{% endhint %}


---

# 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.questera.ai/questera-ai-sdks/rest-apis/gamification/web3-module.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.
