Skip to main content

Documentation Index

Fetch the complete documentation index at: https://www.integrate.io/docs/llms.txt

Use this file to discover all available pages before exploring further.

Integrate.io ETL can access your Google Sheets data using a Google Cloud service account. This method is recommended when you want to avoid user-based OAuth, share access across a team, or connect spreadsheets owned by a workspace rather than an individual user. Use this guide to:
  1. Create a service account in Google Cloud and generate a JSON key.
  2. Enable the Google Sheets API for your project.
  3. Share the spreadsheets you want to read from or write to with the service account.
  4. Create the Google Sheets (Service Account) connection in Integrate.io ETL.
For the user-based OAuth version of this connector, see ETL: Connecting to Google Sheets.

Prerequisites

  • A Google Cloud project where you can create service accounts.
  • Owner or Editor access on the spreadsheets you want to share with the service account.
  • Permission to create connections in your Integrate.io account.

Step 1: Create a service account and JSON key

1
Access your Google Cloud Console and select the project you want to use.
2
On the sidebar, choose IAM & Admin → Service Accounts → Create Service Account.
3
Fill in the Service account name (for example, integrateio-google-sheets) and click Done. Roles are not required at the project level for Google Sheets; access is granted per spreadsheet in Step 3.
4
From the Service Accounts list, click the service account you just created and open the Keys tab.
5
Click Add Key → Create new key, choose JSON, and click Create. A .json key file is downloaded to your machine. Keep this file secure. You will upload it to Integrate.io in Step 4.
6
Copy the service account’s email address (it ends in @<project-id>.iam.gserviceaccount.com). You will need it in Step 3.

Step 2: Enable the Google Sheets API

1
In the Google Cloud Console, go to APIs & Services → Library.
2
Search for Google Sheets API and click Enable. If you plan to let Integrate.io list spreadsheets by name, also enable the Google Drive API.

Step 3: Share your spreadsheets with the service account

The service account can only access spreadsheets that have been explicitly shared with it.
1
Open the Google Sheets spreadsheet you want to connect to.
2
Click Share in the top-right corner.
3
Paste the service account’s email address into the sharing field.
4
Choose the access level:
  • Viewer, for source components that only read data.
  • Editor, for destination components that write data.
5
Uncheck Notify people and click Share.
Repeat this step for every spreadsheet that should be available to Integrate.io.

Step 4: Create the Google Sheets (Service Account) connection in Integrate.io ETL

1
Click the Connections icon (lightning bolt) in the top-left menu.
2
Click New connection.
3
Select Google Sheets (Service Account).
4
Name the connection and upload the JSON key file you downloaded in Step 1. The service account email is filled in automatically from the key file.
5
Click Test Connection to verify the credentials.
6
Click Create connection.

Modifying or deleting the connection

1
Click the Connections icon (lightning bolt) in the top-left menu.
2
Click a connection to update its name or upload a new JSON key (for example, after rotating the key in Google Cloud).
3
To delete the connection, click the three vertical dots on the far right of the connection listing and select Delete connection. Deleting the connection in Integrate.io does not remove the service account or its key in Google Cloud. Delete the key from the service account’s Keys tab in Google Cloud if you no longer need it.

Troubleshooting

  • Spreadsheet not listed in the component dropdown. Confirm the spreadsheet is shared with the service account email from Step 1 and that the Google Sheets API (and Google Drive API, if used) is enabled on the project. Click Refresh in the component to reload the list.
  • 403: The caller does not have permission. The spreadsheet has not been shared with the service account, or the shared access level is lower than required (Editor is needed for write operations).
  • API has not been used in project ... before or it is disabled. Enable the Google Sheets API (and Google Drive API, if applicable) in the same project that owns the service account.

Google Sheets Source

Google Sheets Destination

Last modified on May 12, 2026