# Google Sheets Integration via LowCodeAPI
**Last Updated**: February 10, 2026
## Overview
Google Sheets
**Categories:**
- {'id': 'google-other', 'name': 'Google Other'}
## Base Endpoint
https://api.lowcodeapi.com/googlesheets
**Important**: Always include the provider name in the URL path after `api.lowcodeapi.com/`
## Authentication
**Type:** OAUTH2.0
**Official Documentation:** https://developers.google.com/sheets/api/reference/rest
## URL Format (Important)
LowCodeAPI supports two URL formats. **Always try the New Format first**, then fall back to Old Format if needed.
### New Format (Priority)
- Path parameters stay in the URL path
- Do NOT include path parameters as query parameters
- Example: `https://api.lowcodeapi.com/{provider}/resource/{id}?api_token=XXX`
### Old Format (Fallback)
- Path parameters become query parameters
- Example: `https://api.lowcodeapi.com/{provider}/resource/id?id={id}&api_token=XXX`
### Decision Flow for AI Agents
1. Always use **New Format** first - keep path parameters in the URL path
2. If you get a 404 or error, try **Old Format** with sanitized path
3. Log which format worked for future requests to this provider
## API Categories
## Common Endpoints
### Replace Googlesheet data
**Method:** POST
**LowCodeAPI Path:**
**New Format URL:**
https://api.lowcodeapi.com/googlesheets?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/googlesheets/spreadsheetid/update?spreadsheetId={spreadsheetId}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| spreadsheetId | string | |
**Request Body:**
| Field | Type | Description |
|-------|------|-------------|
| gid | number | |
| rows | array | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/googlesheets?api_token=YOUR_API_TOKEN'
```
### Append Googlesheets
**Method:** POST
**LowCodeAPI Path:**
**New Format URL:**
https://api.lowcodeapi.com/googlesheets?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/googlesheets/spreadsheetid/append?spreadsheetId={spreadsheetId}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| spreadsheetId | string | |
**Request Body:**
| Field | Type | Description |
|-------|------|-------------|
| data | array | |
| tab | string | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/googlesheets?api_token=YOUR_API_TOKEN'
```
### Create new Googlesheet
**Method:** POST
**LowCodeAPI Path:** /v4/spreadsheets
**New Format URL:**
https://api.lowcodeapi.com/googlesheets/v4/spreadsheets?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/googlesheets/v4/spreadsheets?api_token=YOUR_API_TOKEN
**Request Body:**
| Field | Type | Description |
|-------|------|-------------|
| properties | object | |
| sheets | array | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/googlesheets/v4/spreadsheets?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/create,
https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets#Spreadsheet
### Batch update Googlesheet
**Method:** POST
**LowCodeAPI Path:** /v4/spreadsheets/{spreadsheetId}:batchUpdate
**New Format URL:**
https://api.lowcodeapi.com/googlesheets/v4/spreadsheets/{spreadsheetId}:batchUpdate?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/googlesheets/v4/spreadsheets/spreadsheetid-batchupdate?spreadsheetId={spreadsheetId}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| spreadsheetId | string | |
**Request Body:**
| Field | Type | Description |
|-------|------|-------------|
| requests | array | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/googlesheets/v4/spreadsheets/{spreadsheetId}:batchUpdate?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/batchUpdate
### Retruns the data of specified range
**Method:** GET
**LowCodeAPI Path:** /v4/spreadsheets/{spreadsheetId}/values/{range}
**New Format URL:**
https://api.lowcodeapi.com/googlesheets/v4/spreadsheets/{spreadsheetId}/values/{range}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/googlesheets/v4/spreadsheets/spreadsheetid/values/range?range={range}&spreadsheetId={spreadsheetId}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| range | string | |
| spreadsheetId | string | |
**Query Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| dateTimeRenderOption | string | |
| majorDimension | string | |
| valueRenderOption | string | |
**Example Request (New Format):**
```bash
curl -X GET 'https://api.lowcodeapi.com/googlesheets/v4/spreadsheets/{spreadsheetId}/values/{range}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/get
### Get Googlesheet sheet data using the given filter
**Method:** POST
**LowCodeAPI Path:** /v4/spreadsheets/{spreadsheetId}:getByDataFilter
**New Format URL:**
https://api.lowcodeapi.com/googlesheets/v4/spreadsheets/{spreadsheetId}:getByDataFilter?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/googlesheets/v4/spreadsheets/spreadsheetidgetbydatafilter?spreadsheetId={spreadsheetId}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| spreadsheetId | string | |
**Request Body:**
| Field | Type | Description |
|-------|------|-------------|
| dataFilters | array | |
| includeGridData | boolean | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/googlesheets/v4/spreadsheets/{spreadsheetId}:getByDataFilter?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/getByDataFilter
### Fetch Googlesheet data
**Method:** GET
**LowCodeAPI Path:**
**New Format URL:**
https://api.lowcodeapi.com/googlesheets?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/googlesheets/spreadsheetid/get?spreadsheetId={spreadsheetId}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| spreadsheetId | string | |
**Query Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| gid | number | |
| lookup | string | |
| row | number | |
| tab | string | |
**Example Request (New Format):**
```bash
curl -X GET 'https://api.lowcodeapi.com/googlesheets?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/get
### Fetch data from Googlesheet
**Method:** GET
**LowCodeAPI Path:** /v4/spreadsheets/{spreadsheetId}
**New Format URL:**
https://api.lowcodeapi.com/googlesheets/v4/spreadsheets/{spreadsheetId}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/googlesheets/v4/spreadsheets/spreadsheetid?spreadsheetId={spreadsheetId}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| spreadsheetId | string | |
**Query Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| includeGridData | boolean | |
| ranges | string | |
**Example Request (New Format):**
```bash
curl -X GET 'https://api.lowcodeapi.com/googlesheets/v4/spreadsheets/{spreadsheetId}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/get
### Insert new sheet in Googlesheet
**Method:** POST
**LowCodeAPI Path:**
**New Format URL:**
https://api.lowcodeapi.com/googlesheets?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/googlesheets/spreadsheetid/add?spreadsheetId={spreadsheetId}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| spreadsheetId | string | |
**Request Body:**
| Field | Type | Description |
|-------|------|-------------|
| gid | number | |
| tab | string | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/googlesheets?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/batchUpdate
### Clear specific sheet data of Googlesheets
**Method:** POST
**LowCodeAPI Path:**
**New Format URL:**
https://api.lowcodeapi.com/googlesheets?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/googlesheets/spreadsheetid/clear?spreadsheetId={spreadsheetId}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| spreadsheetId | string | |
**Request Body:**
| Field | Type | Description |
|-------|------|-------------|
| tab | string | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/googlesheets?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/clear
## Usage Examples
### Example 1: Basic API Request
```bash
# List resources - no path parameters needed
curl -X GET "https://api.lowcodeapi.com/googlesheets/v1/resources?api_token=YOUR_API_TOKEN"
```
### Example 2: Request with Path Parameters
```bash
# Get specific resource by ID
curl -X GET "https://api.lowcodeapi.com/googlesheets/v1/resources/{RESOURCE_ID}?api_token=YOUR_API_TOKEN"
```
### Example 3: Create or Update Resource
```bash
# Create a new resource
curl -X POST "https://api.lowcodeapi.com/googlesheets/v1/resources?api_token=YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "New Resource", "description": "Description"}'
```
## Error Handling
LowCodeAPI returns standard HTTP status codes. Common errors:
| Status Code | Description |
|-------------|-------------|
| 200 | Success - Request completed successfully |
| 400 | Bad Request - Invalid parameters or request body |
| 401 | Unauthorized - Invalid or missing API token |
| 403 | Forbidden - Insufficient permissions |
| 404 | Not Found - Endpoint or resource doesn't exist |
| 429 | Too Many Requests - Rate limit exceeded |
| 500 | Server Error - Provider API error |
All error responses include error details:
```json
{
"data": {
"error": {
"message": "Error description",
"code": "ERROR_CODE"
}
}
}
```
## Complete Endpoint Reference
| Endpoint | Method | Category |
|----------|--------|----------|
| Replace Googlesheet data | POST | Simplified API |
| Append Googlesheets | POST | Simplified API |
| Create new Googlesheet | POST | Spreadsheet |
| Batch update Googlesheet | POST | Spreadsheet Batch Update |
| Retruns the data of specified range | GET | Sheet / Range |
| Get Googlesheet sheet data using the given filter | POST | Spreadsheet |
| Fetch Googlesheet data | GET | Simplified API |
| Fetch data from Googlesheet | GET | Spreadsheet |
| Insert new sheet in Googlesheet | POST | Simplified API |
| Clear specific sheet data of Googlesheets | POST | Simplified API |
| Clears the sheet data | POST | Sheet / Range |
| Updates the data of specified range | PUT | Sheet / Range |
| Clears the sheet data of one or more ranges | POST | Sheet / Range (Batch) |
| Clears the ranges matching one or more data filter | POST | Sheet / Range (Batch) |
| Appends value at the end | POST | Sheet / Range |
| Copies a range from one sheet to another sheet | POST | Other |
| Retruns data from one or more sheets | GET | Sheet / Range (Batch) |
| Retruns data from one or more sheets based on matc... | POST | Sheet / Range (Batch) |
| Updates one more more ranges in the spreadsheet | POST | Sheet / Range (Batch) |
| Fetch developer metadata | GET | Other |
| Search developer metadata | POST | Other |
| Updates one more more ranges in the spreadsheet ba... | POST | Sheet / Range (Batch) |
## API Definition Endpoints
You can fetch the complete API specification for this provider:
**New Format (OpenAPI spec):**
```bash
curl 'https://backend.lowcodeapi.com/googlesheets/openapi'
```
**Old Format (API definition):**
```bash
curl 'https://backend.lowcodeapi.com/googlesheets/definition'
```
## Response Format
All responses are wrapped in a `data` key:
```json
{
"data": {
// Actual response from provider (object or array)
}
}
```