> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# Acuity Scheduling

Mit den folgenden [Webhook-Tools](/docs/de/reception-ai/integrations/webhooks) kann Ihr Empfangsassistent prüfen, wann ein Termintyp verfügbar ist, und den Anrufer in einen freien Termin einbuchen. Acuity sendet dem Kunden die übliche Bestätigungs-E-Mail.

## Bevor Sie beginnen

### Plan prüfen

Acuity bietet API-Zugriff nur in seinem höchsten Plan (Premium, früher Powerhouse). In anderen Plänen schlagen die folgenden Tools mit einem 403-Fehler fehl.

### API-Zugangsdaten abrufen

Öffnen Sie in Acuity **Integrations**, suchen Sie **API** und kopieren Sie Ihre **User ID** und Ihren **API Key**.

### Autorisierungs-Header erstellen

Acuity verwendet Ihre User ID als Benutzernamen und den API-Key als Passwort. Kodieren Sie beide in einem Terminal und ersetzen Sie dabei beide Platzhalter:

```bash
printf 'USER_ID:API_KEY' | base64
```

Der Header-Wert besteht aus `Basic ` gefolgt von der Ausgabe.

> **Warning**
>
> Fügen Sie Ihren API-Key nicht in einen Online-Encoder ein. Jeder, der ihn besitzt, kann Ihre
> Termine und Kundendaten lesen und ändern.

### ID des Termintyps finden

Kopieren Sie den direkten Buchungslink für den Termintyp, den Ihr Empfangsassistent buchen soll. Die Zahl nach `appointmentType=` im Link ist dessen ID. Die folgenden Tools verwenden sie anstelle von `APPOINTMENT_TYPE_ID`.

## Tools erstellen

Gehen Sie für jedes Tool zu **Integrations**, wählen Sie **Add integration**, dann **Webhook Tool**, und setzen Sie **Assign to agents** auf **Receptionist**.

### Freie Zeiten prüfen

| Feld                 | Wert                                                                                                                                                                        |
| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Name**             | `check_acuity_availability`                                                                                                                                                 |
| **Description**      | "Liste die freien Terminzeiten an einem Datum auf. Verwende dies, bevor du dem Anrufer eine Zeit anbietest."                                                                |
| **Method**           | GET                                                                                                                                                                         |
| **URL**              | `https://acuityscheduling.com/api/v1/availability/times`                                                                                                                    |
| **Request Headers**  | `Authorization`: `Basic ` gefolgt von den kodierten Zugangsdaten                                                                                                            |
| **Query Parameters** | `appointmentTypeID` (Zahl, erforderlich): "Immer genau der Wert `APPOINTMENT_TYPE_ID`."  `date` (Zeichenfolge, erforderlich): "Das zu prüfende Datum im Format JJJJ-MM-TT." |

### Termin buchen

| Feld                | Wert                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Name**            | `book_acuity_appointment`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| **Description**     | "Buche den Anrufer in eine freie Zeit ein, nachdem er eine ausgewählt hat. Bestätige Datum und Uhrzeit vorher mit ihm."                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| **Method**          | POST                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| **URL**             | `https://acuityscheduling.com/api/v1/appointments`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| **Request Headers** | `Authorization`: `Basic ` gefolgt von den kodierten Zugangsdaten                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| **Body Parameters** | `datetime` (Zeichenfolge, erforderlich): "Die gewählte Zeit, genau wie sie von `check_acuity_availability` in einem `time`-Wert zurückgegeben wird."  `appointmentTypeID` (Zahl, erforderlich): "Immer genau der Wert `APPOINTMENT_TYPE_ID`."  `firstName` (Zeichenfolge, erforderlich): "Der Vorname des Anrufers."  `lastName` (Zeichenfolge, erforderlich): "Der Nachname des Anrufers."  `email` (Zeichenfolge, erforderlich): "Die E-Mail-Adresse des Anrufers. Bitten Sie ihn, sie zu buchstabieren."  `phone` (Zeichenfolge): "Die Telefonnummer des Anrufers." |

Wählen Sie für jedes Tool **Enable** und [testen Sie Ihren Empfangsassistenten](/docs/de/reception-ai/receptionist/testing), indem Sie um einen Termin bitten. Die Buchung erscheint in Ihrem Acuity-Kalender.

> **Tip**
>
> Um mehrere Terminarten zu buchen, ersetzen Sie in beiden Tools „Immer genau der Wert“ durch eine Liste,
> zum Beispiel: „Verwende `111` für eine 30-minütige Beratung und `222` für einen 60-minütigen Termin.“

## Einschränkungen

* Acuity verlangt für jede Buchung eine E-Mail-Adresse. Ihr Empfangsassistent bittet Anrufer daher, ihre Adresse zu buchstabieren.
* Antworten auf Aufnahmeformulare werden als Liste gesendet, die Webhook-Tools nicht senden können. Buchungsnotizen können nur bei einer Buchung durch einen Administrator gesetzt werden, die Acuitys Verfügbarkeitsprüfungen überspringt. Die obigen Tools setzen daher keines von beidem.
* Die Tools können Termine nicht stornieren oder verschieben. Dafür ist die Termin-ID in der URL erforderlich.

## Fehlerbehebung

| Problem                                   | Prüfung                                                                                                                                  |
| ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| 401 von Acuity                            | Kodieren Sie `USER_ID:API_KEY` mit dem Doppelpunkt und beginnen Sie den Header-Wert mit `Basic ` und einem Leerzeichen.                  |
| 403 von Acuity                            | Ihr Plan enthält keinen API-Zugriff.                                                                                                     |
| Keine Zeiten werden zurückgegeben         | Prüfen Sie die ID des Termintyps und ob dieser Typ an diesem Datum freie Zeiten hat.                                                     |
| Buchung schlägt mit `not_available` fehl  | Die Zeit wurde vergeben oder ist nicht frei. Sagen Sie dem Empfangsassistenten, dass er vor der Buchung erneut freie Zeiten prüfen soll. |
| Buchung schlägt fehl, weil ein Feld fehlt | Ihr Konto verlangt möglicherweise eine Telefonnummer. Machen Sie `phone` im Buchungstool erforderlich.                                   |