Guide curl pour l'API KickMyB
Ce guide explique comment utiliser curl pour tester l'API KickMyB depuis la ligne de commande.
Ce guide est monté avec l'URL https://kickmyb-server.onrender.com que tu pourras remplacer par:
http://localhost:8080quand tu exécutes le serveur en local- l'URL de ton instance render quand tu auras complété ton déploiement
Introduction à curl
curl est un outil en ligne de commande pour faire des requêtes HTTP. Il est très utile pour:
- Tester une API sans écrire de code
- Déboguer des problèmes de réseau
- Comprendre comment fonctionnent les requêtes HTTP
Options curl importantes
-X POST: Spécifie la méthode HTTP (POST, GET, etc.)-H "Content-Type: application/json": Ajoute un en-tête HTTP-d '{"clé":"valeur"}': Envoie des données (body de la requête)-c cookies.txt: Sauvegarde les cookies dans un fichier-b cookies.txt: Utilise les cookies d'un fichier-v: Mode verbose (affiche tous les détails)-i: Affiche les en-têtes de réponse
Prérequis
L'API KickMyB utilise des cookies de session pour maintenir la connexion. Il faut donc:
- D'abord s'inscrire ou se connecter
- Sauvegarder le cookie de session
- Utiliser ce cookie pour les requêtes suivantes
Scénario complet d'utilisation
1. Inscription d'un nouvel utilisateur
curl -X POST https://kickmyb-server.onrender.com/id/inscription \
-H "Content-Type: application/json" \
-d '{
"nom": "test@example.com",
"motDePasse": "123456",
"confirmationMotDePasse": "123456"
}' \
-c cookies.txt
Explication:
-X POST: Requête POST-H "Content-Type: application/json": Indique qu'on envoie du JSON-d '{...}': Les données JSON à envoyer-c cookies.txt: Sauvegarde le cookie de session dans le fichiercookies.txt-v: Affiche les détails de la requête/réponse
Réponse attendue:
{
"nomUtilisateur": "test@example.com"
}
2. Connexion (si déjà inscrit)
curl -X POST https://kickmyb-server.onrender.com/id/connexion \
-H "Content-Type: application/json" \
-d '{
"nom": "test@example.com",
"motDePasse": "123456"
}' \
-c cookies.txt
Important: Utilise toujours -c cookies.txt pour sauvegarder le cookie de session!
3. Accéder à l'accueil des tâches
Une fois connecté, on peut accéder aux endpoints protégés en utilisant le cookie:
curl https://kickmyb-server.onrender.com/tache/accueil \
-b cookies.txt
Explication:
-b cookies.txt: Utilise le cookie sauvegardé lors de l'inscription/connexion- Pas besoin de
-X GETcar GET est la méthode par défaut
Réponse attendue:
[
{
"id": 1,
"nom": "Ma première tâche",
"pourcentageAvancement": 0,
"pourcentageTemps": 50,
"dateLimite": "2026-03-01T12:00:00"
}
]
4. Ajouter une tâche
curl -X POST https://kickmyb-server.onrender.com/tache/ajout \
-H "Content-Type: application/json" \
-d '{
"nom": "Finir le TP2",
"dateLimite": "2026-03-15T23:59:00"
}' \
-b cookies.txt
Important:
- Toujours utiliser
-b cookies.txtpour les endpoints protégés - La date doit être au format
YYYY-MM-DDTHH:MM:SS
5. Voir le détail d'une tâche
curl https://kickmyb-server.onrender.com/tache/detail/1 \
-b cookies.txt \
-v
Réponse attendue:
{
"id": 1,
"nom": "Finir le TP2",
"dateLimite": "2026-03-15T23:59:00",
"changements": [
{
"valeur": 0,
"dateChangement": "2026-02-05T19:00:00"
}
],
"pourcentageAvancement": 0,
"pourcentageTemps": 15.5
}
6. Mettre à jour le progrès d'une tâche
curl https://kickmyb-server.onrender.com/tache/progres/1/50 \
-b cookies.txt \
-v
Explication:
/tache/progres/{idTache}/{valeur}1= ID de la tâche50= Nouvelle valeur de progression (50%)
7. Déconnexion
curl -X POST https://kickmyb-server.onrender.com/id/deconnexion \
-b cookies.txt \
-v
Après la déconnexion, le cookie n'est plus valide.
Sauvegarder la réponse dans un fichier
curl https://kickmyb-server.onrender.com/tache/accueil \
-b cookies.txt \
-o reponse.json
403 Unauthorized
Si vous obtenez une erreur 401, cela signifie que:
- Vous n'êtes pas connecté
- Le cookie a expiré
- Vous avez oublié d'utiliser
-b cookies.txt
Solution: Refaire l'inscription ou la connexion avec -c cookies.txt
400 Bad Request
Si vous obtenez une erreur 400, vérifiez:
- Le format JSON de vos données
- Les guillemets (simples vs doubles)
- Le format de la date
Le serveur ne répond pas
Le serveur KickMyB est hébergé sur Render avec un plan gratuit. Il se met en veille après 15 minutes d'inactivité.
Solution: Ouvrir https://kickmyb-server.onrender.com/index dans un navigateur pour le réveiller (ça peut prendre 30-60 secondes).