Skip to content

The moment it happens

Book meeting requests into Google Calendar and tell Slack

When someone requests a meeting through your form, the slot is booked in your calendar with a video link and #bookings hears about it.

Runs
The moment it happens
Apps
Google Calendar, Slack
AI
Not needed
Access
Calendar read+write; Slack chat:write

Send this to your assistant

Create a ClickRuntime automation: when my meeting request form is submitted, book the slot in Google Calendar and post it in #bookings.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

A small consultancy takes discovery calls through a form on its website. Someone on the team checks the form, looks at the calendar, creates the event and lets everyone know. On busy days requests sit for hours, and twice a slot has been booked that was already taken.

This automation books each request the moment it comes in, checks the slot is actually free first, and tells the team in Slack, so prospects get a confirmed time straight away.

What you get out of it

  • Prospects get a confirmed slot immediately

    A calendar invite with a video link arrives within a minute of the request, while the prospect is still interested.

  • No double bookings

    The slot is checked against your calendar before anything is booked, so two meetings never land on the same time.

  • The whole team knows what is coming

    A post in #bookings lets colleagues see new calls without opening anyone's calendar.

  • No one has to watch the form

    Requests are handled the same way at any hour, including evenings and weekends.

How it works

What happens, step by step

  1. Your meeting request form sends each submission to ClickRuntime.

  2. ClickRuntime checks your Google Calendar to make sure the requested time is free.

  3. If it is free, it books the meeting with a Google Meet link and invites the person.

  4. It posts the booking in your #bookings Slack channel, or a note that the slot was busy.

Before it runs live

  • Connect Google Calendar
  • Connect Slack, then invite the app to the channel (type /invite @ClickRuntime there)
  • Paste your automation's link into the other app's webhook settings

What you get

RunsThe moment it happens
Book meeting requests into Google Calendar and tell Slackjust nowSucceeded
Slack · #bookings📅 Booked: Morgan from Northwind Hotels on Thu 6 Nov 14:00

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • Your own rules

    Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.

  • Any number of apps

    One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.

  • AI where it helps

    Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.

  • On a schedule or on each event

    Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.

Changes you can ask for

  • Act only on the items that match your own rules, and skip the rest
  • Add an AI step, for example to summarize, sort or draft a reply
  • Add another app, for example also send it to Google Sheets
  • Combine it with other Google Calendar and Slack steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
booking_requests_to_calendar_with_slack_notice.pyexample
from google.oauth2.credentials import Credentials
from googleapiclient.discovery import build
from datetime import datetime, timedelta
from clickruntime import on_event, credentials, notify

@on_event
def handle(event):
    r = event.json or {}
    start = datetime.fromisoformat(r["start"])
    end = start + timedelta(minutes=int(r.get("minutes", 30)))
    cal = build("calendar", "v3", credentials=Credentials(credentials.connection("google", "work")), cache_discovery=False)
    busy = cal.freebusy().query(body={"timeMin": start.isoformat(), "timeMax": end.isoformat(),
                                      "items": [{"id": "primary"}]}).execute()["calendars"]["primary"]["busy"]
    if busy:
        notify.slack(f"⚠️ {r['name']} asked for {start:%a %d %b %H:%M}, but that slot is taken.", channel="#bookings")
        return {"booked": False}
    cal.events().insert(calendarId="primary", conferenceDataVersion=1, sendUpdates="all", body={
        "summary": f"Call with {r['name']}", "description": r.get("message", ""),
        "start": {"dateTime": start.isoformat()}, "end": {"dateTime": end.isoformat()},
        "attendees": [{"email": r["email"]}],
        "conferenceData": {"createRequest": {"requestId": event.event_id}}}).execute()
    notify.slack(f"📅 Booked: {r['name']} ({r.get('company', '')}) on {start:%a %d %b %H:%M}", channel="#bookings")
    return {"booked": True}

FAQ

Common questions

What if the requested time is already taken?
Nothing is booked, and the Slack post says the slot was busy so someone can offer the person another time.
Does the person get a calendar invite?
Yes. They are added as a guest, so they receive a standard invite with the time and a Google Meet link.
Which calendar are meetings booked into?
The calendar you choose when setting it up, such as your own or a shared team calendar.
What permissions does it need?
Calendar read+write; Slack chat:write. Nothing else in your accounts is used.
Does it need AI?
No. It runs without AI, so it doesn't use your plan's AI allowance.
How many runs does it use?
One run for each event the app sends.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Book meeting requests into Google Calendar and tell Slack” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.