Termine bearbeiten Die Terminverwaltung ist eine zentrale Funktion der Appack-Plattform, die es ermöglicht, Kalender zu erstellen und Ereignisse zu organisieren. Sie erlaubt es, Kalender für bestimmte Zielgruppen (wie z. B. Trainingszeiten einer Jugendmannschaft) anzulegen und Termine in der App anzuzeigen, bei denen sich Nutzer anmelden können. Es können auch externe Kalender per iCal-Feed intigriert werden. Kalender auflisten Mit der Query listCalendars können alle Kalender im System aufgelistet werden. Diese Abfrage liefert einen Überblick über alle verfügbaren Kalender. Die angezeigte Kalender-ID wird benötigt, um Termine abzurufen oder neue Termine hinzuzufügen. query ListCalendars { listCalendars { id title } } Die Response zeigt die vorhandenen Kalender, z. B.: { "data": { "listCalendars": [ { "id": "6357900543d4db038c24ed28", "title": "Veranstaltungen" }, { "id": "66df0b1c7940f377a85773c4", "title": "Trainings" } ] } } Termine des Kalenders Anzeigen Um die Termine eines Kalenders zu verwalten, können Sie entweder alle Ereignisse oder nur bevorstehende Ereignisse anzeigen lassen. Die Abfrage findCalendarEvents zeigt alle Ereignisse eines bestimmten Kalenders, während listUpcomingCalendarEvents nur zukünftige Termine zurückgibt. Die folgende Abfrage zeigt alle Termine eines Kalenders: query FindCalendarEvents { findCalendarEvents(calendarIds: "6357900543d4db038c24ed28") { id title description dateStart dateEnd } } Die Response zeigt die Termine des Kalenders: { "data": { "findCalendarEvents": [ { "id": "66f245asdfw32b1801984asd", "title": "Weihnachtsfeier", "description": "Es ist bald Weihnachten und das Fest wird stattfinden", "dateStart": "2024-12-15T16:00:00Z", "dateEnd": "2024-12-15T18:00:00Z" }, { "id": "66s2aa44545asd831185c0de", "title": "Neujahrsfeier", "description": "Das neue Jahr hat begonnen", "dateStart": "2025-01-05T12:30:00Z", "dateEnd": "2025-01-05T14:30:00Z" } ] } } Termin erstellen Um einen Termin in einem bestimmten Kalender hinzuzufügen, nehmen wir die ID des gewünschten Kalenders und verwenden die Mutation createCalendarEvents. Diese Mutation ermöglicht es, den Titel, die Start- und Endzeiten, sowie weitere Informationen festzulegen. mutation CreateCalendarEvents { createCalendarEvents(calendarId: "6616459142fcd13fa516e44d", data: { title: "Kinderfest" dateEnd: "2024-09-22T08:30:00.000Z" dateStart: "2024-09-22T07:30:00.000Z" description: "Am kommenden Samstag ist wieder Kinderfest" }) { id title description dateStart dateEnd } } Die folgende Response bestätigt das erfolgreiche Erstellen des Termins: { "data": { "createCalendarEvents": [ { "id": "66ed255c2e11a56e400ece0f", "title": "Kinderfest", "description": "Am kommenden Samstag ist wieder Kinderfest", "dateStart": "2024-09-22T07:30:00Z", "dateEnd": "2024-09-22T08:30:00Z" } ] } } Weitere nützliche Queries: listCalendarByComponentId – Zeigt Kalender nach Technischen Id an. findCalendarEvents – Sucht nach spezifischen Terminen in Kalendern. listUpcomingCalendarEvents – Listet anstehende Termine auf. Weitere nützliche Mutationen: updateCalendar – Aktualisiert die Details eines Kalenders. updateCalendarEvents – Aktualisiert die Informationen eines bestimmten Termins. createCalendar – Erstellt einen neuen Kalender.