Aller au contenu

Options

Une option retient un créneau sans le réserver : vous assemblez le reste d’un package ou vous encaissez un paiement pendant que la table reste à vous. Elle occupe une vraie table dès qu’elle est posée et compte dans la disponibilité exactement comme une réservation.

Une option n’a pas de client et n’apparaît pas dans GET /v1/reservations. Elle devient une réservation via POST /v1/reservations avec un hold_id. Tous les points de terminaison ici utilisent les portées de réservation — il n’existe pas de portée propre aux options. Les champs, les deux genres et les quatre statuts sont sur L’objet option.

Point de terminaison Ce qu’il fait
POST /v1/holds Retire le créneau de la vente. Idempotency-Key est obligatoire et expires_at dans la réponse fait foi — le serveur borne ce que vous demandez.
GET /v1/holds Liste les options du restaurant qui ne sont pas devenues des réservations, de la plus récente à la plus ancienne.
GET /v1/holds/{id} Récupère une option, y compris rendue, expirée ou convertie.
DELETE /v1/holds/{id} Rend la table avant l’échéance. Rendre une option déjà rendue ou expirée renvoie la même option avec un 200.

GET /v1/holds renvoie les options vivantes, rendues et expirées. Une option convertie est absente : c’est une réservation maintenant et elle appartient à GET /v1/reservations. Son identifiant d’option se résout toujours sur GET /v1/holds/{id}, qui répond status: "converted" et nomme la réservation dans reservation.

Poser une option déroule la séquence et Changer l’heure d’une option couvre son déplacement.