API Mitaines
Base URL, authentification, exemples et erreurs pour consommer l'API sans friction.
Base URL
Local : http://localhost:3000
Prod : http://68.233.121.181
GET /api/mittens/random
Authentification
Les routes privées requièrent un token JWT.
Authorization: Bearer <token>
Routes publiques
1. Mitaine aléatoire
Route : /api/mittens/random
Méthode : GET
Description : Récupère une mitaine au hasard.
GET /api/mittens/random
Réponse 200
{
"data": {
"id": 1,
"name": "Mitaine X",
"types": ["Doux", "Luxe"],
"hp": 12,
"cp": 4,
"picture": "https://..."
}
}
2. Vérification code
Route : /api/verifyCode
Méthode : POST
Description : Génère un token de vérification pour créer un utilisateur.
POST /api/verifyCode
{
"code": "code_de_verification"
}
Réponse 200
{
"token": "verify_token"
}
3. Créer un utilisateur
Route : /api/users
Méthode : POST
POST /api/users
{
"username": "nom_utilisateur",
"password": "mot_de_passe",
"token": "verify_token"
}
4. Connexion
Route : /api/login
Méthode : POST
POST /api/login
{
"username": "nom_utilisateur",
"password": "mot_de_passe"
}
Réponse 200
{
"token": "jwt_token",
"data": {
"id": 12,
"role": "user"
}
}
Routes connectées
5. Lister les mitaines
Route : /api/mittens
Méthode : GET
GET /api/mittens
Authorization: Bearer <token>
6. Mitaine par ID
Route : /api/mittens/:id
Méthode : GET
7. Commentaires d'une mitaine
Route : /api/mittens/:id/comments
Méthode : GET
8. Ajouter un commentaire
Route : /api/mittens/:id/comments
Méthode : POST
POST /api/mittens/:id/comments
Authorization: Bearer <token>
{
"content": "Mon commentaire"
}
9. Réactions d'une mitaine
Route : /api/mittens/:id/reactions
Méthode : GET
GET /api/mittens/:id/reactions
Authorization: Bearer <token>
10. Ajouter/retirer une réaction
Route : /api/mittens/:id/reactions
Méthode : POST
POST /api/mittens/:id/reactions
Authorization: Bearer <token>
{
"type": "like"
}
11. Mes suggestions
Route : /api/mittens/suggestions/mine
Méthode : GET
GET /api/mittens/suggestions/mine
Authorization: Bearer <token>
12. Créer une mitaine (admin)
Route : /api/mittens
Méthode : POST
13. Mettre à jour une mitaine (admin)
Route : /api/mittens/:id
Méthode : PUT
14. Supprimer une mitaine (admin)
Route : /api/mittens/:id
Méthode : DELETE
Erreurs fréquentes
401 : token manquant ou expiré
403 : permissions insuffisantes
404 : ressource inexistante
500 : erreur serveur
{
"message": "Erreur explicite"
}