Zum Inhalt

Kalender-Termin erstellen (Outlook)

Dieser Service Task erstellt einen Termin im Outlook-Kalender eines Benutzers über die Microsoft Graph API. Er unterstützt Teilnehmer, Ort, Online-Meetings (automatischer Teams-Link), Erinnerungen und Ganztags-Termine.

Nutzen: Meetings, Fristen und Follow-ups können automatisch als Teil eines Geschäftsprozesses geplant werden — ohne manuelle Kalendereinträge.


Voraussetzungen

Eine Microsoft Entra ID (Azure AD) App-Registrierung ist erforderlich mit:

  • Anwendungsberechtigung: Calendars.ReadWrite
  • Admin-Einwilligung für den Tenant erteilt

Die Anmeldedaten können als Pantarey Secrets gespeichert und über {{secret:NAME}} referenziert werden.


Eingabeparameter

Parameter Typ Pflicht Beschreibung
credentials Objekt Ja { tenantId, oAuthClientID, clientSecret } — Microsoft Entra ID Anmeldedaten.
userId String Ja User Principal Name oder Objekt-ID (z. B. max@contoso.com).
subject String Ja Betreff des Termins.
start String Ja Startdatum/-zeit (ISO-Format ohne Zeitzone, z. B. 2026-02-20T09:00:00).
end String Ja Enddatum/-zeit (ISO-Format).
body String Nein Beschreibung / Notizen des Termins.
bodyType String Nein text oder html. Standard: text.
attendees Array Nein Teilnehmer — entweder E-Mail-Strings oder Objekte { email, name?, type? }. Type: required, optional, resource.
location String / Objekt Nein Raum oder Ortsname.
isOnlineMeeting Boolean Nein Wenn true, wird automatisch ein Teams-Meeting-Link generiert.
reminderMinutes Zahl Nein Erinnerung vor dem Termin (in Minuten).
isAllDay Boolean Nein Wenn true, wird ein Ganztags-Termin erstellt.
timeZone String Nein Zeitzone für Start/Ende. Standard: Europe/Berlin.

Beispiel-Eingabe

{
  "credentials": {
    "tenantId": "{{secret:MS_TENANT_ID}}",
    "oAuthClientID": "{{secret:MS_CLIENT_ID}}",
    "clientSecret": "{{secret:MS_CLIENT_SECRET}}"
  },
  "userId": "max@contoso.com",
  "subject": "Onboarding-Gespräch",
  "start": "2026-02-20T09:00:00",
  "end": "2026-02-20T10:00:00",
  "body": "Willkommen im Team! Bitte bringe deinen Laptop mit.",
  "attendees": ["anna@contoso.com", "tom@contoso.com"],
  "location": "Raum Berlin",
  "isOnlineMeeting": true,
  "timeZone": "Europe/Berlin"
}

Ausgabe

Feld Typ Beschreibung
eventId String Die ID des erstellten Termins.
subject String Der Betreff des Termins.
start Objekt { dateTime, timeZone }.
end Objekt { dateTime, timeZone }.
webLink String / null URL zum Öffnen des Termins in Outlook Web.
onlineMeetingUrl String / null Teams-Meeting-Beitritts-URL (wenn isOnlineMeeting true war).
createdDateTime String ISO-Zeitstempel der Erstellung.

Beispiel-Ausgabe

{
  "eventId": "AAMkAGI2...",
  "subject": "Onboarding-Gespräch",
  "start": { "dateTime": "2026-02-20T09:00:00", "timeZone": "Europe/Berlin" },
  "end": { "dateTime": "2026-02-20T10:00:00", "timeZone": "Europe/Berlin" },
  "webLink": "https://outlook.office365.com/owa/?itemid=...",
  "onlineMeetingUrl": "https://teams.microsoft.com/l/meetup-join/...",
  "createdDateTime": "2026-02-14T10:30:00Z"
}

Anwendungsfälle

  • Onboarding: Automatisch ein Willkommensgespräch planen, wenn ein Mitarbeiter-Prozess startet.
  • Genehmigungs-Follow-ups: Review-Meeting erstellen, nachdem eine Genehmigung erteilt wurde.
  • Fristen: Kalender-Erinnerung für Vertragsverlängerung oder Zahlungsfälligkeit.
  • Bewerbungsgespräche: Interviews als Teil eines HR-Prozesses terminieren.
  • Teams-Meetings: Teams-Meeting-Link automatisch generieren durch isOnlineMeeting: true.