Cancel a booking

Cancel a confirmed booking (flights, stays, cars, trains; others return 503). Send estimatedTotalAmount or cancellationFee from a preceding POST /v1/{vertical}/bookings/{id}/calculate-cancel-costs call when the vertical supports it.

A train fee mismatch returns 409 CANCELLATION_FEE_CHANGED. Quote again and confirm with a new Idempotency-Key.

For trains this route is deprecated: use POST /v1/trains/bookings/{id}/operation-quotes and .../operations with operationType: cancellation. Behaviour is unchanged.

The Idempotency-Key header is required.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
string
enum
required
Allowed:
string
required
Body Params

Request body for cancelling a booking.

Send estimatedTotalAmount or cancellationFee. Train quotes return
both; the fee is cancellationFee.amount and the deprecated alias is
estimatedTotalAmount.

Deprecated alias of the cancellation fee, as a decimal string e.g. '30.00'.

CancellationFeeIn | null

Cancellation fee to confirm. Preferred over estimatedTotalAmount.

Headers

Client-generated idempotency key (UUID v4 recommended). Required on all booking mutation requests. Whether a repeated key replays the first response depends on the operation; see its description and the idempotency and retries guide.

Responses

401

Missing or invalid authentication

403

User lacks booking capability for this vertical

404

Booking not found

409

Booking already in a terminal state, or the train cancellation fee changed (CANCELLATION_FEE_CHANGED). A fee change requires a new quote and a new Idempotency-Key.

410

Offer expired (OFFER_EXPIRED); refresh fare search

422

Missing Idempotency-Key header, or account requires mandatory custom attributes that were not supplied

503

Service not configured or temporarily unavailable

Language
Credentials
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json