Telegram to Google Calendar, meetings booked by message
You shouldn’t have to open a calendar app, hunt for a free slot, type details, then double-check time zones just because someone messaged, “Can we meet next Tue at 3?” That busywork is exactly where scheduling errors sneak in. Telegram calendar automation fixes the boring part.
Marketing managers booking partner calls feel this in their bones. A small business owner juggling customer meetings does too. Same for a freelancer trying to stay responsive without living inside Google Calendar. This workflow turns plain chat into real calendar events, so you get time back and your calendar stays clean.
You’ll see how the workflow reads your message, asks one quick follow-up when needed, and creates the event automatically. No forms. No “what time zone are you in?” ping-pong.
How This Automation Works
The full n8n workflow, from trigger to final output:
n8n Workflow Template: Telegram to Google Calendar, meetings booked by message
flowchart LR
subgraph sg0["When chat message received Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "When chat message received", pos: "b", h: 48 }
n1@{ icon: "mdi:robot", form: "rounded", label: "AI Agent", pos: "b", h: 48 }
n2@{ icon: "mdi:brain", form: "rounded", label: "OpenAI Chat Model", pos: "b", h: 48 }
n3@{ icon: "mdi:memory", form: "rounded", label: "Simple Memory", pos: "b", h: 48 }
n4@{ icon: "mdi:robot", form: "rounded", label: "Respond to Chat", pos: "b", h: 48 }
n5@{ icon: "mdi:location-exit", form: "rounded", label: "Create an event in Google Ca..", pos: "b", h: 48 }
n1 --> n4
n3 -.-> n1
n2 -.-> n1
n0 --> n1
n5 -.-> n1
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n0 trigger
class n1,n4 ai
class n2 aiModel
class n3 ai
class n4 disabled
The Problem: Scheduling by Chat Creates Avoidable Mistakes
Chat is where meetings start. But the moment you switch from Telegram to your calendar, things get messy. You retype the title, you guess the duration, and you interpret “next Wednesday” the way you think it means. Then you realize it overlaps with another call, or you forgot to add the right time zone, or you typed 12:30 instead of 1:30. It’s not hard work. It’s fragile work, and it steals attention in the middle of the day when you’re already switching contexts nonstop.
The friction compounds fast. Here’s where it breaks down.
- Every meeting request turns into a mini admin task that eats 5–10 minutes, even when it’s “quick.”
- Relative time phrases like “next Tue” or “Friday 3–4” get interpreted differently, which leads to awkward corrections later.
- You end up doing double entry, because the details live in Telegram while the truth has to live in Google Calendar.
- When you’re busy, you delay the calendar update “until later,” and later is when conflicts happen.
The Solution: Turn Telegram Messages Into Calendar Events Automatically
This workflow lets you book meetings the way people already talk: by sending a message. A chat trigger listens for incoming text, then an AI scheduling agent reads what you wrote and turns it into structured event details. It resolves fuzzy phrases (like “tomorrow morning” or “next Wednesday”) into real timestamps, creates a sensible event title when you don’t specify one, and makes sure required fields are filled before anything hits your calendar. If the message is too vague, it asks a single clarifying question instead of guessing. Once the details are ready, the workflow uses your connected Google account to create the event in Google Calendar.
The workflow starts when a chat message is received. The AI agent interprets the intent, checks what’s missing, then formats clean event data. Finally, the Google Calendar tool node creates the event (and an optional reply node can confirm the booking back in chat).
What You Get: Automation vs. Results
| What This Workflow Automates | Results You’ll Get |
|---|---|
|
|
Example: What This Looks Like
Say you book 4 meetings a day from Telegram messages. Manually, you typically spend about 7 minutes per meeting to retype details, pick the right duration, and sanity-check the date, which is roughly 30 minutes a day. With this workflow, you send the same message you were going to send anyway (maybe 1 minute), the agent processes it, and the event gets created in Google Calendar without you jumping apps. That’s about 2.5 hours back each week, plus fewer “Wait, did we mean Thursday?” corrections.
What You’ll Need
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- Telegram to receive the scheduling messages
- Google Calendar to create events in your calendar
- OpenAI API key (get it from the OpenAI dashboard)
Skill level: Beginner. You’ll connect credentials and adjust a couple of scheduling preferences (like default duration and time zone).
Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).
How It Works
A chat message triggers everything. When a new message hits your chat interface (from Telegram, or any connected chat source), n8n picks it up instantly and passes the text into the scheduling agent.
The agent interprets the message like a scheduling assistant. It pulls out the who/what/when, resolves relative dates into ISO timestamps, and fills required event fields. If something critical is missing (like the day), it asks one clarifying question instead of creating a bad event.
OpenAI powers the understanding and slot-filling. The workflow uses an OpenAI chat model (gpt-4o-mini by default) so “Lunch with John tomorrow at 12:30” becomes clean, structured event data you can trust.
Google Calendar receives the final event. Once the details are complete, the Google Calendar tool node creates the event in the calendar you choose. There’s also a chat reply node you can enable to send a confirmation back to Telegram.
You can easily modify the default meeting duration to match your calendar norms based on your needs. See the full implementation guide below for customization options.
Step-by-Step Implementation Guide
Step 1: Configure the Chat Trigger
Set up the workflow entry point so users can initiate scheduling via chat.
- Add the Incoming Chat Trigger node as your trigger.
- Set Public to
true. - Set Initial Messages to
Hey bestieeeee, what can I schedule for you?. - Keep Response Mode set to
responseNodesto allow downstream response handling.
Step 2: Connect Google Calendar
Configure the calendar tool that the agent will call to create events.
- Open Calendar Event Creator and choose the target Calendar in the selector.
- Set Start to
={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start', ``, 'string') }}. - Set End to
={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End', ``, 'string') }}. - Set Additional Fields → Summary to
={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Summary', ``, 'string') }}. - Set Use Default Reminders to
={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Use_Default_Reminders', ``, 'boolean') }}. - Credential Required: Connect your googleCalendarOAuth2Api credentials.
Step 3: Set Up the Scheduling Agent
Configure the AI agent and attach its language model, memory, and tool connections.
- Open Scheduling Agent Core and confirm the System Message includes the ISO time expression
{{ $now.toISO() }}and the timezoneAsia/Manila. - Connect OpenAI Dialogue Model to the agent as the ai_languageModel.
- In OpenAI Dialogue Model, select the model
gpt-4o-mini. - Credential Required: Connect your openAiApi credentials in OpenAI Dialogue Model.
- Connect Conversation Memory Buffer to the agent as the ai_memory, and set Context Window Length to
10. - Connect Calendar Event Creator to the agent as the ai_tool.
Credential Required: Add credentials to the parent nodes, not the AI sub-nodes. For example, OpenAI Dialogue Model provides the language model for Scheduling Agent Core, and Calendar Event Creator provides the tool connection.
Step 4: Configure the Chat Response
Ensure the workflow returns a user-facing response after the agent runs.
- Open Chat Reply Sender and set Message to
Your event has been created!. - Verify the execution flow connects Scheduling Agent Core → Chat Reply Sender.
- If you want responses sent to users, ensure Chat Reply Sender is enabled (it is currently disabled in the workflow).
⚠️ Common Pitfall: If Chat Reply Sender remains disabled, the workflow will create events but the user won’t receive a confirmation message.
Step 5: Test and Activate Your Workflow
Run a manual test to confirm event creation and chat responses before enabling it in production.
- Click Execute Workflow and send a test chat message like “Schedule lunch with John tomorrow at 1pm.”
- Confirm that Scheduling Agent Core calls Calendar Event Creator with populated
Start,End, andSummaryvalues. - Verify the event appears in the selected Google Calendar and that Chat Reply Sender returns the confirmation message.
- Toggle the workflow to Active to begin handling live chat scheduling.
Common Gotchas
- Google Calendar OAuth credentials can expire or lack calendar-write permissions. If things break, check n8n’s Credentials page and your Google Cloud OAuth consent settings first.
- If your flow relies on the memory buffer, long conversations can cause odd carryover (“use the same time as last time”). Clear or reduce the memory window if bookings feel sticky.
- OpenAI prompts that are too generic will create bland titles and inconsistent durations. Add your defaults early (time zone, standard meeting length, naming format) or you’ll be cleaning events later.
Frequently Asked Questions
About 20–40 minutes once you have your credentials ready.
No. You’ll mostly connect accounts and tweak a few defaults like time zone and meeting length.
Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in OpenAI API usage, which is usually pennies per day at low volume.
Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.
Yes, and it’s one of the best upgrades. You can adjust the Scheduling Agent Core instructions to ask for an email when it detects “with John” but no address, then map that into the Calendar Event Creator attendees field. Common customizations include defaulting all meetings to 30 minutes, forcing a specific time zone, and adding a confirmation message via the Chat Reply Sender node.
Usually it’s expired or mis-scoped OAuth credentials. Reconnect Google Calendar in n8n and confirm the credential has permission to create events on the specific calendar you’re targeting. If it still fails, check that you didn’t switch Google accounts, and watch for rate limits if you suddenly start booking lots of events in a short burst.
A lot for normal scheduling volume. On n8n Cloud, your limit is mainly your monthly execution allowance, and each booking typically counts as one execution. If you self-host, you’re mostly limited by your server size and Google/OpenAI rate limits, so it can scale comfortably as long as you’re not trying to book thousands of events per hour.
Often, yes, because the “smart” part here isn’t the integration, it’s the logic. n8n makes it easier to control how the agent asks follow-up questions, store conversation context with a memory buffer, and route different message types using switches and conditions without paying extra for every branch. You can also self-host for unlimited executions, which matters if scheduling becomes a core workflow. Zapier or Make can still work if you want something very simple, but they get awkward fast when you want conversational back-and-forth. Talk to an automation expert if you want a quick recommendation for your exact setup.
Once this is running, booking a meeting becomes as casual as sending a message. Your calendar updates itself, and you stop paying the “tiny admin tax” every single day.
Need Help Setting This Up?
Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.