Patterns d'intégration courants
Utiliser des patterns OmniLab éprouvés pour la synchro CRM, l'export analytics, le self-service booking, et l'automatisation maîtrisée.
Cadrez votre intégration OmniLab autour de patterns éprouvés avant d'investir dans des scripts ad hoc ou du polling agressif. Cette page regroupe les approches demandées le plus souvent.
Synchroniser un CRM ou un CDP avec des webhooks
Utilisez les webhooks lorsqu'un autre système doit réagir à des événements participant, reward, booking, ou OmniLab Smart Link sans faire de polling.
Un pattern fréquent ressemble à ceci :
Bonnes habitudes :
- séparer la réception OmniLab de l'écriture dans le CRM aval
- vérifier les signatures avant de faire entrer l'événement dans votre queue
- garder le receiver idempotent en stockant
webhook-id - ne souscrire qu'aux types d'événements réellement utiles au CRM
Exporter vers l'analytics ou un entrepôt de données
C'est le bon pattern lorsque vous voulez retrouver les données d'engagement OmniLab dans des dashboards BI, un data lake, ou un entrepôt analytique.
Types d'événements souvent utilisés ici :
touchpoint.page_visit.v1touchpoint.participated.v1touchpoint.completed.v1reward.won.v1reward.redeemed.v1smartlink.redirected.v1
Préférez une ingestion événementielle à un polling très fréquent. Si vous avez quand même besoin de backfills, exécutez-les en batchs paginés hors pics de trafic.
Construire une vue self-service de booking
Ce pattern est utile lorsqu'un portail participant ou une app mobile doit afficher les réservations à venir et permettre leur annulation. Pour la référence champ par champ complète de ces endpoints, voir l'API de réservation.
Gardez le flux booking sur votre backend
Demandez le token OmniLab sur votre serveur, puis appelez les endpoints booking en server-to-server. N'exposez jamais le client secret OmniLab dans un navigateur ou une app mobile.
1. Récupérer les bookings d'un contact
Utilisez GET https://<api-host>/v1/interactions:fetchContactBookings avec l'external ID du participant et les filtres utiles.
curl -X GET "https://<api-host>/v1/interactions:fetchContactBookings?external_id=CONTACT-123&booking_status=CONFIRMED&page_size=50&page_number=1" -H "Authorization: Bearer YOUR_ACCESS_TOKEN"Paramètres disponibles :
external_id(obligatoire)interactionsoupublic_keyspour restreindre le périmètreslot_date_range.frometslot_date_range.tobooking_statuspage_sizepage_number
Utilisez soit interactions, soit public_keys pour filtrer, mais pas les deux en même temps.
La réponse inclut un tableau paginé bookings avec des champs comme :
activityinteractionticket_typehostslot_starting_atslot_duration_in_minutesbooking_statusbooked_at,cancelled_at,checkedin_atbookingtimezone
Les statuts de booking incluent CONFIRMED, CANCELLED, CHECKED_IN, et WAITLIST.
2. Annuler un booking
Utilisez POST https://<api-host>/v1/interactions:cancelInteractionBooking avec l'ID de booking renvoyé par la requête précédente.
curl -X POST "https://<api-host>/v1/interactions:cancelInteractionBooking" -H "Authorization: Bearer YOUR_ACCESS_TOKEN" -H "Content-Type: application/json" -d '{
"booking": "BOOKING_ID"
}'Une annulation réussie renvoie un objet JSON vide.
3. Bonnes pratiques UX pour le booking
- affichez tous les horaires dans le fuseau renvoyé par OmniLab
- demandez une confirmation avant l'annulation
- rafraîchissez la liste après une annulation réussie
- gérez proprement les listes vides
- gardez vos filtres de dates en UTC lors des appels API
Automatisation maîtrisée autour d'une campagne ou d'un système aval
Certaines équipes ont besoin d'un workflow assisté par API autour des campagnes, rewards, ou participants. Comme la référence API complète n'est pas encore publiée, le plus sûr est de garder cette automatisation explicite et bien cadrée.
- confirmez la liste des endpoints supportés avec OmniLab avant de démarrer
- placez l'automatisation derrière un feature flag côté intégrateur
- validez le flux complet en staging avant la production
- gardez des logs d'audit sur chaque action automatisée lancée par votre système
Pour aller plus loin
Authentification
Demander le token server-to-server utilisé par le flux booking et les autres endpoints approuvés.
Webhooks
Utiliser une livraison événementielle pour les patterns CRM et analytics.
Intégration borne (approfondissement technique)
Embarquer les parcours booking et engagement dans un wrapper de façon sûre.
Intégration borne (pour les développeurs)
Embarquer OmniLab dans un wrapper borne, une page hôte iframe ou une WebView avec les bons messages, le bon dimensionnement et les bonnes permissions.
Référence technique SSO / OIDC
Référence technique pour configurer Microsoft Entra ID, Salesforce Marketing Cloud et des fournisseurs OIDC personnalisés avec OmniLab.