Réservation simple

  • Réservation
  • Réservation
  • 4 routes
Comment créer un booking simple à partir d'une proposition ?

Ce scénario explique comment rechercher la meilleure proposition, préparer la pré-réservation, créer un booking puis relire le booking client nouvellement créé.

Vue d'ensemble

Le parcours enchaîne la recherche de proposition, la préparation de la pré-réservation, la création du booking puis la relecture finale du booking. Il couvre un chemin simple de réservation de bout en bout à partir d'un contexte de proposition existant.

Prérequis

  • Les critères de réservation doivent être disponibles pour créer la proposition initiale.
  • Le contexte de proposition doit rester valide jusqu'à la pré-réservation puis à la création du booking.
  • La relecture du booking côté client requiert customer_id, booking_id, authorization, accept-language et x-api-key.

Process workflow

Legend:
Obligatoire
Optionnel
1

Rechercher une proposition optimale

Obligatoire

Utilisez POST/v1/proposals/search/best pour rechercher une proposition optimale.

Prérequis

Préparez les paramètres utiles à l'appel. Conservez x-api-key et, si la route est customer-scoped, un bearer token valide. Vérifiez le body avant appel pour éviter une erreur de validation.

Calling CURL

curl -X POST \
  -H "x-api-key: YOUR_API_KEY" \
  -H "accept-language: fr-FR" \
  -H "Content-Type: application/json" \
  -d '{"product_id": "product-1", "start_date": "2026-07-05", "end_date": "2026-07-12", "attendees": [{"birthdate": "1990-03-12"}]}' \
  "https://api.clubmed.com/v1/proposals/search/best"

Example answer

{
  "id": "proposal-1",
  "product_id": "product-1",
  "price": {
    "amount": 2890,
    "currency": "EUR"
  },
  "option_available": true
}

info: Reuse the resulting proposal_id to continue with prebooking and then booking creation.


Codes de réponse

  • 200 OK : l'opération est prise en compte et la ressource est renvoyée.
  • 400 Bad Request : le body ou les paramètres sont invalides.
  • 404 Not Found : la ressource ciblée est introuvable.
POST/v1/proposals/search/best
Voir plus
2

Préparer la pré-réservation

Obligatoire

Utilisez POST/v1/prebookings pour transformer une proposition chiffrée en contexte de pré-réservation à relire avant la création du booking.

Prérequis

Préparez les paramètres utiles à l'appel. Conservez x-api-key et, si la route est customer-scoped, un bearer token valide. Vérifiez le body avant appel pour éviter une erreur de validation.

Calling CURL

curl -X POST \
  -H "x-api-key: YOUR_API_KEY" \
  -H "accept-language: fr-FR" \
  -H "Content-Type: application/json" \
  -d '{"proposal_id": "proposal-1"}' \
  "https://api.clubmed.com/v1/prebookings"

Example answer

{
  "id": "prebooking-1",
  "status": "READY_FOR_BOOKING",
  "proposal_id": "proposal-1"
}

info: La réponse de pré-réservation aide à confirmer le prix, le stock et le contexte métier avant la création finale du booking.


Codes de réponse

  • 200 OK : l'opération est prise en compte et la ressource est renvoyée.
  • 400 Bad Request : le body ou les paramètres sont invalides.
  • 404 Not Found : la ressource ciblée est introuvable.
POST/v1/prebookings
Voir plus
3

Créer le booking

Obligatoire

Utilisez POST/v3/bookings pour transformer la proposition préparée en booking une fois les contrôles de prix et de pré-réservation terminés.

Prérequis

Préparez les paramètres utiles à l'appel. Conservez x-api-key et, si la route est customer-scoped, un bearer token valide. Vérifiez le body avant appel pour éviter une erreur de validation.

Calling CURL

curl -X POST \
  -H "x-api-key: YOUR_API_KEY" \
  -H "accept-language: fr-FR" \
  -H "Content-Type: application/json" \
  -d '{"proposal_id": "proposal-1"}' \
  "https://api.clubmed.com/v3/bookings"

Example answer

{
  "booking_id": "booking-1",
  "booking_status": "OPTION",
  "payment_status": "PENDING"
}

info: Conservez le booking_id retourné et les données d'option pour enchaîner avec la relecture du booking, le paiement ou les services aval.


Codes de réponse

  • 200 OK : l'opération est prise en compte et la ressource est renvoyée.
  • 400 Bad Request : le body ou les paramètres sont invalides.
  • 404 Not Found : la ressource ciblée est introuvable.
POST/v3/bookings
Voir plus
4

Contrôler le booking créé

Obligatoire

Utilisez GET/v3/customers/{customer_id}/bookings/{booking_id} pour confirmer que le booking nouvellement créé contient bien le séjour, le statut et les voyageurs attendus.

Prérequis

Préparez customer_id, booking_id. Conservez x-api-key et, si la route est customer-scoped, un bearer token valide.

Calling CURL

curl -X GET \
  -H "x-api-key: YOUR_API_KEY" \
  -H "accept-language: fr-FR" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  "https://api.clubmed.com/v3/customers/{customer_id}/bookings/{booking_id}"

Example answer

{
  "id": "booking-1",
  "booking_status": "OPTION",
  "payment_status": "PENDING",
  "stays": [
    {
      "product_id": "product-1",
      "label": "Club Med Valmorel"
    }
  ]
}

info: Relisez le booking juste après sa création pour confirmer que la proposition a bien été transformée dans le bon dossier.


Codes de réponse

  • 200 OK : les données attendues sont renvoyées.
  • 400 Bad Request : la requête est invalide ou incomplète.
  • 401 Unauthorized : le token est manquant ou invalide.
  • 403 Forbidden : l'accès est refusé dans ce contexte.
  • 404 Not Found : la ressource demandée est introuvable.
GET/v3/customers/{customer_id}/bookings/{booking_id}
Voir plus