Skip to content

Points d'accès API TravelsAPI

Structure des endpoints

graph LR
    A[TravelsAPI] --> B[/trips]
    A --> C[/publications]
    A --> D[/reservations]
    A --> E[/opinions]
    B --> B1[/{tripId}]
    C --> C1[/{publicationId}]
    C --> C2[/manage-places]
    D --> D1[/{reservationId}]
    E --> E1[/{opinionId}]

Endpoints détaillés

Gestion des voyages (/trips)

Méthode Endpoint Description
POST /trips Création d'un nouveau voyage
PUT /trips/{tripId} Mise à jour d'un voyage
DELETE /trips/{tripId} Suppression d'un voyage
GET /trips/{tripId} Récupération d'un voyage
GET /trips Liste des voyages avec pagination

Publications (/publications)

Méthode Endpoint Description
PUT /publications/{publicationId} Mise à jour d'une publication
DELETE /publications/{publicationId} Suppression d'une publication
GET /publications/{publicationId} Récupération d'une publication
GET /publications Recherche de publications
POST /publications/{publicationId}/manage-places Gestion des places disponibles

Réservations (/reservations)

Méthode Endpoint Description
POST /reservations Création d'une réservation
PUT /reservations/{reservationId} Mise à jour d'une réservation
DELETE /reservations/{reservationId} Annulation d'une réservation
GET /reservations/{reservationId} Détails d'une réservation
GET /reservations Liste des réservations

Avis (/opinions)

Méthode Endpoint Description
POST /opinions Ajout d'un avis
PUT /opinions/{opinionId} Modification d'un avis
DELETE /opinions/{opinionId} Suppression d'un avis
GET /opinions/{opinionId} Lecture d'un avis
GET /opinions Liste des avis

Paramètres communs

Pagination

  • currentPage: numéro de la page (minimum: 1)
  • sizePage: taille de la page (minimum: 3)

Filtres de recherche

  • establishmentId: identifiant de l'établissement
  • destination: lieu de destination
  • startDate: date de début
  • endDate: date de fin
  • adultTravelers: nombre d'adultes
  • childTravelers: nombre d'enfants
  • babiesTravelers: nombre de bébés
  • maxPrice: prix maximum
  • minPrice: prix minimum

Formats de réponse

Toutes les réponses sont au format JSON et suivent une structure commune:

{
    "content": [...],
    "currentPage": 1,
    "totalPages": 10,
    "totalElements": 100
}

Codes de statut HTTP

  • 200: Succès
  • 201: Création réussie
  • 204: Suppression réussie
  • 400: Requête invalide
  • 403: Accès refusé
  • 404: Ressource non trouvée
  • 500: Erreur serveur