Integrations

Connect Calendly

Connect your Calendly account in minutes – no API keys, no webhooks to wire by hand. Authorize once, then map booking events like meetings booked, cancellations and no-shows straight onto your conversions.

Connecting Calendly turns scheduling events – meetings booked, cancellations, no-shows – into LeadJourney conversions, automatically attributed to the campaign, ad set and ad that earned them. You authorize Calendly once (no keys to copy, no webhook URLs to paste by hand), then map each Calendly event onto one of your conversion types. Mapped events flow through the same postback pipeline as your offline conversions, so they automatically pick up every ad postback you've already configured.

Before you start

Have these ready so the connection works end to end:

  • An active LeadJourney workspace and a Calendly account you can sign in to.
  • A paid Calendly plan – Calendly's free plan doesn't support webhooks, so connecting requires a paid account.
  • Tracking is live – clicks have to be recorded first so bookings can be matched back to a campaign. See Install the tracking script.
  • At least one conversion type to map onto (e.g. BookedCall). Set these up first in the Events Manager.

Where to find it

Open Settings → Apps, or go to app.leadjourney.io/settings?slug=apps. Click the Calendly card to open the integration (or use ?slug=apps&app=calendly). While you're not connected you'll see a “Connect your Calendly account” card; once connected, the same screen shows your account, scope and triggers.

Step by step

Authorize LeadJourney from Calendly

On the Connect your Calendly account card, click Connect with Calendly. You'll be redirected to Calendly to sign in and approve LeadJourney's access.

The grant gives read access to your scheduled events and organization, plus write access for webhook subscriptions (so LeadJourney can subscribe to your bookings) – there are no keys to copy and no webhook URLs to paste. After you approve, Calendly sends you back and you'll see a “Calendly connected” confirmation.

Webhooks need a paid Calendly plan

Calendly only exposes webhooks on its paid plans. If the connection fails, confirm your Calendly account is on a plan that supports webhook subscriptions.

Syncing starts when you connect

LeadJourney tracks new Calendly bookings from the moment you connect. Data from before the connection is not imported.

Check the connection details

Once connected, the header shows a Live pill (or Needs reconnect if something breaks), plus Re-authorize and Disconnect buttons. Below it you'll see the Connection status, your Account and whether the grant is at User scope or Organization scope, Active triggers (active out of total) and the Connected since date.

Add a trigger

In the Triggers panel (“Each trigger maps a Calendly event to one of your conversions.”) click Add trigger. In the New Calendly trigger dialog:

  1. App: Calendly (already selected).
  2. LeadJourney Event: pick the conversion type this Calendly event should record, e.g. BookedCall. (No options? Create one under Settings → Events first.)
  3. Trigger: choose the Calendly event that should fire it from the card grid, such as a booking, a cancellation, a no-show or a routing form submission. Search triggers… narrows the list.

Click Continue.

Receive data and confirm the mapping

The dialog opens a three-tab flow:

  • Receive Data: the latest records load automatically. To narrow them down to one event type, paste its Calendly event link (e.g. https://calendly.com/you/30min) and click Search. If nothing appears, book a meeting or submit a routing form in Calendly and click Find latest data again. Select a record and click Continue with selected record.
  • Configure Mapping: map the Calendly record onto LeadJourney columns. New triggers start with Email, Name, Phone, click_id, Revenue and Currency, pre-filled where LeadJourney finds a likely path (click_id from tracking.salesforce_uuid). Select several paths to join them with a space, or type a path or static: literal and press Enter. Add custom field brings back a removed column or adds one of your workspace's custom fields, and Create new field creates one (type Text, Number or Currency). Mapping click_id is recommended but optional (see the callout below).
  • Filtering (optional): click Add Another Filter and set a path, an operator and a value. To fire only for one specific Calendly event, filter on scheduled_event.event_link and paste that event's link as the value. Each filter is tested against the record you selected and shows PASS or FAIL.

Save & Continue takes you from the mapping to the filters. Click Activate to finish (Save trigger when editing), or Save and continue later to keep your progress.

Why bookings link to the right campaign automatically

Calendly carries the visitor's click ID through scheduling links in its tracking.salesforce_uuid field, and LeadJourney's tracking script populates it. So when someone books, LeadJourney already knows which click – and therefore which campaign, ad set and ad – earned it, without you mapping click_id by hand. Just make sure your scheduling links are opened through LeadJourney-tracked landing pages.

Managing your triggers

Each trigger appears as a row – Calendly event → conversion type – with an Active / Paused pill and a summary of how many fields and filters it uses.

  • Pause / Resume: use the toggle to stop a trigger temporarily without deleting it.
  • Edit: change the event, mapping, filters or target conversion. The URL gets a trigger_id parameter, so you can share a link that opens that trigger directly.
  • Delete: type delete and click Delete trigger. The mapping and filters can't be recovered; other triggers keep running.
  • Add another: use Add trigger again to map more Calendly events (bookings, cancellations, no-shows) onto different conversions.

Reconnecting

If Calendly revokes the app, the webhook subscription goes missing, or Calendly is unreachable, the header flips to Needs reconnect and a banner explains why (e.g. “Calendly disconnected your app” or “Webhook subscription is gone”). Click Reconnect to re-run the authorization. To refresh granted permissions while everything still works, use Re-authorize in the header. In both cases your triggers and settings are kept.

Disconnecting

To remove Calendly, click Disconnect in the header, type disconnect and confirm with Disconnect Calendly. This is deliberate because it's destructive:

Disconnect deletes your triggers

Disconnecting permanently removes the Calendly connection, deletes every trigger and revokes the webhook subscription. Calendly events stop flowing into your conversions immediately. You can reconnect later, but your trigger configuration won't be restored – you'll set them up again.

Troubleshooting

No records when you click “Find latest data”?

Nothing has happened in Calendly for that event type yet, or the event link you searched for doesn't match. Create a fresh booking (or cancel one to test a cancellation), check the link, then click Find latest data again. The matching record should appear so you can finish the mapping.

Bookings come in but aren't attributed to a campaign?

LeadJourney needs to know which click the booking belongs to. Check that (1) the tracking script is installed and recording clicks, (2) visitors reach Calendly through LeadJourney-tracked pages (so tracking.salesforce_uuid carries the click ID), and (3) the trigger is Active. As a fallback you can map click_id, email or phone explicitly on the Configure Mapping tab.

Header shows “Needs reconnect”?

Calendly has revoked the grant, the webhook is gone, or the API is unreachable. Click Reconnect in the banner to re-authorize. Your triggers are preserved.