Sheets
Spreadsheets
The contents of a spreadsheet: reading and writing ranges, appending rows, and the structural changes that move data around. Changing structure is a separate permission from writing values.
| Method | Endpoint | Permission |
|---|---|---|
| POST |
Append rows
/v1/spreadsheets/:id/values/:range/append
Adds rows after the last populated row of a range, which is what a log or an export needs.
|
sheets.values.write |
| POST |
Read several ranges
/v1/spreadsheets/:id/values/batch-get
Reads several A1 ranges in one call, instead of a request per range.
|
sheets.values.read |
| POST |
Change a spreadsheet's structure
/v1/spreadsheets/:id/batch-update
Inserts and deletes rows, columns and sheets, and changes merges, sorting, charts and validation. Requires sheets.structure.write, which is separate from writing values.
|
sheets.structure.write |
| POST |
Write several ranges
/v1/spreadsheets/:id/values/batch-update
Writes several A1 ranges in one call.
|
sheets.values.write |
| POST |
Clear a range
/v1/spreadsheets/:id/values/:range/clear
Clears the values in a range and leaves its formatting.
|
sheets.values.write |
| GET |
List the sheets in a spreadsheet
/v1/spreadsheets/:id
Returns every sheet (tab) with its populated extent and merges, plus the workbook's named ranges, charts and validation. Read it first: it is where the sheet names and ids an A1 range needs come from.
|
sheets.values.read |
| GET |
Get the current state
/v1/spreadsheets/:id/state
Returns the workbook's state hash, for polling and for use as a precondition on a structural change.
|
sheets.values.read |
| GET |
Read a range
/v1/spreadsheets/:id/values/:range
Reads one A1 range: values, formulas and formatting.
|
sheets.values.read |
| PUT |
Write a range
/v1/spreadsheets/:id/values/:range
Overwrites one A1 range.
|
sheets.values.write |