Cette documentation fournit des informations détaillées sur l’API de HappiHub, y compris les descriptions des endpoints, les paramètres, et des exemples de requêtes et de réponses. L’API de HappiHub permet aux développeurs d’interagir avec les fonctionnalités de la plateforme, telles que l’inscription des utilisateurs, la gestion des événements, et bien plus encore.
/api/users/signup
POST
name
(string) - Nom de l’utilisateuremail
(string) - Email de l’utilisateurpassword
(string) - Mot de passe de l’utilisateur{
"name": "John Doe",
"email": "johndoe@example.com",
"password": "password123"
}
{
"message": "Inscription réussie",
"user": {
"id": "60b8d2956b2e2c001b8f4a8a",
"name": "John Doe",
"email": "johndoe@example.com"
}
}
/api/users/login
POST
email
(string) - Email de l’utilisateurpassword
(string) - Mot de passe de l’utilisateur{
"email": "johndoe@example.com",
"password": "password123"
}
{
"message": "Connexion réussie",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
/api/users/logout
POST
{}
{
"message": "Déconnexion réussie"
}
/api/users/role
GET
GET /api/users/role
{
"role": "Visitor"
}
/api/users/:id
GET
id
(string) - ID de l’utilisateurGET /api/users/60b8d2956b2e2c001b8f4a8a
{
"id": "60b8d2956b2e2c001b8f4a8a",
"name": "John Doe",
"email": "johndoe@example.com"
}
/api/users/profile
PUT
name
(string) - Nom de l’utilisateuremail
(string) - Email de l’utilisateurpassword
(string) - Mot de passe de l’utilisateurrank
(string) - Rang de l’utilisateur{
"name": "Jane Doe",
"email": "janedoe@example.com",
"password": "newpassword123",
"rank": "Friend"
}
{
"message": "Profil mis à jour avec succès",
"user": {
"id": "60b8d2956b2e2c001b8f4a8a",
"name": "Jane Doe",
"email": "janedoe@example.com",
"rank": "Friend"
}
}
/api/events
POST
title
(string) - Titre de l’événementdescription
(string) - Description de l’événementdate
(string) - Date de l’événementlocation
(string) - Lieu de l’événement{
"title": "Concert de Rock",
"description": "Un concert de rock en plein air.",
"date": "2024-08-15T18:00:00Z",
"location": "Parc Central"
}
{
"message": "Événement créé avec succès",
"event": {
"id": "60b8d2956b2e2c001b8f4a8b",
"title": "Concert de Rock",
"description": "Un concert de rock en plein air.",
"date": "2024-08-15T18:00:00Z",
"location": "Parc Central"
}
}
/api/events
GET
GET /api/events
[
{
"id": "60b8d2956b2e2c001b8f4a8b",
"title": "Concert de Rock",
"description": "Un concert de rock en plein air.",
"date": "2024-08-15T18:00:00Z",
"location": "Parc Central"
},
{
"id": "60b8d2956b2e2c001b8f4a8c",
"title": "Atelier de Peinture",
"description": "Un atelier de peinture pour les débutants.",
"date": "2024-08-20T10:00:00Z",
"location": "Centre Culturel"
}
]
/api/events/public
GET
GET /api/events/public
[
{
"id": "60b8d2956b2e2c001b8f4a8
b",
"title": "Concert de Rock",
"description": "Un concert de rock en plein air.",
"date": "2024-08-15T18:00:00Z",
"location": "Parc Central"
},
{
"id": "60b8d2956b2e2c001b8f4a8c",
"title": "Atelier de Peinture",
"description": "Un atelier de peinture pour les débutants.",
"date": "2024-08-20T10:00:00Z",
"location": "Centre Culturel"
}
]
/api/comments/add
POST
text
(string) - Contenu du commentaireevent_id
(string) - ID de l’événementuser_id
(string) - ID de l’utilisateur{
"text": "Super événement, j'ai adoré !",
"event_id": "60b8d2956b2e2c001b8f4a8b",
"user_id": "60b8d2956b2e2c001b8f4a8a"
}
{
"message": "Commentaire ajouté avec succès",
"comment": {
"id": "60b8d2956b2e2c001b8f4a8d",
"event_id": "60b8d2956b2e2c001b8f4a8b",
"user_id": "60b8d2956b2e2c001b8f4a8a",
"text": "Super événement, j'ai adoré !",
"date": "2024-07-16T18:00:00Z"
}
}
/api/comments/:commentId
PUT
text
(string) - Nouveau contenu du commentaire{
"text": "Événement fantastique, vraiment bien organisé !"
}
{
"message": "Commentaire modifié avec succès",
"comment": {
"id": "60b8d2956b2e2c001b8f4a8d",
"event_id": "60b8d2956b2e2c001b8f4a8b",
"user_id": "60b8d2956b2e2c001b8f4a8a",
"text": "Événement fantastique, vraiment bien organisé !",
"date": "2024-07-16T18:00:00Z"
}
}
/api/comments/:commentId
DELETE
DELETE /api/comments/60b8d2956b2e2c001b8f4a8d
{
"message": "Commentaire supprimé avec succès"
}
/api/events/:eventId/comments
GET
GET /api/events/60b8d2956b2e2c001b8f4a8b/comments
[
{
"id": "60b8d2956b2e2c001b8f4a8d",
"event_id": "60b8d2956b2e2c001b8f4a8b",
"user_id": "60b8d2956b2e2c001b8f4a8a",
"text": "Super événement, j'ai adoré !",
"date": "2024-07-16T18:00:00Z"
},
{
"id": "60b8d2956b2e2c001b8f4a8e",
"event_id": "60b8d2956b2e2c001b8f4a8b",
"user_id": "60b8d2956b2e2c001b8f4a8a",
"text": "Vraiment une belle expérience, merci aux organisateurs !",
"date": "2024-07-16T18:00:00Z"
}
]