Sapilon becomes publicly available on 15 November 2026: 34 days to go. The core goes open source the same day →

Google Sheets integration

In short

Read ranges and append or update rows in a spreadsheet. Connect it on the Integrations page; your app then calls Google Sheets through Sapilon without ever holding a Google credential.

Lets your app read cell ranges and append or update rows in spreadsheets the connected account can open.

Connecting

On the Integrations page choose Connect on Google Sheets, sign in to Google and allow access. Under Advanced you can use your own Google OAuth app instead of Sapilon’s.

  • Your app can read and edit every spreadsheet this account can open.

What your app can do

Only these requests are available; anything else is refused.

  • GET /spreadsheets/*
  • GET|PUT|POST /spreadsheets/*/values/*

How the agent uses it

Use integrations.request('google-sheets', …); paths are relative to https://sheets.googleapis.com/v4.

  • GET /spreadsheets/{id} — sheet titles and metadata. Example: { method: 'GET', path: '/spreadsheets/1AbC', query: { fields: 'sheets.properties.title' } }.
  • GET /spreadsheets/{id}/values/{range} — read a range. Example: { method: 'GET', path: '/spreadsheets/1AbC/values/Sheet1!A1:D20' }.
  • PUT /spreadsheets/{id}/values/{range} — overwrite a range; needs query: { valueInputOption: 'USER_ENTERED' }. Example: { method: 'PUT', path: '/spreadsheets/1AbC/values/Sheet1!A2', query: { valueInputOption: 'USER_ENTERED' }, body: { values: [['a', 'b']] } }.
  • POST /spreadsheets/{id}/values/{range}:append — append rows. Example: { method: 'POST', path: '/spreadsheets/1AbC/values/Sheet1!A1:append', query: { valueInputOption: 'USER_ENTERED' }, body: { values: [['a', 'b']] } }.

More from Google: https://developers.google.com/sheets/api

Last updated .

Was this page helpful?