CaribBook Widget

Web Component de réservation — Demo & Documentation

Demo en direct

Intégration

<!-- 1. Inclure le script --> <script src="caribbook-widget.js"></script> <!-- 2. Placer l'élément dans votre page --> <caribbook-booking property-id="VOTRE_UUID_PROPRIETE" tenant-slug="votre-slug" api-url="https://api.votresite.com" locale="fr"> </caribbook-booking> <!-- 3. Personnaliser les couleurs (optionnel) --> <style> caribbook-booking { --cb-primary: #0E7C7B; --cb-accent: #F4A261; } </style>

Attributs

property-id requis
string (UUID)

Identifiant unique de la propriété dans CaribBook.

tenant-slug requis
string

Slug du tenant (envoyé dans le header X-Tenant-Slug).

api-url requis
string (URL)

URL de base de l'API CaribBook, sans slash final.

locale
string — défaut : "fr"

Langue transmise à l'API pour les e-mails de confirmation.

Thèmes CSS

/* Thème corail */ caribbook-booking { --cb-primary: #E76F51; --cb-primary-light: #fde8e1; } /* Thème indigo */ caribbook-booking { --cb-primary: #4f46e5; --cb-primary-light: #ede9fe; }

Endpoints API utilisés

GET /api/v1/availability
Paramètres : propertyId, year, month

Retourne un objet Record<string, boolean> (clé = YYYY-MM-DD).

POST /api/v1/pricing/estimate
Body : propertyId, checkIn, checkOut, guestsCount

Retourne un objet PriceBreakdown avec détail par saison.

POST /api/v1/reservations
Body : coordonnées voyageur + dates

Crée la réservation et retourne un ReservationResponse.