Entwicklerdokumentation

Changelog

Was sich in der öffentlichen API, im JavaScript- und .NET-SDK und im WordPress-Plugin geändert hat, Release für Release, neueste zuerst.

Kuratiert aus den GitHub-Releases: Aufgeführt ist nur, was eine Integration bemerken kann; interne, Konsolen- und Infrastrukturänderungen bleiben weg. Versionen sind die vX.Y.Z-Tags; dieselbe Version benennt den CDN-Pfad, die NuGet-Pakete und das WordPress-Zip des Releases (Versionen und Releases).

v0.8.0 — 2026-09-16

  • JavaScript-SDKBookDinePlay.createClient({ apiBaseUrl, publishableKey, venueSlug }) – ein Headless-Client für Seiten mit eigenem Formular: venue(), floorPlan(), availability(), reserve(), RFC-7807-Fehler als BookDinePlayError; das Widget läuft jetzt darauf, und renderBookingWidget lehnt einen Schlüssel ab, der kein veröffentlichbarer bdp_pk_…-Schlüssel ist (gibt null zurück, mit Konsolenmeldung), statt zu rendern und mit 403 zu scheitern (Eigene Formulare).
  • API – Öffnungszeiten dürfen nach Mitternacht schließen (opens 18:00, closes 02:00); Verfügbarkeit und Reservierungen folgen der Spanne in den nächsten Tag, Pausen bleiben auf denselben Tag beschränkt (Venue).

v0.7.0 — 2026-09-16

  • Docs – Tutorials: Buchungsablauf (was das Widget von Anfang bis Ende tut) und Azure Static Web Apps (von null zu einer Live-Seite der Location); dieses Changelog. Keine Änderung an der öffentlichen API, den SDKs oder dem WordPress-Plugin.

v0.6.0 — 2026-09-16

  • API – Jeder Aufruf von /api/venues/** verlangt einen API-Schlüssel: im Browser einen veröffentlichbaren bdp_pk_…-Schlüssel von einer erlaubten Origin, auf einem Server einen geheimen bdp_sk_…-Schlüssel. Ein fehlender, falscher oder falsch eingesetzter Schlüssel wird mit einem von sechs RFC-7807-Problemtypen abgelehnt (Authentifizierung, Fehler).
  • API – Buchungsdauern sind je Ressourcentyp konfigurierbar: Das Profil der Location listet bookingDurations, Verfügbarkeit und Reservierungen akzeptieren durationMinutes, und die Verfügbarkeit meldet die Dauer, die ihre Slots darstellen.
  • API – Verfügbarkeit und Reservierungsanlage lösen die eigene Buchungsdauer einer Ressource auf dieselbe Weise auf, sodass ein angebotener Slot nicht mehr wegen seiner Dauer abgelehnt werden kann; eine Gruppe, die mehrere Ressourcen braucht, wird von beiden Aufrufen gleich aufgeteilt.
  • APIphone beim Anlegen einer Reservierung ist optional: 3–40 Zeichen, wenn angegeben; ein leerer Wert gilt als nicht angegeben.
  • JavaScript-SDK – Auf dem CDN veröffentlicht: sdk/<version>/bookdineplay.js (unveränderlich, mit SRI-Hash in sri.txt daneben) und sdk/v0/bookdineplay.js (Fünf-Minuten-Alias). renderBookingWidget verlangt jetzt publishableKey und nimmt theme (auto, light, dark); neun --bdp-*-Custom-Properties gestalten das Widget von der Host-Seite aus; window.BookDinePlay.version nennt das geladene Release (JavaScript-SDK, Theming).
  • JavaScript-SDKdurationMinutes wird nur gesendet, wenn der Gast eine Dauer gewählt hat; sonst gilt der Standard der Location.
  • .NET-SDKBookDinePlay.Sdk und BookDinePlay.Shared sind auf nuget.org, versioniert im Gleichschritt mit dem Release (.NET-SDK).
  • WordPress – Das Plugin erscheint als bookdineplay-<version>.zip am Release, lädt das SDK vom v0-Alias, speichert den veröffentlichbaren Schlüssel unter Einstellungen → BookDinePlay, und der Shortcode erhält ein key-Attribut (WordPress-Plugin).
  • Docs – Diese Website.

v0.5.0 — 2026-09-09

  • Keine Änderung an der öffentlichen API, den SDKs oder dem WordPress-Plugin. Nur Betreiberkonsole.

v0.4.1 — 2026-09-02

  • Keine Änderung an der öffentlichen API, den SDKs oder dem WordPress-Plugin. Nur Betreiberkonsole.

v0.4.0 — 2026-07-23

  • API – Meldungen und Problem-Antworten sind lokalisiert: Senden Sie Accept-Language: de für deutsche title und detail; Englisch ist der Standard (Fehler). Die Bestätigungs-E-Mail des Gastes verwendet die Sprache der Anfrage, die die Reservierung angelegt hat.
  • API – Buchbare Extras: Das Profil der Location listet extras; eine Reservierung akzeptiert extras: [{ "extraId": "…", "quantity": 1 }] und liefert bepreiste extras-Zeilen und extrasTotal.
  • API – Preis pro Spiel: Ein Slot kann pricingModel: "PerGame" tragen; eine Reservierung akzeptiert und liefert games (1–10).
  • API – Gruppenbuchungen: Eine Gruppe, die für eine Ressource zu groß ist, bekommt einen Gruppen-Slot (groupResourceCount, groupResourceNames); die Reservierung liefert groupReference und groupResources.
  • API – Neuer Ressourcentyp BowlingLane; Essensbestellung ist eine Einstellung je Ressource (allowsFoodOrdering auf Ressourcen).
  • JavaScript-SDK, WordPressBowlingLane in der Liste der Ressourcentypen und in den Standard-types des Plugins; das Widget erfasst Spiele pro Person und Extras, wo die Location sie anbietet.

Releases vor v0.4.0 liegen vor den öffentlichen Integrationswegen und sind nicht aufgeführt.