google-sheets

Read, write, and manage Google Sheets data via curl.

76|18|Updated Dec 12, 2025
One-click install
npx skills add https://github.com/vm0-ai/vm0-skills --skill google-sheets-vm0-ai
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: google-sheets
Source: https://github.com/vm0-ai/vm0-skills/tree/main/google-sheets
Command: npx skills add https://github.com/vm0-ai/vm0-skills --skill google-sheets-vm0-ai

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Read, write, and batch-update Google Sheets data directly from scripts.

Core Features & Use Cases

  • Read data: Get cell values from ranges.
  • Write/update: Set cell values and append rows.
  • Batch operations: Update multiple ranges in one request.

Quick Start

Read a range from a Google Sheet to verify access using curl with an access token.

Frequently Asked Questions about google-sheets

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I read data from a Google Sheet using curl?

Read data from Google Sheets using curl by sending a GET request to the Google Sheets API with your spreadsheet ID, range, and an access token or API key in the Authorization header. The API returns cell values in JSON format, which you can parse and use in scripts.

Can I update multiple cell ranges in Google Sheets with a single API call?

Yes, batch operations let you update multiple ranges in one curl request. Use the batchUpdate endpoint with a JSON payload specifying all ranges and values, reducing overhead and ensuring atomicity across related updates.

What authentication do I need to access Google Sheets via curl?

You need either a Google Access Token (OAuth 2.0) or an API Key. Include your credentials in the Authorization header for token-based requests or as a query parameter for API keys. Both methods require prior setup in Google Cloud Console.

How do I append rows to a Google Sheet programmatically?

Append rows to Google Sheets using the append endpoint with curl, specifying the range and new row values in JSON format. The API inserts data at the next available row and returns metadata about the append operation.

Can I create a new Google Sheet and populate it via curl?

Yes, use the create endpoint to generate a new spreadsheet and return its ID, then use subsequent curl requests to write data to ranges. This lets you automate sheet generation and initial data loading in one workflow.