The Calendly tool lets your agent answer “can I book a call?” with an inline scheduler instead of a dead-end “yes, here’s a link.” Visitors see a booking card in the chat, click it, pick a time, and return to the conversation when they’re done. You don’t need to give Tiny Talk your Calendly login or an API key. Calendly event-type URLs are public — you paste them into the configuration and the agent constructs a personalised booking link at conversation time. For how tools work in general, plan limits, and the security model, see Tools.Documentation Index
Fetch the complete documentation index at: https://tinytalk.ai/docs/llms.txt
Use this file to discover all available pages before exploring further.
What you need
- A Calendly account (free or paid — both work).
- One or more active event types with public booking URLs, like
https://calendly.com/your-handle/discovery-call. - An agent on a paid plan, using a model that supports tool calling. Most modern models do; the AI Models page lists the exceptions.
Setting up Calendly
Find your Calendly event URLs
In Calendly, open Event Types. For each event you want to offer through the agent:
- Click the event to open it.
- Copy the Public URL at the top — it looks like
https://calendly.com/your-handle/discovery-callorhttps://calendly.com/team/your-org/intro.
Install Calendly on the agent
In the dashboard, go to Agent → Tools → Platform Tools. Find the Calendly card and click Install.The configuration screen opens. Calendly is installed against the current agent — installing it once doesn’t enable it on every agent in the workspace.
Add your event types
Under Event types, click Add for each event you want the agent to be able to book. Each event type has four fields.
- Slug — A short, lowercase identifier the agent uses to pick this event type (e.g.
discovery-call,demo,onboarding). Lowercase letters, digits, and hyphens; up to 64 characters. Must be unique within this agent. - Label — The display name shown to visitors in the booking card (e.g. Discovery Call). Up to 120 characters.
- When to use — The single most important field for routing accuracy. Describe the situation or intent that should trigger this event type — not what the meeting is, since the label already covers that. Up to 500 characters.
- Calendly URL — The public URL you copied in step 1.
Set a default event type (optional)
Under Default event type, pick one of the events you added. The agent will fall back to this when the conversation doesn’t make it obvious which event type the visitor wants.Leave it on First in list to use the first event type you added as the fallback. With a single event type configured, this setting doesn’t matter — that event is always picked.
Tune the embed appearance
Under Embed appearance, two toggles control how Calendly renders inside the chat:
- Hide event type details — Hides the description and duration block at the top of Calendly’s widget. Useful when the agent has already explained what the meeting is. Off by default.
- Hide GDPR banner — Hides Calendly’s GDPR cookie banner inside the embed. On by default; turn it off if your privacy posture requires Calendly’s banner to be visible.
How the agent uses Calendly
Once installed, the agent sees Calendly as a tool it can call when a visitor asks to schedule something. The runtime is channel-aware — what the visitor sees depends on where the conversation is happening.| Channel | What the visitor sees |
|---|---|
| Website widget (Messenger) | An inline booking card. Clicking it opens Calendly’s scheduler embedded in the chat. After booking, the chat resumes automatically. |
| A markdown link to the personalised Calendly URL. The visitor taps the link to open Calendly in their browser. | |
| Slack | A markdown link in the Slack thread. |
| API (custom integration) | The same link, returned in the assistant message. |
What gets prefilled
If the visitor has already shared their contact details with the agent — through a lead form, a Help Desk hand-off, or earlier in the conversation — the agent prefills them into Calendly automatically:- First name and last name
a1 slot), so visitors don’t have to retype context they’ve already given the agent.
What visitors see in the chat
On the website widget, when the agent decides to use Calendly, it sends a short framing message (“Pick a time below 👇”) followed by a card showing:- A calendar icon
- The event type label you configured
- A Schedule your call button
- “Powered by Calendly” attribution
Example use cases
Single event type: book a discovery call
The simplest setup. One event type the agent can offer when a visitor wants to talk to the team.| Field | Value |
|---|---|
| Slug | discovery-call |
| Label | Discovery Call |
| When to use | When the visitor asks to talk to a human, requests a demo, or wants to discuss whether the product fits their use case. |
| Calendly URL | https://calendly.com/your-handle/discovery-call |
Multiple event types: route by intent
Three event types let the agent route bookings based on what the visitor is asking for.- Discovery Call (
discovery-call) — Use when a prospect wants to evaluate the product or has questions about pricing and fit. URL:https://calendly.com/your-handle/discovery-call - Product Demo (
demo) — Use when the visitor explicitly asks for a demo or walkthrough of features. URL:https://calendly.com/your-handle/demo - Onboarding (
onboarding) — Use when an existing customer wants help setting up the product or migrating data. URL:https://calendly.com/your-handle/onboarding
Internal scheduling assistant
Calendly works just as well for internal-facing agents. An HR assistant on an intranet portal could offer:- 1:1 with HR — Use when an employee wants to discuss benefits, leave, or any HR matter privately.
- Manager office hours — Use when an employee wants to talk to their manager outside their regular schedule.
Disabling and uninstalling
Open the Calendly configuration and toggle Enabled off to stop the agent from offering bookings without losing your event-type configuration. The installation still counts against your per-agent tool limit while disabled. To remove Calendly entirely, scroll to Danger zone and click Uninstall. A confirmation modal asks you to confirm. Uninstalling is immediate and can’t be undone — your event-type configuration is deleted, but no Calendly data is touched. Existing bookings in your Calendly account are unaffected.Troubleshooting
The agent isn't offering Calendly when it should
The agent isn't offering Calendly when it should
The model decides whether to use the tool based on the Label and When to use fields you set. If it skips Calendly even when a visitor clearly wants to book:
- Make When to use explicit about the kinds of phrasing visitors actually use — “asks to book a call, requests a meeting, wants to talk to someone” — rather than generic descriptions.
- Confirm the installation is enabled.
- Check that the AI model on the agent supports tool calling. Older or very small models don’t, and the runtime silently skips tool registration on unsupported models. The AI Models page lists what each model supports.
- Make sure you haven’t hit your per-agent tool cap. Disabled tools count against the limit too.
The agent picks the wrong event type
The agent picks the wrong event type
Two event types with overlapping When to use descriptions force the model to guess. Rewrite each one so it describes a situation the others wouldn’t match. Use concrete intents — “asks for a demo or product walkthrough” — rather than restating the event label.A clear default also helps. The agent uses it whenever the conversation is ambiguous, so put the safest, most general event type there.
The booking card doesn't appear on the website widget
The booking card doesn't appear on the website widget
On the website widget, the agent should render an inline booking card with a Schedule your call button. If you only see a plain markdown link instead:
- Check you’re viewing the live widget, not a Help Desk preview or a takeover thread. The card is rendered by the messenger.
- The visitor’s browser needs to allow Calendly’s iframe domain (
calendly.com). Strict content-security policies on a host page can block it. - Make sure the model selected for the agent supports tool calling — if it doesn’t, the agent never invokes Calendly and posts a generic message instead.
Visitor details aren't being prefilled
Visitor details aren't being prefilled
Calendly prefill only works when the agent already knows the visitor’s name and email. That happens automatically when the visitor has gone through a lead form, been recognised by their contact token across sessions, or shared the details earlier in the conversation.For first-time anonymous visitors, the booking form appears blank — they fill it in on Calendly directly. No configuration is needed; this is by design.
Can I use Cal.com or another scheduler?
Can I use Cal.com or another scheduler?
Not yet. Calendly is the only scheduler integration available right now; others are on the roadmap. In the meantime you can wire any scheduler with a public booking URL through a Custom Tool, but you won’t get the inline embed — the agent will post a link.
Do I need to give Tiny Talk my Calendly login?
Do I need to give Tiny Talk my Calendly login?
No. Calendly event-type URLs are public — you paste them into the configuration and that’s it. Tiny Talk never authenticates against your Calendly account. Disabling or rotating your Calendly account doesn’t affect anything Tiny Talk stores.
The Calendly URL won't save
The Calendly URL won't save
The validator accepts URLs in the form
https://calendly.com/<handle>/<event-slug> (or https://calendly.com/<team>/<org>/<event-slug> for team accounts). Common reasons it rejects a URL:- The URL has query parameters (
?month=...). Strip them — the agent adds prefill parameters automatically. - The URL points to your profile page (
https://calendly.com/your-handle) instead of a specific event. You need the per-event public URL. - The URL uses
http://instead ofhttps://.
Does Calendly count against my message or credit limits?
Does Calendly count against my message or credit limits?
Tool calls don’t consume extra credits — credit cost is determined by the AI model’s response, the same as for any other reply. The booking flow itself happens on Calendly and isn’t billed by Tiny Talk.