Connect Google Sheets to GitHub
When something happens in Google Sheets, Notis takes the next step in GitHub. 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 GitHub
Label GitHub issues from a triage sheet
Turn each approved triage row into the right GitHub issue labels without reopening two tools.
Assign GitHub issues when ownership changes in Sheets
Update an issue's assignees when its owner is changed in your planning sheet.
Approve trusted fork CI runs from a review queue
Approve a fork pull request workflow when it enters a vetted Google Sheets queue.
Grant repository access from an onboarding sheet
Add a GitHub collaborator when a reviewed contractor or advisor row is added.
Apply team repository permissions from an access register
Update a GitHub team's repository permission when its approved access row changes.
Add people to GitHub teams from a roster sheet
Turn each approved roster entry into a GitHub team membership or role update.
Assign GitHub organization roles from an approval row
Apply a predefined organization role after the corresponding access request is approved in Sheets.
Cancel stale GitHub Actions runs from an ops query
Cancel queued or in-progress workflow runs when they appear in a reviewed stale-run query.
Clear GitHub Actions caches from a filtered request sheet
Delete caches matching an approved key when a filtered maintenance range changes.
Supported Triggers and Actions
Notis builds workflows that link Google Sheets to GitHub. A trigger fires from one place; an action lands in another.
Google Sheets triggers
GitHub actions
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.
Accept a repository invitation
Accepts a pending repository invitation that has been issued to the authenticated user.
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.
List repositories starred by the authenticated user
Deprecated: lists repositories starred by the authenticated user, including star creation timestamps; use 'list repositories starred by the authenticated user' instead.
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.
List stargazers
Deprecated: lists users who have starred a repository; use `list stargazers` instead.
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.
Star a repository for the authenticated user
Deprecated: stars a repository for the authenticated user; use `star a repository for the authenticated user` instead.
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.
Add email for auth user
Adds one or more email addresses (which will be initially unverified) to the authenticated user's github account; use this to associate new emails, noting an email verified for another account will error, while an existing email for the current user is accepted.
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.
Add app access restrictions
Replaces github app access restrictions for an existing protected branch; requires a json array of app slugs in the request body, where apps must be installed and have 'contents' write permissions.
New Rows in Google Sheet
Simple polling trigger that monitors Google Sheets for new rows. Detects when new rows are added and returns the complete row data. Perfect for triggering any workflow based on new sheet entries.
Add a repository collaborator
Adds a github user as a repository collaborator, or updates their permission if already a collaborator; `permission` applies to organization-owned repositories (personal ones default to 'push' and ignore this field), and an invitation may be created or permissions updated directly.
New Sheet Added in Google Spreadsheet
Polling trigger that detects when a new sheet is added to a Google Spreadsheet.
Add a repository to an app installation
Adds a repository to a github app installation, granting the app access; requires authenticated user to have admin rights for the repository and access to the installation.
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 trough 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 GitHub
Connect any two apps with Notis in the middle.
Not just Google Sheets and GitHub. Any 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 GitHub.