Für Entwickler: API, Webhooks, MCP
glampr hat eine offene Schnittstelle. Damit verbinden Sie Ihr Buchungssystem mit Website, Schranke, Buchhaltung oder Automationen wie Zapier.
Zugang
- Jeder Campingplatz erstellt seine API-Schlüssel selbst im Cockpit (Inhaber), mit Berechtigung
readoderwrite. - Schlüssel werden nur gehasht gespeichert und sind einzeln widerrufbar.
- Anfragen je Schlüssel sind begrenzt; die Antwort enthält
X-RateLimit-LimitundX-RateLimit-Remaining, bei Überschreitung429mitRetry-After.
Authorization: Bearer glp_… (oder: X-Api-Key: glp_…)
Basis-URL: https://<ihr-platz>.glampr.de/api
Endpunkte (Version 1)
| Methode und Pfad | Berechtigung | Zweck |
|---|---|---|
GET /v1 | – | Übersicht |
GET /v1/openapi.json | – | OpenAPI-Beschreibung |
GET /v1/units | read | Plätze und Kategorien |
GET /v1/availability?from=JJJJ-MM-TT&nights=3&prefix=K | read | Freie Plätze ab Datum |
GET /v1/prices?from=…&nights=…&adults=2&children=0 | read | Gesamtpreis inkl. Kurtaxe und Zuschlägen |
GET /v1/bookings?from=…&to=… | read | Buchungen im Zeitraum |
GET /v1/bookings/{id} | read | Eine Buchung |
POST /v1/bookings | write | Buchung anlegen (mit Regeln, Preis und Konfliktprüfung) |
POST /mcp | read / write | MCP-Server für KI-Assistenten (Werkzeuge: verfuegbarkeit, preis, buchen) |
curl -H "Authorization: Bearer glp_…" \
"https://<ihr-platz>.glampr.de/api/v1/availability?from=2027-05-14&nights=3"
Webhooks
glampr meldet Ereignisse per HTTP-POST an Ihre Adresse. Einrichten im Cockpit (Inhaber), inklusive Test-Versand, Zustellprotokoll und erneutem Senden.
- Ereignisse u. a.:
booking.created,booking.cancelled,booking.moved,booking.paid,booking.checked_in,booking.checked_out,guest.*,import.*,ical.*oder*für alle. - Kopfzeilen:
X-Glampr-Event,X-Glampr-Delivery,X-Glampr-Signature. - Bei Fehlern wird automatisch wiederholt: nach 1, 5, 30, 120, 360, 720 und 1.440 Minuten.
Signatur prüfen
Die Signatur hat die Form t=<Zeitstempel>,v1=<HMAC>. Der HMAC ist SHA-256 über <Zeitstempel>.<Rohdaten> mit Ihrem Webhook-Geheimnis.
// Node.js
const [t, v1] = sig.split(',').map(s => s.split('=')[1]);
const ok = crypto.createHmac('sha256', secret).update(t + '.' + rawBody).digest('hex') === v1;
Zapier, Make und n8n
- Legen Sie in Zapier einen Zap mit dem Auslöser „Webhooks by Zapier – Catch Hook“ an und kopieren Sie die Adresse.
- Tragen Sie die Adresse in glampr unter Webhooks ein und wählen Sie die Ereignisse, z. B.
booking.created. - Klicken Sie in glampr auf „Test senden“ – Zapier zeigt die Beispieldaten.
- Verbinden Sie den nächsten Schritt, z. B. eine Zeile in Google Tabellen oder eine Nachricht an Ihr Team.
Für Aktionen in Gegenrichtung (z. B. aus Zapier eine Buchung anlegen) nutzen Sie den Schritt „Webhooks – POST“ mit POST /v1/bookings und einem Schlüssel mit Berechtigung write.
Datenexport
Inhaber können alle Daten jederzeit im offenen Format OpenCamp (JSON) exportieren. Schema: GET /api/public/opencamp/schema.json.