From 65c7096f461bff258a97e46731133b4b8de3adcf Mon Sep 17 00:00:00 2001
From: Mathis HERRIOT <197931332+0x485254@users.noreply.github.com>
Date: Tue, 20 Jan 2026 11:49:47 +0100
Subject: [PATCH] feat(docs): update API reference with new endpoints and
extended parameter details
---
documentation/content/docs/api-reference.mdx | 85 ++++++++++++++++----
1 file changed, 71 insertions(+), 14 deletions(-)
diff --git a/documentation/content/docs/api-reference.mdx b/documentation/content/docs/api-reference.mdx
index 5aaa090..442676e 100644
--- a/documentation/content/docs/api-reference.mdx
+++ b/documentation/content/docs/api-reference.mdx
@@ -82,6 +82,11 @@ Cette page documente tous les points de terminaison disponibles sur l'API Memego
Récupère les informations détaillées de l'utilisateur connecté. Requiert l'authentification.
+
+ Récupère le profil public d'un utilisateur par son nom d'utilisateur.
+ **Réponse :** `id`, `username`, `displayName`, `avatarUrl`, `createdAt`.
+
+
Extrait l'intégralité des données de l'utilisateur au format JSON (Conformité RGPD).
Contient le profil, les contenus et les favoris.
@@ -89,7 +94,22 @@ Cette page documente tous les points de terminaison disponibles sur l'API Memego
Met à jour les informations du profil.
+ **Corps :**
- `displayName` (string)
+ - `bio` (string)
+
+
+
+ Met à jour l'avatar de l'utilisateur.
+ **Type :** `multipart/form-data`
+ **Champ :** `file` (Image)
+
+
+
+ Met à jour les consentements légaux de l'utilisateur.
+ **Corps :**
+ - `termsVersion` (string)
+ - `privacyVersion` (string)
@@ -105,9 +125,9 @@ Cette page documente tous les points de terminaison disponibles sur l'API Memego
- `POST /users/me/2fa/disable` : Désactive avec jeton.
-
- Liste tous les utilisateurs. Réservé aux administrateurs.
- **Params :** `limit`, `offset`.
+
+ - `GET /users/admin` : Liste tous les utilisateurs (avec pagination `limit`, `offset`).
+ - `DELETE /users/:uuid` : Supprime définitivement un utilisateur par son UUID.
@@ -118,12 +138,15 @@ Cette page documente tous les points de terminaison disponibles sur l'API Memego
Recherche et filtre les contenus. Ces endpoints sont mis en cache (Redis + Navigateur).
**Query Params :**
+ - `limit` (number) : Défaut 10.
+ - `offset` (number) : Défaut 0.
- `sort` : `trend` | `recent` (uniquement sur `/explore`)
- - `tag` (string)
- - `category` (slug ou id)
- - `author` (username)
- - `query` (titre)
- - `favoritesOnly` (bool)
+ - `tag` (string) : Filtrer par tag.
+ - `category` (slug ou id) : Filtrer par catégorie.
+ - `author` (username) : Filtrer par auteur.
+ - `query` (titre) : Recherche textuelle.
+ - `favoritesOnly` (bool) : Ne montrer que les favoris de l'utilisateur connecté.
+ - `userId` (uuid) : Filtrer les contenus d'un utilisateur spécifique.
@@ -133,8 +156,13 @@ Cette page documente tous les points de terminaison disponibles sur l'API Memego
Si l'User-Agent correspond à un robot d'indexation (Googlebot, Twitterbot, etc.), l'API retourne un rendu HTML minimal contenant les méta-tags **OpenGraph** et **Twitter Cards** pour un partage optimal. Pour les autres clients, les données sont retournées en JSON.
+
+ Crée une entrée de contenu (sans upload de fichier direct). Utile pour référencer des URLs externes.
+ **Corps :** `title`, `description`, `url`, `type`, `categoryId`, `tags`.
+
+
- Upload un fichier avec traitement automatique.
+ Upload un fichier avec traitement automatique par le serveur.
**Type :** `multipart/form-data`
**Champs :**
@@ -145,6 +173,11 @@ Cette page documente tous les points de terminaison disponibles sur l'API Memego
- `tags`? : string[]
+
+ Génère une URL présignée pour un upload direct vers S3.
+ **Query Param :** `fileName` (string).
+
+
Incrémente les statistiques de vue ou d'utilisation.
@@ -152,6 +185,10 @@ Cette page documente tous les points de terminaison disponibles sur l'API Memego
Supprime un contenu (Soft Delete). Doit être l'auteur.
+
+
+ Supprime définitivement un contenu. **Réservé aux administrateurs.**
+
### 📂 Catégories, ⭐ Favoris, 🚩 Signalements
@@ -159,19 +196,23 @@ Cette page documente tous les points de terminaison disponibles sur l'API Memego
- `GET /categories` : Liste toutes les catégories.
+ - `GET /categories/:id` : Détails d'une catégorie.
- `POST /categories` : Création (Admin uniquement).
+ - `PATCH /categories/:id` : Mise à jour (Admin uniquement).
+ - `DELETE /categories/:id` : Suppression (Admin uniquement).
- - `GET /favorites` : Liste les favoris de l'utilisateur.
+ Requiert l'authentification.
+ - `GET /favorites` : Liste les favoris de l'utilisateur (avec pagination `limit`, `offset`).
- `POST /favorites/:contentId` : Ajoute un favori.
- `DELETE /favorites/:contentId` : Retire un favori.
- `POST /reports` : Signale un contenu ou un tag.
- - `GET /reports` : Liste (Modérateurs).
- - `PATCH /reports/:id/status` : Gère le workflow.
+ - `GET /reports` : Liste des signalements (Pagination `limit`, `offset`). **Admin/Modérateurs**.
+ - `PATCH /reports/:id/status` : Change le statut (`pending`, `resolved`, `dismissed`). **Admin/Modérateurs**.
@@ -185,7 +226,23 @@ Cette page documente tous les points de terminaison disponibles sur l'API Memego
- - `GET /tags` : Recherche de tags populaires ou récents.
- **Params :** `query`, `sort`, `limit`.
+ - `GET /tags` : Recherche de tags.
+ - **Params :** `query` (recherche), `sort` (`popular` | `recent`), `limit`, `offset`.
+
+
+
+### 🛠️ Système & Médias
+
+
+
+ - `GET /health` : Vérifie l'état de l'API et de la connexion à la base de données.
+
+
+
+ - `GET /media/*key` : Accès direct aux fichiers stockés sur S3. Supporte la mise en cache agressive.
+
+
+
+ - `GET /admin/stats` : Récupère les statistiques globales de la plateforme. **Admin uniquement**.