API ESTARA App

Front-end en développement

Authentification & Inscription

POST/api/registerCréer un compte (email, password, confirmPassword)
POST/api/complete-profileCompléter le profil (fullName, username, birthDate)
POST/api/choose-sportsChoisir ses sports (sports[])
POST/api/choose-roleChoisir son rôle (isGuide: boolean)
POST/api/complete-profile-questionsRépondre au questionnaire (answers[])

Profil utilisateur

GET/api/profileMon profil complet
PUT/api/profileModifier mon profil (fullName, username, birthDate, address)

Sommets

GET/api/summitsListe des sommets avec météo
GET/api/summits/{id}Détail d'un sommet
POST/api/summits/filterFiltrer (distance, altitude, name)
POST/api/create/summitCréer un sommet Admin
PUT/api/edit/summit/{id}Modifier un sommet Admin
DELETE/api/delete/summit/{id}Supprimer un sommet Admin

Équipement

GET/api/equipmentsMon équipement
GET/api/equipments/{id}Détail d'un équipement
POST/api/create/equipmentAjouter (name, description, brand, photo)
PUT/api/edit/equipment/{id}Modifier
DELETE/api/delete/equipment/{id}Supprimer

Sorties planifiées

GET/api/planned-outingsMes sorties
POST/api/planned-outingsPlanifier (summitId, plannedDate)
DELETE/api/planned-outings/{id}Annuler

Publications

GET/api/postsToutes les publications
GET/api/posts/{id}Détail
POST/api/create/postCréer (title, description, file)
PUT/api/edit/post/{id}Modifier
DELETE/api/delete/post/{id}Supprimer

Commentaires

GET/api/commentsTous les commentaires
GET/api/comments/{id}Détail
POST/api/create/commentCréer (texte, post)
PUT/api/edit/comment/{id}Modifier
DELETE/api/delete/comment/{id}Supprimer

Système de suivi

POST/api/users/{id}/followSuivre
DELETE/api/users/{id}/followNe plus suivre
GET/api/profile/followersMes abonnés
GET/api/profile/followingMes abonnements
GET/api/users/{id}/followersAbonnés d'un utilisateur
GET/api/users/{id}/followingAbonnements d'un utilisateur
GET/api/users/{id}/follow/statusStatut de suivi

Feed

GET/api/feedLes 2 sommets les plus proches

EstaraAI

POST/api/chatPoser une question (question)