POST /badge/create-badge
Créer un nouveau badge.
Cette route nécessite de mettre votre clé API dans le Header.
👥 Autorisation
Les personnes autorisées pour utiliser cette requête sont :
- Corail
- Zelta
🧾 Paramètres
Les champs suivants sont attendus dans le corps de la requête :
| Nom | Type | Dans | Requis | Description | Valeur par default |
|---|---|---|---|---|---|
name | string | Body | ✅ | Nom du badge | ❌ |
description | string | Body | ✅ | Description du badge | ❌ |
rarity | string | Body | ✅ | Rareté du badge (ex. commun, rare, etc.) | ❌ |
texture | string | Body | ✅ | URL de l’image du badge | ❌ |
obtainable | bool | Body | ✅ | Badge obtenable hors event ? | ❌ |
🧾 Réponse
Les données que l'API retournera avec le succès de la requête :
| Nom | Type | Nullable | Description |
|---|---|---|---|
id | number | ❌ | L'ID du grade |
name | string | ❌ | Le nom du grade à créer |
description | string | ❌ | Description du badge |
rarity | string | ❌ | Rareté du badge (ex. commun, rare, etc.) |
texture | string | ❌ | URL de l’image du badge |
obtainable | bool | ❌ | Badge obtenable hors event ? |
📤 Exemple de requête
http://0.0.0.0/api/badge/create-badge
Et dans le body mettre par exemple :
{
"name": "test",
"description": "Un badge pour tester.",
"rarity": "Rare",
"texture": "text.png",
"obtainable": false
}
📥 Exemple de réponse
Si le badge est bien créé (code 201) :
{
"id" : 8,
"name": "test",
"description": "Un badge pour tester.",
"rarity": "Rare",
"texture": "text.png",
"obtainable": false
}
⛔ Les erreurs
Les différents types d'erreurs :
| Code HTTP | Description | Cause possible |
|---|---|---|
| 400 | Bad Request | Paramètres manquants ou invalides |
| 401 | Unauthorized | Clé API manquante ou invalide |
| 403 | Forbidden | Droits insuffisants pour utiliser la requête |
| 409 | Conflict | Conflit avec des données existantes |
| 500 | Internal Server Error | Erreur interne du serveur |
En cas d'erreur 500, contactez directement Zeltaria avec votre requête, sa réponse ainsi que toutes informations que vous jugez pertinentes !
En cas d'erreur voici les informations que retourne l'API
| Nom | Type | Description |
|---|---|---|
code | number | Le code d'erreur que retourne la requête |
message | string | Le message de l'API expliquant l'erreur |
Exemple avec l'erreur 409 Conflict :
Ici par exemple, l'erreur 409 signifie que la base de donnée a rencontré une erreur lors de l'ajout
du nouveau badge. Dans notre cas, le nom Test est déjà utilisé.
{
"message": "could not execute statement [(conn=9858973) Duplicate entry 'Test' for key 'badges_pk_2'] [insert into badges (description,name,obtainable,rarity,texture) values (?,?,?,?,?) returning id]; SQL [insert into badges (description,name,obtainable,rarity,texture) values (?,?,?,?,?) returning id]; constraint [badges_pk_2]",
"code": 409
}