Read and write spreadsheet data from any Windmill script, flow or app.
Set up in 2 steps
Connect from the Resources page
Open Resources, click Add a resource/API and pick gsheets from the OAuth APIs list. Click Connect and sign in with the Google account that owns the spreadsheets, then name the resource and save it.
Run your first script
Fork any script below and point it at a sheet. The spreadsheet id is the long segment in its URL, between /d/ and /edit.
Scripts
Building blocks, if none of the projects above fit. Fork one, run it, or call it as a step inside your own flow.
Get Spreadsheet
Add Rows
Delete Worksheet
Clear All Values
Create Worksheet
Clear Row
Get Values in Range
List Worksheets
Copy Worksheet
Create Spreadsheet
Update Values
Clear Columns
Get Values
Resource type
The shape of the credential every script on this page expects.
gsheets
View raw schema →| Field | Type | Required | What it is |
|---|---|---|---|
| token | string | Yes | The OAuth token, refreshed if necessary |
Questions
Which spreadsheets can Windmill reach?
Every spreadsheet the connected account can open. The connection asks for the spreadsheets scope, which covers reading and writing — but nothing else in Drive.
Can I create the resource by hand instead of connecting?
Nothing stops you — the resource is a single token field. But Google's access tokens last about an hour, and only the OAuth flow returns the refresh token that renews them, which is why this page has no CLI lane.
There is no Connect button on my instance
Self-hosted instances need a Google OAuth client configured once by an admin before the tile appears.