Productivity

Google Drive

A Google Drive integration creates Drive push-notification channels for specific Google Sheets and Docs files, then turns Drive callbacks into Mobius source events.

Use Google Drive when a loop should start after a shared spreadsheet or document changes. Drive callbacks tell Mobius that the file changed; the event does not contain cell-level or paragraph-level diffs.

For the shared Google credential model, see Google integrations.

Capability map

CapabilityValue
Provider IDgoogle_drive
Auth kindoauth2_user
Connect flowGoogle OAuth user grant with file IDs
ActionsNo
EventsYes
Webhook deliveryYes
Event samplesNo
Live statusYes

Connect Google Drive

SurfaceSupport
AppOpen Govern > Integrations, choose Google Drive, enter Google Sheets or Docs file IDs, then continue through Google OAuth.
CLIThe mobius CLI does not connect Google Drive integrations yet. Use the app or API.
APICall POST /v1/projects/{project}/integrations/providers/google_drive/connect with file_ids or files, then redirect the user to the returned Google OAuth URL.

Google expires Drive channels, so Mobius stores channel state and renews watches before expiration. The webhook endpoint must be reachable over public HTTPS for Google to deliver callbacks.

Permissions

Mobius requests Drive metadata and drive.file access by default. drive.file keeps access scoped to files the connected user opens with or shares with the app, while Drive metadata lets Mobius verify file names, MIME types, and watch state.

Use the Google account that can access every Sheet or Doc you want to watch. Mobius verifies each file before creating the watch.

Events

google_drive.sheet.updated
google_drive.document.updated

Each event payload includes the Drive file ID, file name, MIME type, Drive resource state, changed facets from X-Goog-Changed, and the channel metadata used for deduplication.

Drive sends an initial sync notification when a channel is created. Mobius acknowledges that callback without emitting a source event, so loops only start on later file updates.

API shape

{
  "file_ids": ["<google-sheet-or-doc-file-id>"]
}

Use the expanded form when you want to document the expected file kind:

{
  "files": [
    { "file_id": "<spreadsheet-id>", "kind": "sheet" },
    { "file_id": "<document-id>", "kind": "document" }
  ]
}

Mobius verifies the MIME type with Drive before creating the watch. If a file is not a native Google Sheet or Google Doc, the connect request fails before any loop can depend on it.

Troubleshooting

The file ID is rejected

Use the ID from a native Google Sheet or Google Doc URL. Uploaded Excel, Word, PDF, or binary files are not valid watch targets for this integration.

The first callback does not start a run

Drive sends an initial sync notification after Mobius creates a channel. Mobius records it without emitting a source event. Update the file after the watch is active to test the run trigger.

A spreadsheet changed but no cell values are in the event

Drive events say that the file changed. Read the exact values inside the run with Google Sheets.

Next