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

# Microsoft Outlook Kalender

> Outlook-Kalender verbinden -- freie Termine finden und Termine direkt buchen.

## Überblick

Mit der **Microsoft Outlook Kalender-Integration** kann Ihr Voice Agent freie Termine in einem verbundenen Outlook-Kalender finden und neue Termine direkt buchen. Sie verbinden Outlook **einmal** über den OAuth-Flow von Microsoft und erstellen daraus anschließend die gewünschten Kalender-Tools.

> [!NOTE]
>
> **Sicherheit:** Sie werden zu Microsoft weitergeleitet, um den Zugriff zu bestätigen. Die Zugangsdaten werden verschlüsselt auf dem Server gespeichert und sind nur für Ihren Account zugänglich.

## Integration einrichten

1. Öffnen Sie die **Tools**-Seite in der Sidebar

2. Klicken Sie auf **Create tool** (Tool erstellen) und wählen Sie **Microsoft Outlook Calendar**

3. Bestätigen Sie im Dialog mit **Connect Microsoft** -- Sie werden zu Microsoft weitergeleitet

   ![Microsoft Outlook Kalender verbinden](https://mintcdn.com/miyon/guJZMG2Na1JdGadj/images/microsoft-integration/connect-modal.jpeg?fit=max\&auto=format\&n=guJZMG2Na1JdGadj\&q=85\&s=7bca11bc3f782fd22e316756afe78769)

4. Folgen Sie dem OAuth-Flow von Microsoft und bestätigen Sie die angeforderten Berechtigungen mit **Accept**

   ![Microsoft Berechtigungen bestätigen](https://mintcdn.com/miyon/k1W2EMCYe3WDkNuH/images/microsoft-integration/microsoft-consent.png?fit=max\&auto=format\&n=k1W2EMCYe3WDkNuH\&q=85\&s=c1ddfbf5e58f973c749353ac5735a2fc)

5. Wählen Sie die Kalender-Tools, die für den verbundenen Account erstellt werden sollen (**Find available slots** und/oder **Book appointment**) und legen Sie **Calendar ID**, **Timezone** und **Duration** (Standard-Termindauer in Minuten) fest. Klicken Sie auf **Create**

   ![Outlook Kalender-Tools auswählen](https://mintcdn.com/miyon/k1W2EMCYe3WDkNuH/images/microsoft-integration/choose-tools.jpeg?fit=max\&auto=format\&n=k1W2EMCYe3WDkNuH\&q=85\&s=d58176f5f622d138875a7ee497c1a3e6)

6. Öffnen Sie den gewünschten Voice Agent und wechseln Sie in den **Tools**-Tab. Aktivieren Sie dort die Outlook-Tools für diesen Agent

   ![Outlook-Tools im Voice Agent aktivieren](https://mintcdn.com/miyon/guJZMG2Na1JdGadj/images/microsoft-integration/assistant-tools.jpeg?fit=max\&auto=format\&n=guJZMG2Na1JdGadj\&q=85\&s=bd7aeb855f0a93de2bbb3c96af055af4)

> [!NOTE]
>
> **Gemeinsame Tools:** Wie alle Tools stehen auch die Outlook-Tools nach dem Erstellen global zur Verfügung. Sie müssen sie pro Voice Agent nur noch im **Tools**-Tab aktivieren. Mehr dazu unter [Tools](/docs/de/tools).

## Verfügbare Tools

Beim Verbinden werden bis zu zwei Tools angelegt:

### `microsoft_outlook_calendar_get_availability`

Findet freie Zeitfenster im verbundenen Outlook-Kalender (**Read calendar**). Typischer Einsatz: Der Anrufer fragt nach freien Terminen, bevor er bucht.

| Parameter | Typ | Pflicht | Beschreibung |
| - | - | - | - |
| `time_min` | string | Ja | Beginn des Suchzeitraums als ISO 8601 Datum-Zeit |
| `time_max` | string | Ja | Ende des Suchzeitraums als ISO 8601 Datum-Zeit |
| `calendar_id` | string | Nein | Optionale Outlook-Kalender-ID. Standard ist der konfigurierte Kalender bzw. der primäre Kalender |
| `slot_duration_minutes` | integer | Nein | Optionale Dauer eines Zeitfensters in Minuten |

### `microsoft_outlook_calendar_book_appointment`

Erstellt einen Termin im verbundenen Outlook-Kalender (**Create events**). Typischer Einsatz: Der Anrufer hat ein freies Zeitfenster gewählt und der Termin wird gebucht.

| Parameter | Typ | Pflicht | Beschreibung |
| - | - | - | - |
| `summary` | string | Ja | Titel des Kalendertermins |
| `start_time` | string | Ja | Beginn des Termins als ISO 8601 Datum-Zeit |
| `end_time` | string | Ja | Ende des Termins als ISO 8601 Datum-Zeit |
| `calendar_id` | string | Nein | Optionale Outlook-Kalender-ID. Standard ist der konfigurierte Kalender bzw. der primäre Kalender |
| `description` | string | Nein | Optionale Beschreibung des Termins |
| `location` | string | Nein | Optionaler Ort des Termins |
| `attendee_email` | string | Nein | Optionale E-Mail-Adresse eines Teilnehmers |

> [!TIP]
>
> **Typischer Ablauf:** Kombinieren Sie beide Tools -- der Voice Agent ruft zuerst `microsoft_outlook_calendar_get_availability` auf, um freie Slots zu nennen, und bucht den vom Anrufer gewählten Termin anschließend mit `microsoft_outlook_calendar_book_appointment`.

## Termine buchen -- Hinweise für den Prompt

Damit der Voice Agent das Buchungs-Tool zuverlässig aufruft, sollte Ihr Prompt beschreiben, **welche Angaben er sammeln muss** und **wie er mit fehlenden oder vagen Angaben umgeht**. Die Pflichtangaben sind **Titel**, **Beginn** und **Ende** -- Beginn und Ende müssen vor dem Buchen zu einem konkreten Datum mit Uhrzeit aufgelöst sein.

### Beispiel: minimale Buchung

> „Buche morgen um 14:00 einen Beratungstermin für 30 Minuten."

```json theme={null}
{
  "summary": "Beratungstermin",
  "start_time": "2026-06-09T14:00:00+02:00",
  "end_time": "2026-06-09T14:30:00+02:00"
}
```

### Beispiel: Buchung mit Teilnehmer und Ort

> „Buche morgen um 14:00 ein Telefongespräch mit Max. Seine E-Mail ist [max@example.com](mailto:max@example.com)."

```json theme={null}
{
  "summary": "Telefongespräch mit Max Mustermann",
  "start_time": "2026-06-09T14:00:00+02:00",
  "end_time": "2026-06-09T14:30:00+02:00",
  "location": "Telefongespräch",
  "attendee_email": "max@example.com"
}
```

### Was der Agent klären sollte

Fehlt eine Angabe, sollte der Agent gezielt nachfragen, bevor er das Tool aufruft:

| Fehlt | Beispiel-Rückfrage |
| - | - |
| Datum | „An welchem Tag soll ich den Termin buchen?" |
| Uhrzeit | „Um wie viel Uhr passt es Ihnen am besten?" |
| Dauer | „Wie lange soll der Termin dauern?" |
| E-Mail | „Soll ich eine Kalendereinladung senden? Wenn ja, an welche E-Mail-Adresse?" |
| Ort | „Soll das ein Telefongespräch, ein Online-Meeting oder vor Ort sein?" |

### Regeln für den Prompt

* Sammeln Sie alle fehlenden **Pflichtangaben**, bevor das Tool aufgerufen wird.
* Bei vagen Zeitangaben wie „morgen Nachmittag" nach einer konkreten Uhrzeit fragen -- oder zuerst mit `microsoft_outlook_calendar_get_availability` freie Slots anbieten.
* Nennt der Anrufer nur einen Beginn, aber keine Dauer, verwenden Sie die **Standard-Termindauer** aus der Tool-Konfiguration. Ist keine konfiguriert, nach der Dauer fragen.
* Relative Daten wie „morgen" oder „nächsten Montag" in der **Zeitzone des Anrufers** auflösen.
* Technische Felder wie `calendar_id` **nicht** gegenüber dem Anrufer erwähnen -- es sei denn, das Geschäft nutzt mehrere Kalender und der Anrufer muss einen auswählen.

### Gute Anrufer-Formulierungen

* „Buchen Sie mir morgen um 2 einen Termin."
* „Vereinbaren Sie nächsten Montag vormittags eine Beratung."
* „Können Sie mir für Freitag um 10 einen Termin eintragen?"
* „Buchen Sie ein Telefongespräch und schicken Sie mir eine Einladung."

> [!NOTE]
>
> **Geschäftliche Standardwerte:** **Zeitzone** und **Standard-Termindauer** legen Sie einmalig beim Erstellen des Tools fest (Schritt 5 unter [Integration einrichten](#integration-einrichten)). Der Agent muss diese also nicht bei jedem Anruf erfragen -- er nutzt sie automatisch, wenn der Anrufer keine eigene Angabe macht.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.