VOOZH about

URL: https://apify.com/accurate_pouch/google-sheets-rw

โ‡ฑ Google Sheets Reader & Writer ยท Apify


Pricing

$4.00 / 1,000 operations

Go to Apify Store

Google Sheets Reader & Writer

Read any Google Sheet to JSON or write rows to a sheet โ€” via Service Account auth. No OAuth blocking, no failed logins. Supports read, append, replace, modify, and backup modes. Includes safe replace, dry run, auto-create tab, and rate limit retry.

Pricing

$4.00 / 1,000 operations

Rating

0.0

(0)

Developer

๐Ÿ‘ Manchitt Sanan

Manchitt Sanan

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a month ago

Last modified

Share

Read any Google Sheet to structured JSON, or append rows from JSON to a sheet. No OAuth. No "This App Is Blocked" errors. Uses Google Service Account authentication โ€” set up once, works forever.


Why this exists

The most popular Google Sheets actor on Apify fails ~52% of the time because Google blocks its unverified OAuth login screen. The developer has confirmed this is unsolvable with OAuth.

This actor uses Service Account authentication โ€” the approach Google recommends for server-to-server access. No consent screens, no token expiry, no blocked apps.


Quick start

Reading a public sheet (no auth needed)

Set your sheet to File โ†’ Share โ†’ Anyone with the link โ†’ Viewer, then:

{
"spreadsheetId":"YOUR_SHEET_ID",
"mode":"read"
}

Reading a private sheet

{
"spreadsheetId":"YOUR_SHEET_ID",
"mode":"read",
"serviceAccountKey":"{ ... paste your service account JSON here ... }"
}

Appending rows

{
"spreadsheetId":"YOUR_SHEET_ID",
"mode":"append",
"serviceAccountKey":"{ ... paste your service account JSON here ... }",
"rows":[
{"name":"John Smith","email":"john@example.com","status":"active"},
{"name":"Jane Doe","email":"jane@example.com","status":"pending"}
]
}

How to find your Spreadsheet ID

From your Google Sheet URL:

https://docs.google.com/spreadsheets/d/1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgVE2upms/edit
โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘โ†‘
This is your spreadsheetId

Service Account setup (one-time, ~5 minutes)

Only needed for private sheets and append operations.

Step 1 โ€” Create a Google Cloud project

  1. Go to console.cloud.google.com
  2. Click New Project, give it any name, click Create

Step 2 โ€” Enable the Sheets API

  1. In your project, go to APIs & Services โ†’ Library
  2. Search for Google Sheets API, click it, click Enable

Step 3 โ€” Create a Service Account

  1. Go to APIs & Services โ†’ Credentials
  2. Click Create Credentials โ†’ Service Account
  3. Give it any name (e.g. apify-sheets), click Create and Continue
  4. Skip the optional steps, click Done

Step 4 โ€” Download the key

  1. Click the service account you just created
  2. Go to the Keys tab
  3. Click Add Key โ†’ Create new key โ†’ JSON
  4. A .json file downloads โ€” open it and copy the entire contents

Step 5 โ€” Share your sheet with the service account

  1. Open your Google Sheet
  2. Click Share
  3. Paste the service account email (formatted as {sa-name}@{project-id}.iam.gserviceaccount.com)
  4. Set role to Editor (for append) or Viewer (for read-only)
  5. Click Send

Step 6 โ€” Paste the JSON key into the actor input

Paste the full contents of the downloaded .json file into the serviceAccountKey field.


Input

FieldTypeRequiredDescription
spreadsheetIdstringYesThe ID from your Google Sheet URL
modestringYes"read" or "append"
rangestringNoSheet tab name or A1 range (default: first sheet)
serviceAccountKeystringConditionalRequired for private sheets and all appends. Full JSON key contents.
rowsarrayConditionalRequired for append. Array of objects matching your column headers.

Output

Read mode

{
"spreadsheetId":"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgVE2upms",
"mode":"read",
"rowCount":150,
"columns":["name","email","status"],
"data":[
{"name":"John Smith","email":"john@example.com","status":"active"},
{"name":"Jane Doe","email":"jane@example.com","status":"pending"}
],
"status":"success",
"error":null
}

