Skip to main content

Cause

Only approval-pending booking requests can be confirmed or declined. The appointment was already confirmed, rejected, expired, canceled, claimed by another confirmation workflow, or was never awaiting barber approval. Concurrent confirm, decline, customer cancellation, and expiry attempts produce exactly one terminal booking-request result. A retry with the same idempotency key replays its original response before this state check is applied.

Fix

Refresh the appointment and use its current state as the terminal result. Do not retry the decision with a new idempotency key.

Retry safety

Not retryable until the underlying state or request changes.

Raised by

These operations can return this problem:

Example