Enregistrer une proposition dans un compte client

  • Réservation
  • Réservation
  • 4 routes
Comment enregistrer une proposition puis la retrouver dans le compte client ?

Ce scénario explique comment créer une proposition, identifier les participants, l'enregistrer dans un compte client puis, si nécessaire, lister ensuite les propositions sauvegardées.

Il est utile lorsque le client doit interrompre son parcours puis reprendre plus tard à partir de sa proposition enregistrée.

Vue d'ensemble

Le parcours crée une proposition, l'enrichit avec les données participants, l'enregistre dans le compte client puis permet, si besoin, de relire ensuite la liste des propositions sauvegardées.

Prérequis

  • Disposer des critères de réservation nécessaires à la création de la proposition.
  • Connaître le customer_id du compte qui portera la proposition.
  • Conserver le proposal_id renvoyé lors de la création de la proposition.

Process workflow

Legend:
Obligatoire
Optionnel
1

Créer la proposition

Obligatoire

Utilisez POST/v3/proposals/search pour créer la proposition.

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/v3/proposals/search"

Example answer

[
  {
    "id": "proposal-1",
    "product_id": "product-1",
    "price": {
      "amount": 2890,
      "currency": "EUR"
    },
    "remaining_stock": 4
  }
]

info: Conservez le proposal_id renvoyé pour rattacher ensuite cette proposition au compte client ciblé.


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/proposals/search
Voir plus
2

Identifier les participants

Obligatoire

Utilisez PUT/v3/proposals/{proposal_id}/attendees pour identifier les participants.

Prérequis

Préparez proposal_id. 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 PUT \
  -H "x-api-key: YOUR_API_KEY" \
  -H "accept-language: fr-FR" \
  -H "Content-Type: application/json" \
  -d '{"attendees": [{"id": "attendee-1", "first_name": "Jane", "last_name": "Doe", "birthdate": "1990-03-12"}]}' \
  "https://api.clubmed.com/v3/proposals/{proposal_id}/attendees"

Example answer

HTTP/1.1 204 No Content

info: Le succès peut être renvoyé sans body. Relisez la ressource ensuite si vous devez afficher l'état final.


Codes de réponse

  • 204 No Content : l'opération est appliquée avec succès.
  • 400 Bad Request : le body ou les paramètres sont invalides.
  • 404 Not Found : la ressource ciblée est introuvable.
PUT/v3/proposals/{proposal_id}/attendees
Voir plus
3

Enregistrer la proposition

Obligatoire

Utilisez POST/v0/customers/{customer_id}/proposals_summary pour enregistrer la proposition.

Prérequis

Préparez customer_id. 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 "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"proposal_id": "proposal-1"}' \
  "https://api.clubmed.com/v0/customers/{customer_id}/proposals_summary"

Example answer

HTTP/1.1 204 No Content

info: Le succès peut être renvoyé sans body. Relisez la ressource ensuite si vous devez afficher l'état final.


Codes de réponse

  • 204 No Content : l'opération est appliquée avec succès.
  • 400 Bad Request : le body ou les paramètres sont invalides.
  • 401 Unauthorized : le token est manquant ou invalide.
  • 403 Forbidden : l'accès est refusé dans ce contexte.
  • 404 Not Found : la ressource ciblée est introuvable.
POST/v0/customers/{customer_id}/proposals_summary
Voir plus
4

Lister les propositions sauvegardées

Optionnel

Utilisez GET/v0/customers/{customer_id}/proposals_summary pour lister les propositions sauvegardées.

Prérequis

Préparez customer_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/v0/customers/{customer_id}/proposals_summary?limit=20&page=1"

Example answer

[
  {
    "proposal_id": "proposal-1",
    "label": "Valmorel family stay",
    "updated_at": "2026-04-03T09:00:00Z"
  }
]

info: Appuyez-vous sur ce résumé pour retrouver une proposition existante avant de la rouvrir ou de la rattacher à un compte client.


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/v0/customers/{customer_id}/proposals_summary
Voir plus