POST /cosmetic/create-cosmetic
Créer un nouveau cosmétique.
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
- Site
🧾 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 | ✅ | Le nom du cosmetic | ❌ |
type | string | Body | ✅ | Le type du cosmetic | ❌ |
rarity | string | Body | ✅ | La rareté du cosmetic | ❌ |
game | string | Body | ✅ | La jeu ou est le cosmetic | ❌ |
argumentFr | string | Body | ✅ | La description du cosmetic en Français | ❌ |
argumentEn | string | Body | ✅ | La description du cosmetic en Anglais | ❌ |
image | string | Body | ❌ | Le chemin de l'image dans le texture pack | "default.png" |
lootbox | bool | Body | ❌ | Si il est obtenable dans les lootboxs | false |
price | number | Body | ❌ | Définie le prix dans la boutique | 0 |
description | string | Body | ❌ | Défini la description du cosmetic | null |
collection | string | Body | ❌ | Défini la collection | null |
render | string | Body | ❌ | Défini l'affichage 3D | null |
permanent | bool | Body | ❌ | Défini s'il est permanent | false |
🧾 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 badge |
name | string | ❌ | Le nom du cosmetic |
type | string | ❌ | Le type du cosmetic |
rarity | string | ❌ | La rareté du cosmetic |
game | string | ❌ | Le jeu où est le cosmetic |
argumentFr | string | ❌ | La description du cosmetic en Français |
argumentEn | string | ❌ | La description du cosmetic en Anglais |
image | string | ❌ | Le chemin de l'image dans le texture pack |
lootbox | bool | ❌ | Si il est obtenable dans les lootboxs |
price | number | ❌ | Définie le prix dans la boutique |
description | string | ✅ | Défini la description du cosmetic |
collection | string | ✅ | Défini la collection |
render | string | ✅ | Défini l'affichage 3D |
permanent | bool | ❌ | Défini s'il est permanent |
📤 Exemple de requête
http://0.0.0.0/api/cosmetic/create-cosmetic
Et dans le body mettre par exemple :
{
"name": "batte",
"type": "Sword",
"rarity": "Commun",
"game" : "infecte",
"argumentFr": "Batte de baseball!!!",
"argumentEn": "Baseball bat!!!",
"image": "batte.png",
"lootbox": true
}
📥 Exemple de réponse
Si le cosmétique est bien créé (code 201) :
{
"id": 0,
"name": "batte",
"type": "Sword",
"rarity": "Commun",
"game" : "infecte",
"argumentFr": "Batte de baseball!!!",
"argumentEn": "Baseball bat!!!",
"image": "batte.png",
"lootbox": true,
"price": 0,
"description": null,
"collection": null,
"render": null,
"permanent": 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 la
modification d'un cosmétic. Dans notre cas, le nom batte est déjà utilisé.
{
"message": "could not execute statement [(conn=10039453) Duplicate entry 'batte' for key 'cosmetics_pk_2'] [insert into cosmetics (argument_EN,argument_FR,collection,description,game,image,lootbox,name,permanent,price,rarity,render,type) values (?,?,?,?,?,?,?,?,?,?,?,?,?) returning id]; SQL [insert into cosmetics (argument_EN,argument_FR,collection,description,game,image,lootbox,name,permanent,price,rarity,render,type) values (?,?,?,?,?,?,?,?,?,?,?,?,?) returning id]; constraint [cosmetics_pk_2]",
"code": 409
}