Looking to use Calendly's API or build integrations? Developer Community is here to help.
Recently active
We’re excited to share the Calendly MCP Server, a new way to connect Calendly with AI-powered apps and MCP-compatible clients.If you’re building AI apps, agents, or workflow-driven experiences, Calendly MCP gives you a secure, structured way to bring scheduling actions into those experiences using structured tools instead of raw API calls. With Calendly MCP, you can:Connect Calendly to supported AI assistants and MCP-compatible clients Enable natural language access to Calendly data and actions Build custom AI-powered workflows on top of Calendly Initial capabilitiesThe first release is focused on scheduling workflows, including:Requesting and updating availability Creating and updating event types Managing and booking meetings Generating single-use scheduling links How to get startedConnect your client to https://mcp.calendly.com Confirm that your client supports MCP 2025-03-26+ and streamable HTTP Complete the OAuth authorization flow Check out the MCP integration guide for setup gu
If you’re getting started with the Calendly API or advanced embed, the Developer Portal is the best place to start!Getting started - an overview of our APIs and the different ways you can authenticate. Create a developer account - instructions on making an account to create and manage OAuth credentials. API Reference - our up-to-date API reference, including a full list of available endpoints. API use cases and API recipes - some ideas and tutorials related to common API uses. Release notes - stay up to date with new releases and use our RSS or Atom subscription options.We also have some embed Help Center articles that are helpful to developers.Advanced embed - an outline of our advanced embed code, including a function to manually initialize an inline embed. Source tracking with your Calendly embed and UTM parameters - a great reference for passing UTM parameters to an embed.
Hi all, I have two services and want to use the same 20% off coupon code for both. I see this is not yet available to want to start a thread to build interest to have this feature added. Surely this is only a quick dev fix to allow duplicates??? If it helps 😁{removed by moderator}
Is it possible to a add a box for tax, on the paid events & packages?
We're using Calendly routing forms with HubSpot form embedding on our website. We followed the docs to set up routing from a HubSpot form using the provided embed code: <script src="https://assets.calendly.com/assets/external/forms.js" async></script> <script> window.addEventListener('load', function() { Calendly.initHubspotForm({ "id": "our-hubspot-form-id", "url": "https://calendly.com/api/form_builder/forms/our-form-id/submissions" }) })
I’m working on a website where I’m trying to integrate the Calendly API to create and sync scheduled events with my website. The API connection appears to be configured correctly, and the requests are being sent from my application, but the events created through Calendly are not appearing on my website after the sync process runs. I’m trying to understand whether I’m missing something in the event retrieval or synchronization logic.I have checked the basic API configuration and the authentication flow, but I’m still unable to get the newly created events to show up in my application. The integration does not return an obvious error, which makes it difficult to determine whether the problem is related to the API request, event filtering, pagination, or the way I’m processing the response. I’m also wondering if there is a specific endpoint or parameter that needs to be used when retrieving recently scheduled events.Has anyone experienced a similar issue when integrating Calendly events
It would be great if Calendly offered an event-type-specific one booking per client, ever rule. This would be useful for introductory offers and free consultations so that clients could not book these over and over again. It doesn’t happen often, but when it does, it can be really frustrating. Also same with clients that book several time slots only to cancel some of them last minute. Anyway, would love to know if this is an easy feature that could be added.Thanks!
I cannot figure out why my request is wrong. My Curl looks like this:curl --request GET \--url 'https://api.calendly.com/scheduled_events?organization=14b0c407-b454-4059-8830-eaf5c92ab325' \--header 'Authorization: Bearer [Here I introduce my personal token, which works in other requests : ) ] \--header 'Content-Type: application/json' But I keep getting “invalid argument” parameter: “organization”. I have no idea what the problem is, since I did a request to find out the organization URI and copy-pasted it as you can see. Any help is appreciated :)
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
Hi,once again a color has been changed within the calendly embed widget. I have a website with a dark background and the text color in the widget is set to bright yellow. However, suddenly the welcome message is displayed in a dark grey, which makes the text barely readable. Could you please look into this asap and fix it?Thank you!
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?
Hello,I'm currently working on integrating Calendly more deeply into our scheduling workflow and have several questions regarding the API's capabilities, specifically around scheduled events and meeting polls. Querying Pending Events: Is there a way to specifically query for scheduled events that are in a 'pending' state, such as meeting polls? This functionality would be incredibly useful for managing large numbers of appointment requests. Creating Meeting Polls via API: While the API documentation provides details on creating One-Off Event Types, I am curious if there is a similar capability for creating meeting polls. I noticed that the event type class includes a pooling_type attribute. Could this be utilized to create meeting polls, and if so, could you provide some guidance or point me to the relevant documentation? I appreciate any help or direction you can provide. Thank you for supporting the community with your insights!
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!
Hi everyone,My team relies heavily on Calendly for booking our internal syncs, so I am very familiar with the standard routing forms. However, I am currently running into a frustrating frontend issue when trying to embed the booking widget on a custom web app.I recently built a daily HTML5 logic puzzle for my team and our users to take a quick mental break. You can see the mobile layout and play hang five here to understand the UI structure.My goal is to place a Calendly "Inline Embed" directly beneath the main game container so players can easily book a quick feedback call with me. On desktop, the embed works flawlessly. But on mobile viewports (specifically iOS Safari), the invisible container or padding of the Calendly iframe seems to stretch upward and overlap the bottom of my game's CSS grid keyboard. This causes the iframe to "steal" the touch events, meaning players cannot tap the bottom row of letters. Has anyone found a clean CSS wrapper to strictly lock the inline embed's max
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?
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.