Zum Hauptinhalt springen

Bookings

Die Bookings-API gibt Integrationen Lesezugriff auf die Bookings und Booking-Typen (Event-Typen) Ihres Workspace. Sie wird ergänzt durch ausgehende Webhooks, die Ihre Systeme benachrichtigen, sobald sich ein Booking ändert — erstellt, bestätigt, storniert, umgeplant, abgelehnt, neu zugewiesen oder als No-Show markiert.

Die Lese-Endpunkte sind auf den Workspace Ihres Tokens beschränkt: Sie können niemals Bookings eines anderen Workspace lesen.

Quick Start

# List bookings (newest first, keyset pagination)
curl -X GET "https://api.copera.ai/public/v1/bookings?status=CONFIRMED&limit=25" \
-H "Authorization: Bearer YOUR_API_KEY"

# Get a single booking by its public uid
curl -X GET https://api.copera.ai/public/v1/bookings/BOOKING_UID \
-H "Authorization: Bearer YOUR_API_KEY"

# List booking types (event types)
curl -X GET https://api.copera.ai/public/v1/booking-types \
-H "Authorization: Bearer YOUR_API_KEY"

Verfügbar in

Public APICLIMCPCopera AI
✅ Nur lesen

Die Lese-Endpunkte sind über die Public API verfügbar. Bookings sind noch nicht über die CLI, den gehosteten MCP-Server oder den In-App-Assistenten Copera AI freigegeben.

info

Die Bookings-Endpunkte sind noch nicht in der Live-API-Referenz — die Produktion hat die OpenAPI-Oberfläche dafür noch nicht ausgeliefert. Bis dahin ist dieser Leitfaden die Referenz; nutzen Sie die Request-Formen unten mit der Public API.

Schreibgeschützte Oberfläche

Die Public API stellt drei GET-Endpunkte bereit. Es gibt keine Endpunkte zum Anlegen, Stornieren, Bestätigen, Ablehnen oder Umplanen — Bookings werden in der Copera-App verwaltet und über die API gelesen.

Bookings listen

GET /public/v1/bookings liefert die Bookings des Workspace, neueste zuerst, mit Keyset-Paginierung. Query-Parameter (alle optional):

  • statusPENDING, CONFIRMED, DECLINED, CANCELLED oder COMPLETED.
  • bookingTypeId — auf einen einzelnen Booking-Typ beschränken.
  • from / to — ISO-8601-DateTimes; nach Startzeit des Bookings filtern.
  • limit — 1–100 (Standard 25).
  • cursor — der nextCursor aus einer vorherigen Antwort.
curl -X GET "https://api.copera.ai/public/v1/bookings?status=CONFIRMED&limit=25" \
-H "Authorization: Bearer YOUR_TOKEN"

Die Antwort ist keyset-paginiert:

{ "bookings": [ /* … */ ], "nextCursor": "…", "hasMore": true }

Booking holen

GET /public/v1/bookings/{uid} liefert ein einzelnes Booking über seine öffentliche uid. Der Pfadparameter akzeptiert auch die 24-hex-_id des Bookings — die Kennung, die Webhooks als data.id liefern — sodass ein Webhook-Empfänger das gemeldete Booking holen kann, ohne die uid zu kennen.

Booking-Typen listen

GET /public/v1/booking-types liefert die Booking-Typen (Event-Typen) des Workspace. Ohne Parameter und alle, einschließlich versteckter und inaktiver (jeder trägt Flags hidden und active zum clientseitigen Filtern).

Was ein Booking enthält

Ein Booking-Objekt enthält uid, status, bookingTypeId und bookingTypeTitle, start / end / durationMinutes, timezoneAtBooking, die hosts (jeweils { userId, role }), den booker (name, email, optional phone, timezone, locale), guests, die Formular-answers und die location. Da dies die Daten Ihres eigenen Workspace sind, sind Kontaktdaten des Bookers enthalten; interne Handles wie Manage-Token und Idempotency-Key werden nie freigegeben.

Ein Booking-Typ enthält _id, title, optional slug und description, kind, durationMinutes, optional color, die Flags hidden und active sowie Zeitstempel.

Webhooks

Neben dem Lesen von Bookings können Sie ausgehende Webhooks empfangen, die Ihre Systeme benachrichtigen, sobald sich ein Booking ändert. Siehe Booking-Webhooks für die Event-Liste, die signierte Payload, Header, Signaturprüfung und den Delivery-/Retry-Vertrag.

Authentifizierung & Scope

Bookings-Endpunkte akzeptieren ein volles Personal Access Token (cp_pat_) oder einen Integration API Key (cp_key_) mit dem Scope access_bookings. Ein Token ohne Scope erhält 403. Siehe Authentifizierung.

Referenz