> ## Documentation Index
> Fetch the complete documentation index at: https://docs.guile.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Appointment Approval Not Pending

> The appointment is no longer awaiting a barber approval decision

## 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:

* [Confirm a booking request](/api-reference/appointments/confirm-a-booking-request)
* [Decline a booking request](/api-reference/appointments/decline-a-booking-request)

## Example

```json theme={null}
{
  "type": "https://docs.guile.app/problems/appointmentApprovalNotPending",
  "title": "Appointment Approval Not Pending",
  "status": 409,
  "detail": "Only approval-pending booking requests can be confirmed or declined. The appointment was already confirmed, rejected,..."
}
```
