> 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

Met de onderstaande [webhook tools](/docs/nl/reception-ai/integrations/webhooks) kan je receptionist controleren wanneer een afspraaktype beschikbaar is en de beller inboeken op een vrij tijdslot. Acuity stuurt de klant de gebruikelijke bevestigingsmail.

## Voordat je begint

### Controleer je abonnement

Acuity biedt alleen API-toegang in het hoogste abonnement (Premium, voorheen Powerhouse genoemd). Bij andere abonnementen mislukken de onderstaande tools met een 403-fout.

### Vraag je API-inloggegevens op

Open in Acuity **Integrations**, zoek **API** en kopieer je **User ID** en **API Key**.

### Maak de autorisatieheader

Acuity gebruikt je User ID als gebruikersnaam en de API-sleutel als wachtwoord. Codeer beide in een terminal en vervang daarbij beide placeholders:

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

De headerwaarde is `Basic ` gevolgd door de uitvoer.

> **Warning**
>
> Plak je API-sleutel niet in een online encoder. Iedereen die deze heeft, kan je
> afspraken en klantgegevens lezen en wijzigen.

### Zoek de ID van het afspraaktype

Kopieer de directe planningslink voor het afspraaktype dat je receptionist moet boeken. Het nummer na `appointmentType=` in de link is de ID ervan. De onderstaande tools gebruiken deze in plaats van `APPOINTMENT_TYPE_ID`.

## Maak de tools

Ga voor elke tool naar **Integrations**, selecteer **Add integration**, kies **Webhook Tool** en stel **Assign to agents** in op **Receptionist**.

### Controleer beschikbare tijden

| Veld                 | Waarde                                                                                                                                                                       |
| -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Name**             | `check_acuity_availability`                                                                                                                                                  |
| **Description**      | "Geef een lijst met beschikbare afspraaktijden op één datum. Gebruik dit voordat je de beller een tijd aanbiedt."                                                            |
| **Method**           | GET                                                                                                                                                                          |
| **URL**              | `https://acuityscheduling.com/api/v1/availability/times`                                                                                                                     |
| **Request Headers**  | `Authorization`: `Basic ` gevolgd door de gecodeerde inloggegevens                                                                                                           |
| **Query Parameters** | `appointmentTypeID` (nummer, verplicht): "Altijd precies de waarde `APPOINTMENT_TYPE_ID`."  `date` (string, verplicht): "De te controleren datum, in de notatie JJJJ-MM-DD." |

### Boek een afspraak

| Veld                | Waarde                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Name**            | `book_acuity_appointment`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| **Description**     | "Boek de beller in op een beschikbare tijd zodra die er een heeft gekozen. Bevestig eerst de datum en tijd."                                                                                                                                                                                                                                                                                                                                                                                                           |
| **Method**          | POST                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| **URL**             | `https://acuityscheduling.com/api/v1/appointments`                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| **Request Headers** | `Authorization`: `Basic ` gevolgd door de gecodeerde inloggegevens                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| **Body Parameters** | `datetime` (string, verplicht): "De gekozen tijd, precies zoals geretourneerd in een `time`-waarde door `check_acuity_availability`."  `appointmentTypeID` (nummer, verplicht): "Altijd precies de waarde `APPOINTMENT_TYPE_ID`."  `firstName` (string, verplicht): "De voornaam van de beller."  `lastName` (string, verplicht): "De achternaam van de beller."  `email` (string, verplicht): "Het e-mailadres van de beller. Vraag de beller dit te spellen."  `phone` (string): "Het telefoonnummer van de beller." |

Selecteer **Enable** voor elke tool en [test je receptionist](/docs/nl/reception-ai/receptionist/testing) door om een afspraak te vragen. De boeking verschijnt in je Acuity-agenda.

> **Tip**
>
> Vervang in beide tools "Altijd precies de waarde" door een lijst als je meerdere afspraaktypen wilt boeken, bijvoorbeeld:
> "Gebruik `111` voor een consult van 30 minuten en `222` voor een sessie van 60 minuten."

## Beperkingen

* Acuity vereist voor elke boeking een e-mailadres, dus je receptionist vraagt bellers om dit te spellen.
* Antwoorden op intakeformulieren worden als lijst verzonden, wat webhook tools niet kunnen versturen. Boekingsnotities kunnen alleen worden ingesteld via een boeking door een beheerder, waarbij de beschikbaarheidscontroles van Acuity worden overgeslagen. De bovenstaande tools stellen daarom geen van beide in.
* De tools kunnen afspraken niet annuleren of verzetten. Daarvoor is de afspraak-ID in de URL nodig.

## Problemen oplossen

| Probleem                                | Wat je moet controleren                                                                                                    |
| --------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| 401 van Acuity                          | Codeer `USER_ID:API_KEY` met de dubbele punt en begin de headerwaarde met `Basic ` en een spatie.                          |
| 403 van Acuity                          | Je abonnement bevat geen API-toegang.                                                                                      |
| Er worden geen tijden geretourneerd     | Controleer de ID van het afspraaktype en of het type op die datum beschikbare uren heeft.                                  |
| Boeken mislukt met `not_available`      | De tijd is al bezet of niet beschikbaar. Laat de receptionist de beschikbare tijden opnieuw controleren voordat die boekt. |
| Boeken mislukt omdat een veld ontbreekt | Je account vereist mogelijk een telefoonnummer. Maak `phone` verplicht in de boekingstool.                                 |