Got questions on API, webhooks, code, and more? Developer Community has answers.
Recently active
I asked this 9 days ago but never got clarity on which field I am supposed to use.If I do this:curl --request GET \ --url "https://api.calendly.com/scheduled_events?organization=https://api.calendly.com/organizations/DERERCVFDYL7OLC&min_start_time=2025-01-01T00:00:00Z&max_start_time=2025-06-30T23:59:59Z" \ --header 'Authorization: Bearer eyJraWQiOiIxY2UxZTEzNjE3ZGNmNzY2YjNjZWJjY2Y4ZGM1YmFmYThhNjVlNjg0MDIzZjdjMzJiZTgzNDliMjM4MDEzNWI0IiwidHlwIjoiUEFUIiwiYWxnIjoiRVMyNTYifQ.eyJpc3MiOiJodHRwczovL2F1dGguY2FsZW5kbHkuY29tIi234523zUtYmQxMy03ZTBhNWIwNDk2MjciLCJ1c2VyX3V1aWQiOiJBSEhCWE5MVElEQVJMWkU3In0.jsvcK0mRkCdIF87BJ7UxVaHfQDWClDc-QEIl-PyYuXYVm95wDIWR4r-_Xw7IwLp_18Q-amd8BGmsa5deb0P9qw' \ --header 'Content-Type: application/json' There is no field called “UUID”. But I’m supposed to use a UUID if I then call the API for “invitees”. Again, this is the JSON that comes back. It does not have a field called “uuid”.{ "calendar_event": { "external_id": "", "kind": "google" }, "crea
Hello Calendly Developer Community,I'm encountering a critical issue with the "List Events" endpoint in the Calendly API, specifically related to the pagination functionality. I'm hoping to get some insights or assistance from the community.Here's a detailed description of the problem:Initial Request Success: The first API call to the "List Events" endpoint to retrieve 100 events works as expected. Pagination Issue: However, when I attempt to make a subsequent call using the page_token parameter (which I received from the initial request) for the next set of events, the API returns a 400 error. This suggests a problem with the pagination implementation. Environment: I've encountered this issue consistently in both Python and Make (Integromat) environments. Comparison with Other Endpoints: To isolate the problem, I've tested pagination with other endpoints, such as the one used for routing forms, and it worked correctly there. This indicates that the issue seems specific to the "List Ev
I initially set the Invitee limit to a group event to 10.I later on decided to change it to 9 (I needed to save a spot for someone).It did display 9 in the event itself, but as people kept booking, the emails I got sent still displayed “X of 10”.Today, the 10th spot was booked without me having changed it back to 10 (thankfully, it was by the person I’d saved it for).So it seems that if you change the Invitee limit AFTER you’ve created the event, it doesn’t work.Am I missing something?
If I go here: https://developer.calendly.com/api-docs/6rb6dtdln74sy-list-groups It says:“Query Parametersorganization, string, required, Return groups that are associated with the organization associated with this URI” The words “query parameters” normally mean a parameter that is in the URL, after a question mark, therefore I try: curl -vvv --request GET --url "https://api.calendly.com/groups?organization=DCF*******7OLC" --header 'Authorization: Bearer {hidden}' --header 'Content-Type: application/json' But I get a 400 error. Since I’m using the -vvv flag, the full response is: Note: Unnecessary use of -X or --request, GET is already inferred.* Trying 172.64.146.81:443...* Connected to api.calendly.com (172.64.146.81) port 443 (#0)* ALPN, offering h2* ALPN, offering http/1.1* successfully set certificate verify locations:* CAfile: /etc/ssl/cert.pem* CApath: none* (304) (OUT), TLS handshake, Client hello (1):* (304) (IN), TLS handshake, Server hello (2):* (304) (IN), TLS handshak
Is it possible, via the API, to create a single-use scheduling link that also restricts when the invitee can book, e.g., only within a specific date range, only from a certain date onward, or only within the next X days, the same way you can configure this manually in the console?This seems like one of the more compelling use cases for single-use links (controlling exactly when a specific invitee can book), but I can't find a way to set those availability constraints through the API. Am I missing something, or is this genuinely not supported yet?
Hi all,I’m working on an API integration for a website, and even though (for now) it’s working correctly, I’m wondering if I’m there’s a better way to get a user availability for an event type to display in a calendar component.Since `event_type_available_times` has a 7-day date range limit, I’m currently doing 4 consecutive calls to fetch the availability for each month. The problem is that it’s incredibly slow, so when the user first opens up the calendar, or then switches to the next month, it’s taking around 5-7 seconds to complete all the requests and display the days with availability.Is there a more optimized/faster way to do this? Thank you!
Hello All! I would like to display my availability without allowing booking.I want to disable or hide the "NEXT" button booking option while still showing my schedule. The "NEXT" button is shown after a client chooses a day on the booking calendar.I can add CSS and PHP functions in WordPress if this helps find a solution.
Hi team,I'd like to request Korean (한국어) language support for the Calendly user interface.We plan to use Calendly to schedule meetings with customers and partners in South Korea, and many of them are not comfortable navigating an English-only booking page. Having Korean as a supported UI language would significantly improve the scheduling experience for our Korean-speaking users; both on the booking page side and the internal dashboard.Key areas where Korean support would help: Booking pages shared with external contacts (event descriptions, time selection, confirmation messages) Email notifications and reminders sent to invitees The scheduling workflow (date/time format localized to Korean conventions) Korean is one of the most requested languages in the Asia-Pacific region, and adding support would open up Calendly to a much larger user base and this would help Calendly stay competitive in the market.Would love to hear if this is on the roadmap. Thanks for considering.
Hello,Suddenly our widgets “Submit” buttons are back to the default blue color despite having set custom color “primary_color=202020”. The other custom colors work correctly.Nothing has changed on our end after working perfectly for years. Is this a bug? Is there now a separate code for the buttons?
Hi. I love that you are now offering packages. What would be AMAZING is if one could offer packages with different appointment types. For example, if I offer half-hour check-ins as well as one-hour coaching sessions as options of my appointment types, I would like to offer a large package which includes 6 one-hour sessions and 6 half-hour check-ins for a set rate. so i would be able to bundle several of my services in one offering. i know acuity does this. is there any way calendly can work that out???
Hi Calendly team, Our business has been using your service for a while now, with its integration into Google Calendar / Google Meets.Our employees and clients are very privacy conscious and we want to make the switch from GCal/Meets over to Proton Calendar / Proton Meet for all of our team and customer calls. However currently Calendly does not integrate with them and allow for Calendly bookings to create events in Proton Calendar with a Proton Meet link attached.So, this is a humble feature request to see if you can add support for Proton Calendar / Meets.In addition, if you are aware of a workaround that would let us use Proton Calendar / Meets with Calendly, please let us know. Thanks!
Hi Calendly team,I've run into what appears to be a bug with the Routing Form Logic Builder after the latest update.Issue:When creating or editing a routing form, I go to Logic → Add Route, click "Choose a question", and select one of the form questions. The question is selected, but nothing happens afterward. The next dropdown (where you would normally choose the condition such as "is", "contains", or select an answer) never loads, making it impossible to create routing logic.This workflow worked perfectly before the recent update.I've already tried:Refreshing the page Incognito mode Different browsers Creating a brand new routing formThe behavior is the same every time.I've attached a screenshot showing where the logic builder gets stuck after selecting a question.Is anyone else experiencing this, or is the team aware of the issue?
Hello,The text of my profile “welcome” message is too light to read on my Squarespace website. I don’t see an option to change the text through Calendly or Squarespace. How can I change the color to make it readable? See below in tan/pink. Would like it to be black. Thanks!
I’ve had some clients say that they haven’t been receiving the notifications from text messages, but I have it set up for three hours prior to the appointment. Is anyone else experiencing the same problem?
Hi everyone,I’m hoping someone here might have experience with a similar setup.I work at a marketing agency managing performance campaigns that drive users to book test rides at retail locations across Europe. We currently have 80+ locations, each with its own Calendly booking page.We are trying to track marketing attribution using UTM parameters, but we’re running into issues because of the way bookings are triggered from our store locator.Current setup: Ads include UTM parameters (utm_source, utm_medium, utm_campaign, utm_content) User lands on the website The landing page contains a store locator map (StoreRocket plugin) showing test ride locations User selects a store from the map They click “Book Test Ride”, which opens that location’s Calendly booking page Example simplified flow:Ad → Landing page with UTMs → Store locator map → Select store → Open Calendly booking pageThe problem:When the user opens Calendly from the map, the UTM parameters from the original landing page
hi everyone i have an AI phone service that allows Calendly to connect their booking platform but i need api key and access token Number. where do i go to add this so my calendar works
Hi everyone,I’m working on a Calendly integration using the API and webhooks, and I want to make sure I fully understand how the webhook system behaves in real-world usage.From the documentation, I understand that Calendly webhooks can be used to trigger events such as:Invitee Created (when a meeting is scheduled) Invitee Canceled (when a meeting is canceled) Routing form submissionsHowever, I’m a bit unclear about a few implementation details in practice:Do webhooks trigger instantly in all cases. or can there be any delay depending on the event type or plan? Are webhook events guaranteed to fire even if no one is actively logged into the Calendly dashboard? If multiple webhook subscriptions exist for the same event type, how is delivery handled? What is the best way to prevent duplicate processing when the same webhook payload is received more than once? Are there any recommended patterns for handling retries or failed webhook deliveries on the client side?I’m building an automation
Hi Calendly Support Team,I hope this message finds you well.I am currently integrating Calendly’s OAuth flow into my application, and I would like to ensure that the OAuth consent screen appears every time a user logs in, regardless of whether they have previously authorized the application.As per the documentation and standard OAuth practices, I’ve included the prompt=consent parameter in the authorization URL as shown below: However, despite this, the consent screen is not being shown consistently. Instead, users are often redirected immediately without being prompted to approve permissions again.Could you please confirm: If prompt=consent is supported by Calendly’s OAuth flow? If there is any additional parameter or setting required to force the consent screen on every authentication attempt? Any guidance or clarification would be greatly appreciated.Best regards,Sammy Abdulrahman
Hi,Objective:Create a unique calendar link for property viewings.Issue:I need each booking link to include pre-qualifying questions (e.g. household size, pets, etc.), but I can’t find a way to create one-off events with custom questions programmatically.Methods attempted: Tried using the API to create one-off events, but custom questions aren’t supported. Looked into creating a standard event type via the API, but that doesn’t allow custom questions either. Question:Is there a way to automate the creation of events (one-off or otherwise) that include custom questions, or is the only option to set up event types manually in the Calendly UI?Thanks
Hi, I’m Akshat.While building an AI agent to manage my own calendar events, I stumbled onto an idea that I can’t ignore a meeting scheduler that understands context, not just time.Since then, I’ve spoken with several SaaS founders and sales teams, and a recurring friction keeps coming up with current scheduling links:What breaks today:Your calendar knows when to meet but not who booked or why.High inbound volume leads to important meetings getting lost among generic ones.Manual lead qualification before every call wastes time and mental energy.Context is scattered across emails, DMs, CRMs or missing entirely.So meetings often start with guesswork instead of clarity.I’m exploring whether this is a problem worth solving with:a conversational booking layerAI-based intent captureautomatic pre-call summariesNot pitching anything yet genuinely trying to validate if this pain is real and common, or just a niche workflow issue.Would love to hear:👉 Do you face this?👉 How do you handle pre-cal
Hi everyone,I’m using Calendly.initPopupWidget to open the scheduling popup with prefilled invitee details.Previously, I was using a profile link like:https://calendly.com/usernameand the prefill data (first name, last name, email, customAnswers { a: xxx, a2: xxx}) was working correctly.However, recently this stopped working — the popup opens, but none of the prefill fields are populated.When I switch to an event-type link like:https://calendly.com/username/xxxxthe prefill works again as expected. Questions:Has there been any recent change where prefill is only supported with event-type URLs and not profile URLs? Was this behavior (prefill working on profile links) ever officially supported, or was it incidental? Is there any recommended way to support prefill when using profile-level links?Would appreciate any clarification or documentation references.Thanks!
The scheduling button is freezing most likely for IOS and Google pixel after a redirection from a landing page as well as an inframe embed.
Hi,I’m integrating Calendly into my website and tracking interactions in Google Analytics 4. When I use Calendly’s native GA4 integration, events such as invitee_event_type_page include full metadata (e.g., event type, category)However, when I embed Calendly directly on my site and rely on the postMessage events sent from the embedded widget, I only receive the event names (e.g., calendly.event_scheduled, calendly.event_type_viewed). The metadata that normally appears in the native integration—such as event category, event name, invitee information, or other payload fields—is missing or empty.This means that although the events fire, the parameters I need for reporting and attribution do not come through.How can I capture those missing parameters (event details, invitee info, category, etc.) when using a tag management tool?Thanks
Is it possible to limit the scope of the permissions I ask the users to give to my appto only one event type. This way he could be sure that only info for this event type is shared with my app and all other event types stay private for him.Thanks
I created a new Facebook page and I have been struggling to get he Book Now button to integrate with Calendly. I followed all of the steps and tried various permutations but I can only see the Call Now button in Facebook and now where will it allow me to paste the Calendly link into the Book Now feature. There are other options where you can use the link, like Signup but I specifically only want a Booking. I am a Medicare Agent and it would be nice to attach a link to my website for them to complete a Scope of Appointment before the meeting using Calendly. Larry
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.