Sync Drive activity to GitHub branch permissions

When your team structure changes in Google Drive (new members, role updates), Notis automatically adjusts who can push to protected branches in GitHub. Access stays current, deployments stay safe.

Trigger

Google Drive Changes

Triggers when changes are detected in a Google Drive.

GitHub logo

Action

Add or update team repository permissions

Sets or updates a team's permission level for a repository within an organization; the team must be a member of the organization.

Why this helps

Your team evolves in Google Drive—people join, roles shift—but GitHub branch permissions stay static. New members can't deploy, old members keep access. It's a security and productivity mess.

  • Branch permissions update automatically as your team evolves
  • Reduces access-control overhead
  • Keeps deployments protected and current
  • Prevents access mismatches between tools

Setup

Build it in a few focused steps.

  • 1Connect Google Drive and GitHub to Notis.
  • 2Tell Notis: "When team changes are detected in Drive, update branch access for the 'main' branch based on current team members."
  • 3Select your notification channel.
  • 4Make a team change in Drive (add/remove a member) and watch Notis sync permissions to GitHub.

Questions about this workflow

How does Notis know which team folder tracks team membership?

You point Notis to a Drive folder or spreadsheet where you maintain the team roster.

Does it override existing GitHub permissions?

Notis syncs permissions based on the Drive roster. You decide if it replaces or merges with existing access.

Can I set different access levels for different branches?

Yes. Notis can manage multiple branches with different permission rules.

When this happens · Trigger

Do this · Action

Supported Triggers and Actions

Notis builds workflows that link Google Drive to GitHub. A trigger fires from one place; an action lands in another.

Google Drive logo

Google Drive triggers

GitHub logo

GitHub actions

Comment Added (Docs/Sheets/Slides)

Triggers when a new comment is added to Google Docs, Sheets, or Slides.

TriggerPolling

Accept a repository invitation

Accepts a pending repository invitation that has been issued to the authenticated user.

ActionInstant

File Created

Triggers when a new file is created in Google Drive.

TriggerPolling

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.

ActionInstant

File Deleted or Trashed

Triggers when a file is moved to trash or permanently deleted in Drive.

TriggerPolling

List stargazers

Deprecated: lists users who have starred a repository; use `list stargazers` instead.

ActionInstant

File Shared (Permissions Added)

Triggers when new sharing permissions are granted to a file or folder. Uses Drive's `changes.list` endpoint with inline `permissions` in the `fields` mask so each change carries the file's current permission set provider-atomically. We diff that against `seen_permission_keys` to identify newly added grants. Drive page tokens are the primary cursor; if Drive rejects a stored token, the trigger raises `PollingTriggerError` without clearing state rather than silently re-baselining and dropping events. Limitation: truly ephemeral permissions (added and revoked between two polls without any other file modification in between) are not detected. Drive Activity API would catch those but requires an additional OAuth scope and a different payload contract.

TriggerPolling

Star a repository for the authenticated user

Deprecated: stars a repository for the authenticated user; use `star a repository for the authenticated user` instead.

ActionInstant

File Updated

Triggers when a file's metadata or content changes in Google Drive.

TriggerPolling

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.

ActionInstant

Google Drive Changes

Triggers when changes are detected in a Google Drive.

TriggerPolling

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.

ActionInstant

New File Matching Query

Triggers when a new Google Drive file matches a provided query. This is the legacy query-centric trigger: it preserves Drive API query config such as ``corpora`` / ``driveId`` aliases and emits the historical ``file_matching_query`` event type. ``FileCreatedTrigger`` covers the broader "new file" case and emits ``file_created``.

TriggerPolling

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.

ActionInstant

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.

ActionInstant

Connect any two apps with Notis in the middle.

Not just Google Drive and GitHub. Any combination from 985+ integrations.

When this happens · Trigger

Do this · Action

Save your first hour today.

7 days free trial with 20$ free usage included.
No card. Works with personal or business GitHub.