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

# Annulla Prenotazione

> Annulla una prenotazione: resta nello storico

# DELETE /v1/calendar/bookings/{id}

Annulla la prenotazione. La riga resta, con `status: "cancelled"`, `cancelled_at`, `cancel_reason` e `cancelled_by`; l'orario torna libero. Chi aveva lasciato un'email riceve l'avviso.

## Request Body (facoltativo)

| Campo    | Tipo   | Descrizione                  |
| -------- | ------ | ---------------------------- |
| `reason` | string | Il motivo, max 255 caratteri |

## Richiesta

<CodeGroup>
  ```bash cURL theme={null}
  curl -X DELETE "https://api.mycentralino.com/v1/calendar/bookings/91" \
    -H "X-API-KEY: sk_mycentralino_your_api_key" \
    -H "Content-Type: application/json" \
    -d '{
        "reason": "impegno di lavoro"
    }'
  ```

  ```php PHP theme={null}
  <?php
  $data = [
      'reason' => 'impegno di lavoro'
  ];

  $ch = curl_init('https://api.mycentralino.com/v1/calendar/bookings/91');
  curl_setopt_array($ch, [
      CURLOPT_RETURNTRANSFER => true,
      CURLOPT_CUSTOMREQUEST => 'DELETE',
      CURLOPT_POSTFIELDS => json_encode($data),
      CURLOPT_HTTPHEADER => [
          'X-API-KEY: sk_mycentralino_your_api_key',
          'Content-Type: application/json'
      ]
  ]);
  $response = curl_exec($ch);
  curl_close($ch);
  print_r(json_decode($response, true));
  ```

  ```python Python theme={null}
  import requests

  headers = {'X-API-KEY': 'sk_mycentralino_your_api_key'}
  data = {"reason": "impegno di lavoro"}
  response = requests.delete('https://api.mycentralino.com/v1/calendar/bookings/91', headers=headers, json=data)
  print(response.json())
  ```
</CodeGroup>

## Risposta

`200` con la prenotazione annullata, nello stesso formato di [GET /v1/calendar/bookings/{id}](/mycentralino-api/calendar-bookings-detail).

## Errori

### 404 - not\_found

Nessuna prenotazione con questo ID.

### 409 - already\_cancelled

Era già annullata.

### 409 - not\_modifiable

Una prenotazione conclusa o segnata assente non si annulla.
