Validez la fiabilité de votre API déployée : tests de santé en ligne de commande avec curl, vérification des codes de statut HTTP, tests de sécurité des routes protégées et automatisation Postman.
Inspection précise des en-têtes de réponse et des temps de latence sans passer par le navigateur.
Vérification que les endpoints confidentiels rejettent bien les requêtes sans jeton valide.
Exécution automatisée de suites de tests de validation d'API avant ouverture aux clients.
Mesure du temps de premier octet (TTFB) pour identifier les requêtes lentes.
# 1. Tester la route publique de santé (Health check)
$ curl -i https://api.mon-site.com/api/v1/health
HTTP/2 200
content-type: application/json; charset=utf-8
strict-transport-security: max-age=31536000
x-content-type-options: nosniff
{"status":"UP","timestamp":"2026-10-11T12:55:00.000Z"}
# 2. Vérifier que la route protégée bloque les requêtes non autorisées (401)
$ curl -i https://api.mon-site.com/api/v1/admin/users
HTTP/2 401
content-type: application/json; charset=utf-8
{"error":"Token d'authentification manquant ou expiré."}
# 3. Tester une requête authentifiée avec un jeton Bearer JWT
$ curl -s -X GET https://api.mon-site.com/api/v1/admin/users -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6..." -H "Accept: application/json" | jq .total
42curl -i dans votre terminal : /health répond-elle 200 en moins de 100 ms ?POST crée-t-il bien un enregistrement en base de données et renvoie-t-il 201 Created ?| Code Reçu | Signification en Production | Action Requise |
|---|---|---|
| 200 / 201 | Succès : l'API fonctionne parfaitement | Aucune, déploiement validé |
| 401 / 403 | Accès refusé ou permissions insuffisantes | Vérifier le format du header 'Authorization: Bearer <token>' |
| 404 Not Found | Endpoint introuvable | Vérifier la casse de l'URL et la directive proxy_pass de Nginx |
| 502 Bad Gateway | Nginx n'arrive pas à joindre Node.js | Vérifier que le processus tourne (pm2 status mon-api) |
| 500 Internal Error | Crash dans le code de l'API | Consulter immédiatement les logs (pm2 logs mon-api) |