Append mode

{
"spreadsheetId":"1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgVE2upms",
"mode":"append",
"rowsAppended":2,
"updatedRange":"Sheet1!A152:C153",
"status":"success",
"error":null
}

Pricing

$0.003 per successful operation (pay-per-event pricing).

  • Failed operations (auth errors, invalid IDs, inaccessible sheets) are not charged.
  • 1,000 operations = $3.00
  • 10,000 operations = $30.00

Limitations

  • Append mode requires at least one existing row in the sheet to read column headers from. If the sheet is empty, column headers are taken from the keys of the first row in your input.
  • Maximum sheet size is limited by Google Sheets' own 5 million cell limit.
  • Service Account must be shared on the specific sheet โ€” sharing at the Drive folder level is also supported.
  • This actor does NOT use OAuth. It cannot access sheets you haven't explicitly shared with the service account email.

Related actors in this suite

Other tools by accurate_pouch that pair with Sheets for end-to-end workflows:

  • Email Validator Pro โ€” SMTP, disposable, catch-all, typo detection, deliverability score, Sheets export. $0.005/email.
  • Broken Link Checker โ€” Recursive crawl, sitemap, robots.txt parsing, webhook, Sheets export. $0.005/page.
  • Lighthouse Auditor โ€” PageSpeed Insights API, Core Web Vitals, deltas, competitor comparison, Sheets export. $0.005/audit.
  • TheCrawler โ€” Web scraper + LLM-powered structured extraction. AGPL-3.0, also on npm (thecrawler@0.1.1). $0.005/page.

Run on Apify

๐Ÿ‘ Run on Apify

No setup needed. Click above to run in the cloud. $0.003 per operation.

You might also like

Public Google Sheet scraper

advantageous_subcontra/public-google-sheet-scraper

Download data from a publicly available Google Sheet.

41

Google Sheets MCP Server

constant_quadruped/google-sheets-mcp-server

MCP server for Google Sheets. AI agents can read, write, and manage spreadsheets. 14 tools: cell/range CRUD, formulas, batch operations, JSON export, and sheet tab management. Service account or API key auth.

Google Sheets Export & Scraper

sourabhbgp/google-sheets-export

Export any public Google Sheet to flat JSON rows, a full xlsx workbook, or both. Typed values, multi-tab, hyperlinks and formulas optional. No Google Cloud project, no OAuth, no API key โ€” just paste a sharing URL.

9

Google Sheet MCP SERVER

bhansalisoft/google-sheet-mcp-server

Google Sheet MCP SERVER for unique tool for Google Sheet integration with all functionality on Any AI Tool

21

Google Sheets MCP Server

powerai/google-sheets-mcp-server

Google Sheets MCP Server provides seamless access to Google Sheets API, enabling AI assistants to create, read, update, and manage Google Spreadsheets programmatically.

Musescore Sheet Music Scraper

powerai/musescore-sheet-scraper

Scrape sheet music from Musescore.com by providing a search URL, with automatic pagination and comprehensive sheet music information extraction.

Google Sheet Exporter

jupri/google-sheet-exporter

๐Ÿ’ซ Export Dataset to GoogleSheet

Google Sheets Database Engine

xevri/sheets-engine-read-api-basic

Turn any public Google Sheet into a searchable database. Stop parsing huge CSVs, use simple MongoDB syntax to extract exactly what you need. Featuring smart type handling. Frontend safe and developer-ready. Unlimited Sheets .. Unlimited Queries ๐Ÿš€ Run your first query now!

Cost Sheet Generator

moving_beacon-owner1/my-actor-75

Cloud-native version of the Art Pro Sublimation desktop cost sheet tool. Provide image URLs, set your rate, and get back a branded Excel invoice โ€” ready to download and print on A4.

2

Related articles

Build a Reddit brand monitoring tool on n8n with Apify and OpenAI
Read more
How to monitor local competitors on delivery platforms
Read more
How to build a price drop alert for almost anything online
Read more