Every 15 minutes
Book a kickoff meeting when a client starts onboarding
When a client's status changes to Onboarding in Airtable, a kickoff meeting is booked with them and the link is saved on their record.
- Runs
- Every 15 minutes
- Apps
- Airtable, Google Calendar
- AI
- Not needed
- Access
- Airtable read/write; calendar.events
Send this to your assistant
Create a ClickRuntime automation: when an Airtable client's status changes to 'Onboarding', create a kickoff event in Google Calendar inviting them, and store the event link.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A marketing agency tracks new clients in Airtable. When a deal closes, someone moves the client to Onboarding, and then someone else is meant to book the kickoff call. Sometimes that happens the same day; sometimes the client waits a week and starts to wonder what they signed up for.
This automation books the kickoff the moment the status changes, so every new client gets an invite straight away and the first week of the relationship starts on time.
What you get out of it
A strong first impression
A kickoff invite arriving right after the contract is signed shows the client you are organised and ready to start.
No handover gaps
Moving the status in Airtable is all it takes. No one has to remember to tell someone else to book the call.
The link lives with the client record
The meeting link is saved in Airtable, so anyone on the account can find it without searching calendars.
The same start for every client
Each new client gets the same kickoff, with the same agenda, so nothing is missed for the busier accounts.
How it works
What happens, step by step
Every 15 minutes ClickRuntime checks your Airtable clients table for clients marked Onboarding.
It skips any client that already has a kickoff meeting linked.
It creates a kickoff meeting in your Google Calendar and invites the client contact.
It saves the meeting link back on the client's Airtable record.
Before it runs live
- Connect Airtable
- Connect Google Calendar
What you get
Build your own
Need it to work differently?
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 Slack
- Combine it with other Airtable and Google Calendar steps into one automation
Under the hood
The code that runs this automation
from google.oauth2.credentials import Credentials
from googleapiclient.discovery import build
from datetime import date, datetime, time, timedelta
from clickruntime import on_trigger, credentials, http, report_fetched
TABLE = "https://api.airtable.com/v0/your-base-id/Clients"
@on_trigger
def run(event):
h = {"Authorization": f"Bearer {credentials.secret('AIRTABLE_API_KEY')}"}
recs = http.get(TABLE, headers=h, params={"filterByFormula": "AND({Status}='Onboarding',{Kickoff link}='')"}).json()["records"]
report_fetched(len(recs))
if not recs:
return {"new": 0}
cal = build("calendar", "v3", credentials=Credentials(credentials.connection("google", "work")), cache_discovery=False)
day = date.today() + timedelta(days=1 if date.today().weekday() < 4 else 7 - date.today().weekday())
start = datetime.combine(day, time(10, 0))
for r in recs:
f = r["fields"]
ev = cal.events().insert(calendarId="primary", sendUpdates="all", body={
"summary": f"Kickoff: {f['Name']}", "attendees": [{"email": f["Contact email"]}],
"start": {"dateTime": start.isoformat(), "timeZone": "Europe/London"},
"end": {"dateTime": (start + timedelta(hours=1)).isoformat(), "timeZone": "Europe/London"}}).execute()
http.patch(f"{TABLE}/{r['id']}", headers=h, json={"fields": {"Kickoff link": ev["htmlLink"]}})
return {"booked": len(recs)}FAQ
Common questions
When is the kickoff scheduled?
Who is invited?
What if a client is moved back to Onboarding later?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Book interviews for candidates you shortlist in Airtable
When you mark a candidate as Shortlisted in Airtable, the next free 30-minute slot is booked on your calendar and the candidate is invited.
See how it worksBook appointments into your calendar and log clients in Airtable
Each booking request is placed in a free slot in your calendar and the client is added to your Airtable CRM.
See how it worksCreate calendar reminders for upcoming Airtable due dates
Purchase orders due in the next week get a reminder in your Google Calendar, without duplicates.
See how it worksKeep exploring
Set up “Book a kickoff meeting when a client starts onboarding” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.