Skip to main content
POST
Preview the cost of cancelling a car rental booking
Quote what cancelling would cost right now: the fee in force and the refund it would leave. Nothing is cancelled. fee_known: false means the fee could not be established, render it as “we will confirm the fee”, never as free cancellation. The returned cancellation_id is required by car_cancel_commit, and binds until expires_at where one is given. cancellable: false with manual_required: true means the cancellation cannot be completed online (fee unknown, rental changed after payment, fee in another currency or above the rental) and refund_review_reason says why: it is not a dead end, once the customer agrees, commit it with manual_ok: true and a Jinko agent completes it. cancellable: false without that flag is a rental that cannot be cancelled at all (already cancelled, or over), carrying the cancellation that stands where there is one. Guest-authenticated: booking_ref + last_name; a wrong pair returns 404 rather than confirming the booking’s existence.

Authorizations

X-API-Key
string
header
required

Body

application/json
booking_ref
string
required

Jinko booking reference. Call get_booking first, then select its item_id for servicing.

Minimum string length: 1
Example:

"JNK-A0AUR2"

item_id
integer

Stable booked item ID from get_booking items[].item_id. Preserved across exchanges. Omit only when the booking has exactly one item of the requested domain; otherwise a 409 returns items to choose from.

Required range: 0 < x <= 9007199254740991
Example:

42

last_name
string

Required for guest lookup. A credential that owns the booking may omit it; ownership is checked by the platform.

Minimum string length: 1
Example:

"Doe"

intent
object

Response

Cancellation quote

cancellation_id
string

Opaque reference of this preview ("ccl_…"). Pass to car_cancel_commit — it binds the commit to the fee quoted here. Treat as an opaque string; the format may evolve.

Example:

"ccl_2f7c9a4e8b1d4c6f9e3a5b7d1c2e4f6a"

cancellable
boolean
Example:

true

fee_known
boolean

false means the fee could not be established — UNKNOWN, not free. Render as "we will confirm the fee".

Example:

true

fee_type
string
Example:

"cancellation"

fee
object
paid
object

What the customer originally paid.

refund_amount
object

paid minus fee. Absent whenever the fee is unknown — absent is not zero.

currency
string
Example:

"EUR"

non_refundable
boolean
refund_pending_review
boolean

true means the refund figure is right but will be issued by hand rather than automatically (the rental was changed after it was paid for). The cancellation itself still goes through online; not a failure.

refund_review_reason
string

Why a person is involved, whenever manual_required or refund_pending_review is true, in words the customer can be shown. Where the reason would be the supplier’s own words — as on a cancellable: false preview of a rental that cannot be cancelled at all — it reads “This request needs manual handling by Jinko support.”

Example:

"the cancellation fee for this rental could not be established; a person will complete the cancellation"

manual_required
boolean

true means this cancellation cannot be completed online — the fee could not be established, the rental was changed after it was paid for, or the fee is in another currency or above the rental. cancellable is false, no refund figure is given and refund_review_reason says why. It is not a dead end: car_cancel_commit takes this cancellation_id with manual_ok: true, which records the cancellation for a Jinko agent to complete and answers state: pending with refund_pending_review: true. Without the flag such a commit is refused 409 manual_required, so a customer is never put in an agent queue unasked. Absent (or false) on every quote that can be committed online.

Example:

false

expires_at
string

When this preview stops being committable (RFC 3339). A commit after it is refused 409 quote_expired; preview again. Absent where the quote carries no deadline.

Example:

"2026-09-21T10:15:00Z"