Aller au contenu principal

API Reference

URL de base

EnvironnementURL
Développementhttp://localhost:3001
Productionhttps://api.nomu.charlesremy.dev
Via Nuxt proxy/api (redirige automatiquement)

Authentification

L'API supporte deux méthodes d'authentification :

1. JWT Bearer Token (recommandé pour mobile et SPA)

Authorization: Bearer <token>

Le token est retourné lors du login ou du signup. Il doit être inclus dans le header Authorization de chaque requête protégée.

2. Session Passport (web)

Cookie de session géré automatiquement par le navigateur après login.

Niveaux d'accès

NiveauDescription
PublicAucune authentification requise
OptionnelFonctionne sans auth, enrichi si connecté
Auth requisToken ou session obligatoire (401 sinon)
AdminRôle admin requis (403 sinon)

Format des réponses

Toutes les réponses sont en JSON.

Succès

// 200 OK ou 201 Created
{
"id": 1,
"name": "Jean Dupont",
...
}

Erreurs

// 4xx / 5xx
{
"error": "Description de l'erreur",
"field": "email" // optionnel, pour les erreurs de validation
}

Codes d'erreur standard

CodeSignification
400Requête invalide (champs manquants ou malformés)
401Non authentifié
403Accès refusé (mauvais rôle ou ressource d'autrui)
404Ressource introuvable
409Conflit (email déjà utilisé, conversation déjà existante…)
500Erreur serveur interne

En-têtes communs

Content-Type: application/json
Authorization: Bearer <jwt_token>

Health check

GET /health
// 200 OK — pas d'auth, répond le plus tôt possible
200

Utilisé par Docker pour vérifier que le conteneur est prêt.