🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

Telegram + Google Sheets: bookings confirmed for you

Lisa Granqvist Partner Workflow Automation Expert

Booking requests come in at the worst times. You reply, ask for details, wait, then realize the slot is already gone (or you wrote it down in the wrong place).

This Telegram booking automation hits clinic admins hardest, but practice owners and agencies building chat-based intake feel it too. You get confirmed appointments written into Google Sheets, with far less back-and-forth.

This workflow turns Telegram text and voice notes into structured booking details, checks availability, suggests alternatives when needed, and sends a clear confirmation. You’ll see how it works, what you need, and what to watch out for.

How This Automation Works

The full n8n workflow, from trigger to final output:

n8n Workflow Template: Telegram + Google Sheets: bookings confirmed for you

The Problem: Booking Requests Create Hidden Chaos

Appointments sound simple until you run them through chat. People send half the details (“Tomorrow morning?”), they change their mind mid-thread, or they send a voice note while you’re trying to triage ten other messages. Then you still have to translate that conversation into a schedule ledger, usually a Google Sheet. Miss one detail and you get a double booking. Miss one message and a patient shows up to the wrong doctor. The worst part is the mental load: you keep holding unfinished threads in your head because you don’t trust the process.

It adds up fast. Here’s where it breaks down in real life.

  • You spend about 10 minutes per request just extracting the basics (doctor, date, time).
  • Voice notes slow everything down because you can’t search them or copy details.
  • Availability checks get skipped when you’re busy, so conflicts sneak in.
  • Confirmations get inconsistent, which creates more “Wait, what time was it?” follow-ups.

The Solution: Telegram Messages Become Sheet-Ready Appointments

This n8n workflow listens for new Telegram messages and routes them based on whether the user sent text or a voice note. Voice notes are automatically retrieved and transcribed, so everything becomes plain text the AI can understand. From there, an AI agent interprets what the person is asking for, pulls doctor details from a Google Sheets directory, and checks the correct schedule sheet for that doctor. If the time is already taken, the workflow replies in Telegram with alternative slots. If it is available, it confirms the details with the user and then appends the booking to the right Google Sheet. Finally, the patient gets a clean confirmation message that summarizes the doctor, date, and time.

The workflow starts with a Telegram trigger and a “typing…” signal so the chat feels responsive. Next, it normalizes the input (text or transcribed audio) and hands it to the Care Assistant Agent. After the agent checks the directory and the doctor’s ledger sheet, it either proposes alternatives or records the confirmed appointment and replies with the final summary.

What You Get: Automation vs. Results

Example: What This Looks Like

Say your clinic books about 15 appointments a day through Telegram. Manually, you might spend 10 minutes confirming details, 5 minutes checking the sheet, and another 5 minutes logging and sending a confirmation, which is roughly 20 minutes per request. That’s about 5 hours a day of admin time. With this workflow, the user sends a text or voice note (under a minute), AI handles the interpretation and sheet checks, and you mainly step in only when an edge case needs a human. In practice, many teams cut those 5 hours down to about 1 hour of oversight.

What You’ll Need

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Telegram to receive booking requests in chat
  • Google Sheets for doctor directory and schedules
  • Google Gemini API access (enable it in Google AI Studio)

Skill level: Intermediate. You’ll connect accounts, map a few fields, and test with real messages (text and voice).

Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).

How It Works

Telegram message triggers the workflow. A new chat message (text or voice) hits the Telegram Intake Trigger, and the workflow immediately sends a typing indicator so the user knows something is happening.

Voice and text get normalized. A Switch node routes by message type. Text goes straight into a mapped “message text” field, while voice notes are retrieved from Telegram, transcribed, then mapped into the same format.

The AI agent turns intent into booking details. The Care Assistant Agent uses the chat model plus short-term session memory to keep context, so a user can say “Actually make it Friday” without starting from scratch. It pulls from the Doctor Directory Sheet and then targets the right doctor schedule sheet (in this workflow, examples include separate sheets for specific doctors).

