Centres d'intérêt
GET /interests
Public
Retourne tous les centres d'intérêt actifs. Utilisé pour alimenter les filtres de l'explorateur et les formulaires de profil.
Request
GET /interests
Response
200 OK
[
{ "id": 1, "name": "Yoga", "icon": "🧘", "is_active": true },
{ "id": 2, "name": "Randonnée", "icon": "🥾", "is_active": true },
{ "id": 3, "name": "Cuisine", "icon": "🍳", "is_active": true }
]
GET /interests/admin
Admin
Retourne tous les intérêts, y compris les inactifs.
POST /interests/admin
Admin
Crée un nouveau centre d'intérêt.
Request
POST /interests/admin
Authorization: Bearer <admin_token>
Content-Type: application/json
{
"name": "Surf",
"icon": "🏄",
"is_active": true
}
Response
201 Created
{
"id": 25,
"name": "Surf",
"icon": "🏄",
"is_active": true
}
409 Conflict — Nom déjà existant
PUT /interests/admin/:id
Admin
Met à jour un intérêt existant.
DELETE /interests/admin/:id
Admin
Supprime un intérêt. Les associations profile_interests sont supprimées en cascade.