Anmelden um den Slug und den veröffentlichbaren Schlüssel Ihrer Location in jedem Beispiel zu sehen.
Ihr Konto hat noch keine Location, die Beispiele behalten daher ihre Platzhalter. Abmelden
Angemeldet als · . Legen Sie in der Konsole einen veröffentlichbaren Schlüssel an und laden Sie die Seite neu, um ihn hier zu sehen. Abmelden
Angemeldet als · . Die Beispiele zeigen den veröffentlichbaren Schlüssel Ihrer Location. Abmelden
Entwicklerdokumentation
Schnellstart
Bringen Sie das BookDinePlay-Buchungswidget mit einem veröffentlichbaren API-Schlüssel in fünf Minuten auf eine bestehende Webseite.
Diese Anleitung nimmt eine Seite, die Sie bereits kontrollieren, und ergänzt sie um einen funktionierenden Reservierungsablauf. Sie brauchen ein Betreiberkonto und fünf Minuten.
1. Veröffentlichbaren Schlüssel anlegen
Öffnen Sie in der Konsole Location → API-Schlüssel unter app.bookdineplay.com/operator/venue und legen Sie einen Schlüssel vom Typ Veröffentlichbar an. Tragen Sie jede Origin ein, von der Ihre Seite ausgeliefert wird – Schema, Host und Port müssen exakt übereinstimmen:
https://www.your-venue.example
http://localhost:*http://localhost:* erlaubt jeden Port auf localhost, für die lokale Entwicklung – :* ist der einzige Platzhalter, den die API akzeptiert, und nur für den Port. Der Schlüssel beginnt mit bdp_pk_ und darf in HTML stehen; die Origin-Liste ist das, was ihn schützt.
2. Container und Script einfügen
An beliebiger Stelle Ihrer Seite:
<div id="bookdineplay-widget"></div>
<script src="https://cdn.bookdineplay.com/sdk/v0/bookdineplay.js"></script>Der Alias v0 liefert immer das neueste 0.x-Release des SDK und wird fünf Minuten lang gecacht. Wie Sie stattdessen eine exakte Version mit Integritäts-Hash festlegen, steht am Ende dieser Seite.
3. Widget rendern
Nach dem Script-Tag:
<script>
window.BookDinePlay.renderBookingWidget({
container: '#bookdineplay-widget',
venueSlug: 'your-venue',
apiBaseUrl: 'https://api.bookdineplay.com',
publishableKey: 'bdp_pk_your_publishable_key',
resourceTypes: ['RestaurantTable', 'BilliardTable', 'DartBoard']
});
</script>| Option | Pflicht | Bedeutung |
|---|---|---|
container |
ja | CSS-Selektor des Elements, in das das Widget rendert (ein DOM-Element wird ebenfalls akzeptiert) |
venueSlug |
ja | Der Slug Ihrer Location, zu sehen in den Location-Einstellungen der Konsole |
apiBaseUrl |
ja | https://api.bookdineplay.com |
publishableKey |
ja | Der bdp_pk_…-Schlüssel aus Schritt 1 |
resourceTypes |
nein | Welche Ressourcentypen Gäste buchen dürfen: RestaurantTable, BilliardTable, DartBoard, Shuffleboard, BowlingLane, EventArea |
theme |
nein | auto (Standard), light oder dark |
4. Seite öffnen
Laden Sie die Seite von einer der erlaubten Origins. Das Widget zeigt die Ressourcentypen des Betriebs, fragt Personenzahl, Datum und Uhrzeit ab, listet freie Slots, nimmt Kontaktdaten entgegen und bestätigt die Reservierung. Jede Anfrage trägt Ihren veröffentlichbaren Schlüssel im Header X-BookDinePlay-Key.
Wenn nichts erscheint
- Nichts erscheint und die Konsole meldet einen fehlenden Schlüssel –
publishableKeyist Pflicht; das Widget rendert lieber gar nicht, als die API ohne Schlüssel aufzurufen. - 403
origin-not-allowed– die Origin der Seite steht nicht auf der Liste des Schlüssels. Die Origins eines Schlüssels stehen mit dem Anlegen fest: Legen Sie einen neuen Schlüssel mit allen Origins an, rollen Sie ihn aus und widerrufen Sie dann den alten (Schlüssel rotieren). - 401
invalid-api-key– der Schlüssel ist falsch abgetippt oder wurde widerrufen. - Datei direkt geöffnet (
file://) – der Browser sendetOrigin: null, das nie auf einer Liste stehen kann, also bekommen Sie 403origin-not-allowed. Liefern Sie die Seite über einen lokalen Webserver aus und erlauben Siehttp://localhost:*.
Die vollständige Liste steht unter Authentifizierung.
Exakte Version festlegen
Der Alias v0 aktualisiert sich automatisch. Verlangt Ihre Sicherheitsrichtlinie byte-genaues Pinning, laden Sie eine exakte Version und ergänzen den Integritätswert, der daneben als sdk/<version>/sri.txt veröffentlicht ist (ebenfalls an das Release auf GitHub angehängt):
<script
src="https://cdn.bookdineplay.com/sdk/<version>/bookdineplay.js"
integrity="<hash from sdk/<version>/sri.txt>"
crossorigin="anonymous"></script>Exakte Versionen sind unveränderlich und ein Jahr lang gecacht; der Alias ist nie Ziel eines veröffentlichten Hashes, weil sich sein Inhalt absichtlich ändert.
Nächste Schritte
- Authentifizierung – wie Schlüssel, Origins und Header funktionieren und welcher Fehler was bedeutet.
- WordPress-Plugin oder .NET-SDK – falls ein Script-Tag nicht zu Ihrer Website passt.