Confirmation and logging happen together. If the slot is available and the user confirms, the workflow appends the booking row into the correct Google Sheet and sends a final Telegram summary with doctor, date, and time.

You can easily modify the doctor directory and schedule layout to match how your team already tracks bookings. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Telegram Trigger

Set up Telegram ingestion so new messages start the workflow and send a typing indicator in parallel.

  1. Add and configure Telegram Intake Trigger with updates set to message.
  2. Credential Required: Connect your telegramApi credentials in Telegram Intake Trigger.
  3. Confirm the workflow connections so Telegram Intake Trigger outputs to both Route Message Type and Telegram Typing Signal in parallel.
  4. In Telegram Typing Signal, set Operation to sendChatAction and Chat ID to {{ $json.message.chat.id }}.
  5. Credential Required: Connect your telegramApi credentials in Telegram Typing Signal.
Tip: The parallel branch keeps the user informed while processing. If you don’t see typing updates, verify the Telegram bot is allowed to send chat actions.

Step 2: Connect Google Sheets

Attach your appointment database and doctor-specific sheets used by the AI tools for lookup and booking.

  1. In Doctor Directory Sheet, set Document ID to Doctor_Appointment_DB and Sheet Name to Doctor_Info (replace [YOUR_ID] values with your actual IDs).
  2. In Sheet: Karan Singh and Sheet: Arjun Mehta, set Document ID to Doctor_Appointment_DB and the respective Sheet Name to Dr. Karan Singh and Dr. Arjun Mehta.
  3. In Append Karan Sheet and Append Arjun Sheet, set Operation to append and map columns using the AI expressions: {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Booked_Date', ``, 'string') }}, {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Booked_Time', ``, 'string') }}, {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Doctor_Name', ``, 'string') }}, {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Patient_Name', ``, 'string') }}.
  4. Credential Required: Connect your googleSheetsOAuth2Api credentials to all Google Sheets tool nodes (5 total): Doctor Directory Sheet, Sheet: Karan Singh, Sheet: Arjun Mehta, Append Karan Sheet, and Append Arjun Sheet.
⚠️ Common Pitfall: The Google Sheets tools are AI sub-nodes. Ensure credentials are added on the parent AI setup (Care Assistant Agent flow) and each tool node has access to the same Google Sheets account.

Step 3: Route and Normalize Incoming Messages

Route text vs. voice messages and map the message content into a consistent text field for AI processing.

  1. In Route Message Type, confirm two outputs exist: Text checks {{ $json.message.text }} exists, and Voice checks {{ $json.message.voice }} exists.
  2. From the Text output, send items to Map Message Text and set text to {{ $json.message.text }}.
  3. From the Voice output, send items to Retrieve Voice File with Resource set to file and File ID set to {{ $json.message.voice.file_id }}.
  4. Credential Required: Connect your telegramApi credentials in Retrieve Voice File.
  5. In Audio Transcription, set Resource to audio and Input Type to binary. Then map the transcription in Map Transcript Text with text set to {{ $json.candidates[0].content.parts[0].text }}.
  6. Credential Required: Connect your googlePalmApi credentials in Audio Transcription.

Step 4: Set Up the AI Assistant and Memory

Configure the AI logic, memory, and connected tools that handle doctor lookup and appointment booking.

  1. In Care Assistant Agent, set Text to {{ $json.text }} and keep Prompt Type as define.
  2. Ensure Gemini Chat Engine is connected as the language model for Care Assistant Agent. Credential Required: Connect your googlePalmApi credentials in Gemini Chat Engine.
  3. Connect Session Memory Buffer to the agent’s memory input and set Session Key to {{ $('Telegram Intake Trigger').item.json.message.chat.id }}.
  4. Attach the AI tools to Care Assistant Agent: Doctor Directory Sheet, Sheet: Karan Singh, Sheet: Arjun Mehta, Append Karan Sheet, and Append Arjun Sheet.
