Calendly : vos réservations
Faites entrer dans Mailcheer les personnes qui réservent sur Calendly : jeton d'accès, abonnement webhook, réservation d'essai et choix des champs.
Quand quelqu'un réserve un rendez-vous sur votre page Calendly, Calendly peut envoyer les détails de la réservation à une adresse web de votre choix : c'est un abonnement webhook, déclenché par l'événement invitee.created. Branché sur votre adresse de réception Mailcheer, il fait entrer chaque personne qui réserve dans vos contacts.
Chez Calendly, un abonnement webhook se crée par l'API, comme l'indique son centre d'aide. Concrètement : un jeton à générer dans Calendly, puis deux commandes à copier-coller dans un terminal. Tout est détaillé ci-dessous.
Avant de commencer
- Une adresse de réception Mailcheer. Dans Mailcheer, ouvrez Intégrations → Faire entrer des contacts et cliquez sur « Créer une adresse de réception ». Mailcheer vous donne une adresse de la forme
https://mailcheer.com/api/in/<jeton>. C'est un secret : ne la publiez nulle part, car quiconque la connaît peut y envoyer des données. - Une offre Calendly qui inclut les webhooks. D'après le centre d'aide de Calendly : Professional, Standard, Standard Plus, Teams, Teams Plus et Enterprise.
- Un terminal, pour coller deux commandes
curl.
Un mot sur le consentement
Une personne qui réserve un rendez-vous n'a pas forcément accepté de recevoir vos newsletters. N'y faites entrer que des personnes qui ont accepté de recevoir vos e-mails. Le double opt-in (un e-mail de confirmation) est activé par défaut dans Mailcheer.
1. Créez un jeton d'accès personnel
Le jeton prouve à Calendly que les commandes viennent de vous.
- Connectez-vous à Calendly et ouvrez la page Integrations.
- Choisissez la tuile « API & Webhooks ».
- Sous « Personal Access Tokens », cliquez sur « Get a token now ». Si vous avez déjà un jeton, cliquez sur « Generate new token » sous « Your personal access tokens ».
- Dans « Create your personal access token », donnez-lui un nom reconnaissable, par exemple « Mailcheer ».
- Choisissez ses autorisations (les scopes) :
users:read,webhooks:writeetscheduled_events:read. Un nouveau jeton n'a accès à rien tant que ses autorisations ne sont pas demandées. - Cliquez sur « Create Token », puis sur « Copy token ».
Calendly ne conserve pas le jeton et ne pourra plus vous l'afficher : copiez-le tout de suite et gardez-le comme un mot de passe.
À quoi sert chaque autorisation :
| Autorisation | Ce qu'elle permet ici |
|---|---|
users:read | Lire vos identifiants Calendly (étape 2). |
webhooks:write | Créer l'abonnement webhook (étape 3). |
scheduled_events:read | Recevoir l'événement invitee.created. |
2. Trouvez vos identifiants Calendly
L'abonnement a besoin de deux adresses qui vous identifient chez Calendly : la vôtre (l'utilisateur) et celle de votre organisation. Collez cette commande dans un terminal, après avoir remplacé <votre jeton Calendly> :
curl --request GET \
--url https://api.calendly.com/users/me \
--header 'Authorization: Bearer <votre jeton Calendly>'--request GET: on demande une information, sans rien modifier.--url …/users/me: l'adresse de l'API qui décrit votre propre compte.--header 'Authorization: Bearer …': votre jeton, qui prouve que c'est vous.
Dans la réponse, sous resource, notez deux valeurs :
uri: votre identifiant d'utilisateur, de la formehttps://api.calendly.com/users/…;current_organization: l'identifiant de votre organisation, de la formehttps://api.calendly.com/organizations/….
3. Créez l'abonnement webhook
Remplacez les quatre valeurs entre < >, puis collez la commande dans le terminal :
curl --request POST \
--url https://api.calendly.com/webhook_subscriptions \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <votre jeton Calendly>' \
--data '{
"url": "<votre adresse de réception Mailcheer>",
"events": ["invitee.created"],
"organization": "<la valeur de current_organization>",
"user": "<la valeur de uri>",
"scope": "user"
}'Ligne par ligne :
--request POST: on demande à Calendly de créer quelque chose.--url …/webhook_subscriptions: l'adresse de l'API qui crée les abonnements webhook.Content-Type: application/json: ce qu'on envoie est rédigé en JSON.Authorization: Bearer …: votre jeton, comme à l'étape 2."url": l'adresse où Calendly enverra chaque réservation, c'est-à-dire votre adresse de réception Mailcheer."events":invitee.created, l'événement « quelqu'un vient de réserver »."organization"et"user": les deux valeurs notées à l'étape 2."scope": "user": l'abonnement ne concerne que vos propres rendez-vous.
Si vous êtes propriétaire ou administrateur d'une organisation Calendly et voulez les réservations de toute l'équipe, remplacez "user" par "organization" dans la ligne scope, et supprimez la ligne "user".
Calendly répond avec l'abonnement créé. Vérifiez que state vaut active.
4. Faites une réservation d'essai
Calendly n'envoie rien pour les réservations passées : il faut une nouvelle réservation. Réservez vous-même un créneau sur votre page Calendly, avec une adresse e-mail à vous. Vous pourrez annuler ce rendez-vous ensuite.
Calendly demande une réponse rapide à chaque envoi. Mailcheer répond tout de suite et traite la réservation ensuite.
5. Choisissez les champs dans Mailcheer
Revenez sur votre adresse de réception dans Mailcheer : elle affiche ce qu'elle a reçu, avec la liste des champs trouvés.
Calendly envoie event (qui vaut invitee.created), created_at, created_by et payload, qui décrit la personne. Dans payload, la documentation de Calendly place :
- l'adresse e-mail dans
email(chemin complet :payload.email) ; - le nom complet dans
name; - le prénom et le nom dans
first_nameetlast_name, remplis seulement si votre type d'événement demande le prénom et le nom dans deux champs séparés (vides sinon) ; - les réponses aux questions de votre formulaire de réservation dans
questions_and_answers.
Choisissez ensuite, en cliquant :
- le champ qui contient l'e-mail (obligatoire) ;
- le prénom et le nom, si vous le souhaitez ;
- les étiquettes : fixes (par exemple
rdv-calendly) ou tirées d'un champ ; - le double opt-in, activé par défaut ;
- l'automatisation à déclencher, si vous en avez une.
Pour importer les personnes qui avaient réservé avant, passez par un fichier : voir Importer vos contacts.
Si ça ne marche pas
La commande de l'étape 3 renvoie une erreur.
| Réponse de Calendly | Ce que ça veut dire |
|---|---|
401 | Le jeton n'est pas reconnu : vérifiez qu'il a été collé en entier, juste après le mot Bearer et une espace. |
403 avec « Please upgrade your Calendly account to Standard » | Votre offre Calendly n'inclut pas les webhooks. |
403 avec « Insufficient scope » | Le jeton n'a pas les autorisations nécessaires : créez-en un nouveau avec users:read, webhooks:write et scheduled_events:read. |
409 | Un abonnement identique existe déjà. |
Rien n'arrive dans Mailcheer après une réservation.
- Vérifiez que la réservation a été faite après la création de l'abonnement.
- Avec
"scope": "user", seules vos propres réservations sont envoyées. - Si les envois échouent pendant 24 heures, Calendly désactive l'abonnement (
statepasse àdisabled) : il faut alors le recréer avec la commande de l'étape 3. L'API de Calendly permet de lister vos abonnements et de voir leur état.
Sources
- Webhooks overview — consultée le 25/09/2026
- Create a Webhook Subscription — consultée le 25/09/2026
- Create Webhook Subscription (référence de l'API) — consultée le 25/09/2026
- Personal Access Tokens — consultée le 25/09/2026
- Authorization Scopes — consultée le 25/09/2026
- How to find the organization or user URI — consultée le 25/09/2026
- Get current user — consultée le 25/09/2026
- Get sample webhook data (objet InviteePayload) — consultée le 25/09/2026
- Webhook Errors — consultée le 25/09/2026
- Webhook Timeouts — consultée le 25/09/2026
- List Webhook Subscriptions — consultée le 25/09/2026