API Changelog

Was gibt's Neues in der API?

Alle Änderungen, neue Endpoints und Breaking Changes — chronologisch dokumentiert.

Juli 2026

Breaking Change

Vier veraltete V1-Endpunkte entfernt

Vier veraltete Endpunkte wurden entfernt. Alle vier haben einen V2-Nachfolger.

  • Entfernt: createMultiBooking — Ersatz ist createMultiBookingV2
  • Entfernt: addRemoveCreditsForAllUsers — Ersatz ist addRemoveCreditsForAllUsersV2 (deprecated seit 04/2026)
  • Entfernt: getLogsCsv — Ersatz ist getLogsCsvV2
  • Entfernt: pdfEventSummary — Ersatz ist pdfEventSummaryV2
  • Entfernt: Typen CreateMultiBookingResult und MultiBookingResult
Breaking Change

Teilnehmer-Kontaktdaten nur noch fuer Berechtigte

E-Mail-Adressen von Teilnehmern sehen jetzt nur noch Mandanten-Admins und globale Trainer. Kurs-Trainer erhalten in Buchungslisten null, die detaillierte Termin-PDF ist fuer sie nicht mehr abrufbar (die einfache Variante bleibt).

  • Feld User.email ist jetzt nullable: String!String — Clients muessen mit null umgehen koennen
  • Event.bookings liefert email nur noch fuer Admins und globale Trainer
  • pdfEventSummaryV2 mit withDetails: true erfordert jetzt Admin- oder globale Trainer-Rechte
Neu

Neue Statistik-Query topUsersByBookings

Liefert die Nutzer mit den meisten Buchungen eines Mandanten in einem Zeitraum.

  • Neue Query topUsersByBookings(mandantId: ID!, from: Date!, to: Date!, limit: Int = 10, includeWaitlist: Boolean = false): [UserBookingStat!]!
  • Neuer Typ UserBookingStat mit userId, user, numBookings und numWaitlists
Neu

Anwesenheit in der Buchungshistorie

Die Buchungshistorie gibt jetzt den Anwesenheitsstatus zurueck.

  • Neues Feld attended: Boolean beim Typ BookingHistoryEntry
Neu

Persistierter Standard-Mandant

Der bevorzugte Mandant eines Nutzers kann jetzt serverseitig gespeichert und abgefragt werden.

  • Neue Mutation setDefaultMandant(mandantId: ID!): UserPreferences!
  • Neues Feld defaultMandant: Mandant bei UserPreferences
Neu

BookingEligibility: Status fuer gekaufte Buchungen

Gekaufte Buchungen, die nicht stornierbar sind, sind jetzt von anderen Storno-Verboten unterscheidbar.

  • Neuer Enum-Wert CANCELLATION_FORBIDDEN_PURCHASED in BookingEligibilityStatus
Neu

Shop-Produkte aktiv/inaktiv schaltbar

Produkte koennen jetzt deaktiviert werden, ohne sie zu loeschen.

  • Neues Feld active: Boolean! beim Typ Product
  • Neue Mutation setProductActive(productId: ID!, active: Boolean!): Boolean!
  • Neues Input-Feld active: Boolean bei createProduct und updateProduct
Neu

Zeitgesteuerte Freigabe gruppenbeschraenkter Termine

Nur fuer Gruppen buchbare Termine koennen jetzt automatisch eine definierte Zeit vor Terminbeginn fuer alle freigegeben werden.

  • Neues Input-Feld groupOnlyReleaseMinutes: Int bei addEventsV2, updateEvent, updateEvents, createCourse, createEventTemplate und updateEventTemplate
  • Neues Feld groupOnlyReleaseAt: Date beim Typ Event
  • Neues Feld groupOnlyReleaseMinutes: Int beim Typ EventTemplate
  • Neuer Log-Enum-Wert eventGroupBookingOpened

Juni 2026

Verbesserung

Multi-Booking-Limit auf 100 erhoeht

Pro Multi-Booking koennen jetzt bis zu 100 Nutzer auf einmal gebucht werden (vorher 20). Aufrufe mit mehr als 20 Nutzern werden nicht mehr abgelehnt.

  • Betrifft createMultiBooking und createMultiBookingV2
  • Die Buchungen laufen asynchron im Scheduler
Neu

Produkt-Sortierung

Die Reihenfolge der Produkte kann jetzt vom Admin festgelegt und dauerhaft gespeichert werden.

  • Neue Mutation reorderProducts(mandantId: ID!, productIds: [ID!]!): Boolean!
  • Neues Feld sortIndex: Int beim Typ Product

API-Änderungen per E-Mail erhalten

Wir informieren dich bei neuen Features, Breaking Changes und Deprecations.

Du erhältst eine Bestätigungsmail. Abmeldung jederzeit möglich.