⚠️ Common Pitfall: AI tool and memory nodes are sub-nodes. Add credentials to the parent tools (e.g., Gemini Chat Engine and the Google Sheets tool nodes), not the sub-node configuration panel.

Step 5: Configure the Telegram Reply Output

Send the AI response back to the user in Telegram once the agent finishes processing.

  1. Connect Care Assistant Agent to Telegram Reply Dispatch.
  2. In Telegram Reply Dispatch, set Text to {{ $json.output }} and Chat ID to {{ $('Telegram Intake Trigger').item.json.message.chat.id }}.
  3. Credential Required: Connect your telegramApi credentials in Telegram Reply Dispatch.

Step 6: Test and Activate Your Workflow

Run a full test using both text and voice messages, then activate the workflow for production use.

  1. Click Execute Workflow and send a text message to the bot to verify the Route Message TypeMap Message TextCare Assistant Agent path.
  2. Send a voice message and confirm the Retrieve Voice FileAudio TranscriptionMap Transcript TextCare Assistant Agent path completes successfully.
  3. Verify a successful run returns a message from Telegram Reply Dispatch and (for booking flows) appends a row using the relevant doctor append tool.
  4. Once validated, toggle the workflow to Active so the Telegram Intake Trigger listens continuously.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Common Gotchas

  • Google Sheets credentials can expire or need specific permissions. If things break, check the n8n Credentials panel and the sheet’s sharing settings first.
  • If you’re processing voice notes, transcription times vary. If your downstream nodes run before text exists, increase the wait (or add a simple retry) so the agent doesn’t respond with missing details.
  • Default AI prompts are honestly too generic for scheduling. Add your slot rules and confirmation wording early, or you will be cleaning up vague replies every day.

Frequently Asked Questions

How long does it take to set up this Telegram booking automation automation?

About 45 minutes if your Sheets are already organized.

Do I need coding skills to automate Telegram booking automation?

No. You’ll mostly connect accounts and adjust a few mappings. The only “code-like” part is optional tweaking if your sheet format is unusual.

Is n8n free to use for this Telegram booking automation workflow?

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 Google Gemini usage, which is usually low for simple scheduling chats.

Where can I host n8n to run this automation?

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.

Can I customize this Telegram booking automation automation for multiple doctors and new schedules?

Yes, and you probably should. You can add doctors by extending the Doctor Directory Sheet and routing to the correct schedule sheet (in this workflow, separate Google Sheets tools target specific doctors, so you would duplicate that pattern). Common tweaks include changing your time-slot rules, adding required fields like phone number, and modifying the confirmation message to match your clinic’s tone.

Why is my Telegram connection failing in this workflow?

Usually it’s a bot token issue or the bot isn’t allowed to read messages in the chat you’re testing. Regenerate the token in BotFather, update it in n8n, and confirm your privacy settings if you’re using groups. Also check that the Telegram Trigger is pointed at the right bot and that you’re not hitting rate limits during bulk tests.

How many appointments can this Telegram booking automation automation handle?

On n8n Cloud Starter, you can handle a typical small clinic’s daily volume comfortably, and upgrading is straightforward if demand spikes. If you self-host, there’s no execution cap, so capacity mainly depends on your server and how heavy your transcription usage is. Practically, most setups can process several requests per minute without issues. If you expect hundreds per day, add logging and a simple retry path for the AI/transcription steps.

Is this Telegram booking automation automation better than using Zapier or Make?

Often, yes, because this flow relies on branching logic (text vs. voice), memory, and an agent-style conversation that’s awkward in basic “trigger-action” tools. n8n also gives you more control over how you check availability and where you write records, without paying per tiny step. Zapier or Make can still work if you only need a simple “message in → row in Sheets” flow with no real confirmation loop. The deciding factor is conversation quality: if you need back-and-forth and alternative slot suggestions, n8n is a better fit. Talk to an automation expert if you want help choosing.

Once this is running, booking requests stop feeling like a juggling act. The workflow handles the repetitive parts so you can focus on patients, not message threads.

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.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal