Entwickler
Lesen Sie Buchungen, Bestellungen und Menüs all Ihrer Restaurants. Übermitteln Sie neue Buchungen von Server zu Server. Abonnieren Sie Webhooks für Echtzeit-Integrationen.
Authentifizierung
Jede Anfrage benötigt einen Authorization: Bearer oac_live_…-Header. Schlüssel werden in Ihrem Unternehmens-Dashboard ausgestellt und gelten für alle Restaurants des Unternehmens.
curl https://www.openalacarte.com/api/v1/bookings \ -H "Authorization: Bearer oac_live_<your-key>"
Ratenbegrenzung: 120 Anfragen/Minute pro Schlüssel. Eine 429-Antwort liefert einen Retry-After-Header zurück.
Endpunkte
/api/v1/bookings
Listet Buchungen all Ihrer Restaurants auf. Filtern Sie nach restaurantId, Status, Datumsbereich. Cursor-paginiert.
/api/v1/bookings
Erstellt eine Gastbuchung von Server zu Server. Gibt den confirmCode zurück, den der Integrator an den Gast weitergibt.
/api/v1/orders
Listet Bestellungen auf. Filtern Sie nach restaurantId, Status, Typ (DINE_IN/TAKEAWAY/DELIVERY).
/api/v1/orders/{id}/status
Aktualisiert den Status einer Bestellung (CONFIRMED, PREPARING, READY, DELIVERED, CANCELLED). Löst die standardmäßige Gastbenachrichtigung aus.
/api/v1/orders/{id}/refund
Erstattet eine bezahlte Bestellung vollständig über Stripe. Storniert die Anwendungsgebühr und das Guthaben in einem einzigen Aufruf.
/api/v1/menu-items
Listet Menüartikel all Ihrer Restaurants auf. Enthält Preis, Allergene, Tags und Bestand.
Schnellbeispiel — die heutigen Buchungen auflisten
curl "https://www.openalacarte.com/api/v1/bookings?from=$(date -u +%Y-%m-%d)&status=CONFIRMED" \
-H "Authorization: Bearer oac_live_<your-key>"
# Response:
# {
# "data": [
# { "id": "...", "restaurantId": "...", "date": "2026-05-28T…",
# "time": "19:30", "partySize": 4, "status": "CONFIRMED",
# "confirmCode": "abc12345", "diner": { "name": "...", "email": "..." } }
# ],
# "nextCursor": null
# }Webhooks
Abonnieren Sie Ereignisse, um in Echtzeit zu reagieren. Wir senden eine signierte JSON-Nutzlast an Ihren Endpunkt; Sie müssen innerhalb von 10 Sekunden mit 200 antworten.
booking.created
Eine Buchung wurde vorgenommen.
booking.status_changed
Eine Buchung hat den Status geändert (z. B. bestätigt → storniert).
order.created
Eine neue Bestellung wurde aufgegeben.
order.status_changed
Eine Bestellung hat den Status geändert (CONFIRMED → PREPARING → READY → DELIVERED).
review.created
Eine neue Bewertung ist für eines Ihrer Restaurants eingegangen.
menu_item.updated
Ein Menüartikel wurde bearbeitet (Preis, Beschreibung, Bestand).
Jede Zustellung enthält X-OAC-Signature: sha256=… — HMAC-SHA256 des Bodys mit dem Endpunkt-Geheimnis. Verifizieren Sie es, bevor Sie ihm vertrauen.