Aller au contenu

Modifier une réservation (re-pricing pré-check-in ou champs non-tarifaires)

POST
/v1/reservations/{id}/modify
curl --request POST \
--url https://example.com/v1/reservations/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/modify \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <X-API-Key>' \
--data '{ "checkInDate": "2026-07-02", "checkOutDate": "2026-07-05", "units": [ { "unitTypeId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "quantity": 1 } ], "segment": "corporate", "reason": "guest_request", "bookerRef": {} }'
id
required
string format: uuid

Identifiant de la réservation

Idempotency-Key
string
>= 8 characters <= 200 characters

Clé d’idempotence (optionnelle, 8-200 car.) — résiduel B, infra future.

Delta de modification (au moins un champ requis). reason obligatoire (NF203).

Media type application/json
object
checkInDate
string format: date
Example
2026-07-02
checkOutDate
string format: date
Example
2026-07-05
units
Array<object>
object
unitTypeId
required
string format: uuid
quantity
required
integer
>= 1
segment
string
Example
corporate
reason
required
string
>= 1 characters <= 500 characters
Example
guest_request
bookerRef

Polymorphe : person | organization | ota_external

object

Modification enregistrée

Media type application/json
object
data
required
object
reservationId
required
string format: uuid
newTotalCents

Nouveau total en centimes (présent si re-pricing effectué)

string
nullable
currency
string
nullable
Allowed values: EUR GBP
releasedPreAssignments
required

UnitId des pré-assignations libérées par la modif (conflit de dates / ligne retirée) — réinviter à re-choisir l’emplacement

Array<string>
Example
{
"data": {
"currency": "EUR"
}
}

Corps invalide ou dates incohérentes

Media type application/json
object
code
required

Code machine de l’erreur

string
message
required

Message lisible

string
origin

Origine domaine de l’erreur (optionnel)

object
boundedContext
string
module
string
status
required
integer
traceId
required

Identifiant de corrélation pour le support

string
Example
{
"code": "RESERVATION_NOT_FOUND",
"message": "Réservation introuvable",
"status": 404
}

Non authentifié

Media type application/json
object
code
required

Code machine de l’erreur

string
message
required

Message lisible

string
origin

Origine domaine de l’erreur (optionnel)

object
boundedContext
string
module
string
status
required
integer
traceId
required

Identifiant de corrélation pour le support

string
Example
{
"code": "RESERVATION_NOT_FOUND",
"message": "Réservation introuvable",
"status": 404
}

Permission refusée ou scope IDOR

Media type application/json
object
code
required

Code machine de l’erreur

string
message
required

Message lisible

string
origin

Origine domaine de l’erreur (optionnel)

object
boundedContext
string
module
string
status
required
integer
traceId
required

Identifiant de corrélation pour le support

string
Example
{
"code": "RESERVATION_NOT_FOUND",
"message": "Réservation introuvable",
"status": 404
}

Réservation introuvable

Media type application/json
object
code
required

Code machine de l’erreur

string
message
required

Message lisible

string
origin

Origine domaine de l’erreur (optionnel)

object
boundedContext
string
module
string
status
required
integer
traceId
required

Identifiant de corrélation pour le support

string
Example
{
"code": "RESERVATION_NOT_FOUND",
"message": "Réservation introuvable",
"status": 404
}

Statut incompatible (post-check-in → T8) ou stock épuisé

Media type application/json
object
code
required

Code machine de l’erreur

string
message
required

Message lisible

string
origin

Origine domaine de l’erreur (optionnel)

object
boundedContext
string
module
string
status
required
integer
traceId
required

Identifiant de corrélation pour le support

string
Example
{
"code": "RESERVATION_NOT_FOUND",
"message": "Réservation introuvable",
"status": 404
}