Connect Google Sheets to Cal
When something happens in Google Sheets, Notis takes the next step in Cal. Describe what you want in plain English, or start from one of the examples below.
When this happens · Trigger
Do this · Action
Ways Notis can move work from Google Sheets to Cal
Confirm approved bookings from Google Sheets
When a new sheet row records an approved Cal booking, have Notis confirm it using its booking UID.
Confirm a booking when its approval cell changes
Watch an approval cell range and confirm the corresponding Cal booking when its status changes to approved.
Decline rejected booking requests from a sheet
When a new row marks a pending Cal booking as rejected, decline it with the booking UID and an optional reason.
Cancel a Cal booking when its tracked row changes
Monitor a looked-up sheet row and cancel its Cal booking when the row records a cancellation request and booking UID.
Get a scheduled review of upcoming Cal bookings
On a recurring schedule, fetch Cal bookings for a chosen date window and send a run report where you can review it.
Check Cal availability when a scheduling request arrives
Start from an incoming HTTP request and ask Cal for free and busy availability for the specified calendar.
Supported Triggers and Actions
Notis builds workflows that link Google Sheets to Cal. A trigger fires from one place; an action lands in another.
Google Sheets triggers
Cal actions
Recurring trigger
Notis starts this workflow on a schedule, such as daily, weekly, or during business hours.
Add member to team
Adds a new member to a specified team within an organization by creating a team membership.
Webhook trigger
Notis starts this workflow when an external tool or custom backend sends an HTTP request.
Add organization attribute option
Adds a new option to an organization's attribute, requiring a display `value` and a `slug` unique for that attribute.
Aggregate Metric Changed
Triggers when an aggregate metric (SUM/COUNT/AVG/MIN/MAX) changes in a Google Sheets spreadsheet. This trigger monitors an aggregate calculation on a target column (optionally filtered by a search column/value) and fires when the calculated result changes.
Delete oauth client webhook
Permanently deletes a specific webhook subscription of an oauth client in the cal application, stopping its notifications.
Cell Range Values Changed
Triggers when values in a specified A1 range change in Google Sheets. This trigger monitors a specific cell or range of cells and fires when any values change.
Cancel booking via uid
Cancels an existing and active cal.com booking using its unique identifier (uid).
Conditional Format Rule Changed
Triggers when conditional formatting rules change in a Google Spreadsheet. Detects when rules are added, updated, or removed. Uses snapshot-based diffing to detect changes between polls.
Check calendar availability
Retrieves free/busy availability for a specified calendar to aid scheduling without revealing event details; requires an existing, accessible calendar, noting that data granularity can vary.
Data Validation Rule Changed
Triggers when data validation rules change (added/updated/removed) in a Google Spreadsheet. Uses snapshot-based diffing to detect changes between polls.
Check gcal synchronization status
Call this read-only action to verify the connection and synchronization status of a user's google calendar integration with cal.
Developer Metadata Changed
Triggers when developer metadata entries change (new/updated/removed) in a Google Spreadsheet. Uses snapshot-based diffing to detect changes between polls.
Check ics feed calendar endpoint
Checks an ics feed url (expected as a query parameter) to verify its validity, accessibility, and icalendar data integrity.
Filtered Range Values Changed
Polling trigger that monitors Google Sheets filtered ranges for value changes. Uses snapshot-based diffing to detect when values matching a data filter change. Emits the matched values when changes are detected.
Check Stripe status
Verifies if stripe is correctly connected to the cal scheduling system and functional for processing payments, reporting only on the integration's status.
Four ways to start an automation.
A trigger is the event that kicks a workflow off. Notis supports four kinds: an event in a connected app, an inbound webhook, a recurring schedule, and soon, your own database.
Integration triggers
Fire when something happens inside a connected app. New Notion page, Stripe charge, Linear issue: any of 1,000+ apps can start a workflow.
Webhook triggers
A unique URL per workflow. Anything that can send an HTTP POST can start an automation, including no-code tools that speak webhooks.
Recurring triggers
Cron-style schedules run a workflow on the clock. Daily standups, hourly syncs, business-hours-only digests: the workhorse of Notis.
Database triggers
Watch a row, query, or threshold in your own database and fire the moment the data changes. Row inserted, value crosses a limit, query starts matching.
Classic automation breaks. AI adapts.
Same triggers and actions, smarter middle. AI handles the fuzziness that breaks traditional Zapier-style workflows the moment a field gets renamed.
Describe it. Notis builds it.
Skip the visual builder. Tell Notis what you want, in plain English. It writes the workflow, you review and deploy.
You · in the Notis Builder
NEW“When a row gets added to the Q4 OKRs Notion database and the status is Blocked, send a Telegram message to the owner with a summary of what's blocking, and ping me if there's no reply within 24 hours.”
Notis built this automation:
Watch every run.
Notis Desktop is Mission Control for your AI automations. See every run, replay, edit, or rewind. Set approval gates so Notis pauses before destructive actions.
- Full run history with inputs, outputs and traces
- Replay any run with edited inputs
- Approval inbox, confirm via chat in one tap
- Audit logs for compliance teams
Automations
Inbox
Migrate background jobs to a durable queue You can cancel it through Stripe
3 daysNotis v3 release update This one’s v3: Notis Manager (desktop app with …
8 daysAdd multi-tenant RBAC User initiates a voice call
13 daysDraft pricing v (tiers, limits, overages) and sanity-check margins
2 weeksVerify analytics events for new features That’s a really interesting automat…
1 monthEverything in the box.
Whatever starts the workflow, the platform underneath is the same: a thinking brain, full visibility, and you in control.
AI in the middle
Every step can include an LLM call: summarise, classify, extract, rewrite.
Full observability
Every run, every step, every input, all replay-able from Mission Control.
Human in the loop
Pause for approval. Notis pings you in chat with one-tap approve.
Self-healing
When an API changes shape, Notis adapts the parser. Less midnight fire-fighting.
More ways to connect Google Sheets and Cal
Connect any two apps with Notis in the middle.
Google Sheets and Cal, or any other combination from 1,000+ integrations.
When this happens · Trigger
Do this · Action
Save your first hour today.
7-day trial of any paid plan, with 20$ of usage included.
No card. Works with personal or business Cal.