> 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/gamification/skills-module.md).

# Skills Module

**Skills Module** measures the skills of a user with every contribution they make, forming skill-score mapping and creating Skill Trees.

#### Get All Skills available in Quest&#x20;

Gets all the levels and threshold XP of an Entity.

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

#### Query Parameters

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

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

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

{% endtab %}
{% endtabs %}

{% hint style="info" %}

#### If entityID is not passed, it will give the default Quest Protocol SkillsGet Badges for an Entity

{% endhint %}

#### Add New Skill

Adds a new skill for your Entity, can only be done by Entity Admins/Owners.

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

#### Path Parameters

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

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

#### Add Multiple New Skills

Adds a multiple new skills for your Entity, which can only be done by Entity Admins/Owners.

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

#### Path Parameters

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

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

#### Update Levels for Entity

Updates a level requirements in an Entity. Can be only performed by admin/owner of the Entity.

<mark style="color:green;">`POST`</mark> `https://api.questprotocol.xyz/api/entities/${entityID}/levels/${lvID}/update`

#### Query Parameters

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

#### Request Body

| Name                                          | Type   | Description |
| --------------------------------------------- | ------ | ----------- |
| name<mark style="color:red;">\*</mark>        | String |             |
| description<mark style="color:red;">\*</mark> | String |             |
| skillIds<mark style="color:red;">\*</mark>    | String |             |
| scores<mark style="color:red;">\*</mark>      | String |             |
| endsAt<mark style="color:red;">\*</mark>      | String |             |
| XP<mark style="color:red;">\*</mark>          | String |             |

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