Skip to content

manu-cj/hogwarts-challenge

Repository files navigation

A props du projet

Ce projet est encore en développement et n'est donc pas encore terminé, n'hésitez pas à revenir plus tard pour plus d'information

Objectif

  • Apprendre NodeJs pour faire l'api d'un blog Harry potter en utilisant de bonnes pratiques
  • Développer d'avantage ma capacité à conceptualiser une base de données en mongoDb et la structure d'un projet full-stack en étant exigeant autant sur la partie back que front
  • Apprendre Svelte pour faire la partie front du projet

API Documentation

Endpoint Méthode Paramètres Requis Description
/api/registre POST - email (string) : L'email de l'utilisateur. Doit être unique.
- username (string) : Le nom d'utilisateur. Doit être unique.
- password (string) : Le mot de passe de l'utilisateur. Doit correspondre à la regex ^(?=.*[A-Z])(?=.*\d)[A-Za-z\d]{5,}$.
- repeatPassword (string) : Confirmation du mot de passe.
- role (number) : Rôle de l'utilisateur (0 pour utilisateur standard).
- lobbyId (number) : Identifiant du lobby auquel l'utilisateur appartient.
Cette route permet de créer un nouveau compte utilisateur. Si toutes les validations sont réussies, l'utilisateur est enregistré dans le système.
/api/auth POST - email (string) : L'email de l'utilisateur.
- password (string) : Le mot de passe de l'utilisateur.
Cette route permet à un utilisateur de se connecter à son compte en fournissant ses identifiants (email et mot de passe). Si les informations sont correctes, un token de session est généré.
/api/refresh-token POST - refreshToken (string) : Le token de rafraîchissement précédemment obtenu lors de la connexion. Cette route permet de renouveler le token d'accès en fournissant un token de rafraîchissement valide. Un nouveau token d'accès est généré si le refresh token est valide.
/api/add-message POST - sujet (string) : Le sujet du message.
- message (string) : Le contenu du message.
- author (string) : Nom d'utilisateur de l'auteur du message.
- author_id (string) : ID de l'auteur du message.
- lobby_id (number) : Identifiant du lobby où le message est posté.
Header : Authorization: Bearer <token>
Cette route permet d'ajouter un nouveau message dans un lobby spécifique. Le message est associé à un auteur et nécessite un token d'authentification valide pour être ajouté.
/api/add-response POST - message_id (string) : L'ID du message auquel la réponse est associée.
- user_id (string) : L'ID de l'utilisateur qui répond.
- username (string) : Le nom d'utilisateur de celui qui répond.
- message (string) : Le contenu de la réponse.
- post_reacted_id (string) : L'ID du post auquel l'utilisateur répond.
- message_notif (string) : Le contenu de la notification (ex: "username a commenté votre post").
Header : Authorization: Bearer <token>
Cette route permet d'ajouter une réponse à un message existant. La réponse est liée à l'utilisateur et au post réagi, et nécessite un token d'authentification valide.
/api/add-react POST - message_id (string) : L'ID du message auquel la réaction est associée.
- user_id (string) : L'ID de l'utilisateur qui réagit.
- username (string) : Le nom d'utilisateur de celui qui réagit.
- post_reacted_id (string) : L'ID du post auquel l'utilisateur réagit.
- message_notif (string) : Le contenu de la notification (ex: "username a aimé votre post").
Header : Authorization: Bearer <token>
Cette route permet d'ajouter une réaction à un message existant. La réaction est liée à l'utilisateur et au post réagi, et nécessite un token d'authentification valide.
/api/get-lobby-messages GET - page (number) : Le numéro de la page des messages à récupérer.
- limit (number) : Le nombre de messages par page.
Header : Authorization: Bearer <token>
Cette route permet de récupérer les messages d'un lobby spécifique, paginés selon les paramètres page et limit. Un token d'authentification valide est nécessaire pour accéder aux messages.
/api/get-responses-message GET - limit (number) : Le nombre de réponses à récupérer.
Header : Authorization: Bearer <token>
Cette route permet de récupérer les réponses à un message spécifique. Le nombre de réponses retournées est limité par le paramètre limit, et un token d'authentification valide est nécessaire.
/api/get-message GET - id (string) : L'ID du message à récupérer.
Header : Authorization: Bearer <token>
Cette route permet de récupérer un message spécifique par son ID. Un token d'authentification valide est nécessaire pour accéder au message.
/api/get-notifications GET - user_id (string) : L'ID de l'utilisateur pour lequel récupérer les notifications.
Header : Authorization: Bearer <token>
Cette route permet de récupérer les notifications pour un utilisateur spécifique. Le paramètre user_id indique l'utilisateur pour lequel les notifications sont demandées, et un token d'authentification valide est nécessaire.
/api/get-user GET Header : Authorization: Bearer <token> Cette route permet de récupérer les informations de l'utilisateur authentifié. Un token d'authentification valide est nécessaire pour accéder aux données de l'utilisateur.

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published