Appearance
Defined in: adapters/GoogleSheetsAdapter.ts:34
Google Sheets implementation of the SheetsAdapter contract.
Delegates to four internal services — authentication, spreadsheet metadata, worksheet management, and row operations — each responsible for a focused area of the Google Sheets API.
Example
ts
import { GoogleSheetsAdapter } from 'open-sheets-orm';
const adapter = new GoogleSheetsAdapter(credentials, 'spreadsheet-id');
await adapter.connect();
const info = await adapter.getSpreadsheet();
const rows = await adapter.readSheet();
await adapter.disconnect();Extends
Constructors
Constructor
new GoogleSheetsAdapter(
credentials,spreadsheetId,sheetName?):GoogleSheetsAdapter
Defined in: adapters/GoogleSheetsAdapter.ts:47
Parameters
credentials
JWTInput
Google service account credentials (JWT) or external account credentials.
spreadsheetId
string
The unique ID of the target spreadsheet.
sheetName?
string
The default sheet to operate on. When omitted, the first sheet is used.
Returns
GoogleSheetsAdapter
Overrides
Properties
_connected
protected_connected:boolean=false
Defined in: adapters/SheetsAdapter.ts:33
Whether the adapter has been successfully connected.
Set to true by connect and false by disconnect. Checked in ensureConnected before every data operation.
Inherited from
config
protectedconfig:SheetConfig
Defined in: adapters/SheetsAdapter.ts:25
The spreadsheet configuration for this adapter instance.
Inherited from
Methods
appendRow()
appendRow(
row,sheetName?):Promise<void>
Defined in: adapters/GoogleSheetsAdapter.ts:178
Appends a new row after the last existing row in the sheet.
Parameters
row
unknown[]
The cell values for the new row.
sheetName?
string
The target sheet. Falls back to the sheet name provided at construction time.
Returns
Promise<void>
Overrides
connect()
connect():
Promise<void>
Defined in: adapters/GoogleSheetsAdapter.ts:61
Authenticates and initializes all internal services.
Must be called before any other adapter method.
Returns
Promise<void>
Overrides
createSheet()
createSheet(
title):Promise<SheetInfo>
Defined in: adapters/GoogleSheetsAdapter.ts:95
Creates a new sheet (tab) within the configured spreadsheet.
Parameters
title
string
The title for the new sheet.
Returns
Promise<SheetInfo>
Metadata for the newly created sheet.
Overrides
deleteRow()
deleteRow(
rowIndex,sheetName?):Promise<void>
Defined in: adapters/GoogleSheetsAdapter.ts:216
Deletes a row by its zero-based data index.
Parameters
rowIndex
number
Zero-based index of the row to delete.
sheetName?
string
The target sheet. Falls back to the sheet name provided at construction time.
Returns
Promise<void>
Overrides
deleteSheet()
deleteSheet(
sheetName):Promise<void>
Defined in: adapters/GoogleSheetsAdapter.ts:116
Deletes a sheet (tab) from the configured spreadsheet.
Parameters
sheetName
string
The title of the sheet to delete.
Returns
Promise<void>
Overrides
disconnect()
disconnect():
Promise<void>
Defined in: adapters/GoogleSheetsAdapter.ts:75
Releases resources held by this adapter.
The Google Sheets API does not require explicit cleanup. Service references are preserved for reuse on next connect.
Returns
Promise<void>
Overrides
ensureConnected()
protectedensureConnected(methodName):void
Defined in: adapters/SheetsAdapter.ts:66
Guards data-access methods against being called before connect.
Parameters
methodName
string
The name of the calling method, included in the error message for diagnostic clarity.
Returns
void
Throws
If the adapter has not been connected.
Inherited from
ensureSheet()
ensureSheet(
sheetName):Promise<SheetInfo>
Defined in: adapters/GoogleSheetsAdapter.ts:106
Ensures a sheet exists, creating it if missing.
Parameters
sheetName
string
The title of the sheet to ensure exists.
Returns
Promise<SheetInfo>
Metadata for the sheet.
Overrides
getHeaders()
getHeaders(
sheetName?):Promise<string[]>
Defined in: adapters/GoogleSheetsAdapter.ts:128
Reads the header row from the specified (or default) sheet.
Parameters
sheetName?
string
The sheet to read from. Falls back to the sheet name provided at construction time.
Returns
Promise<string[]>
An array of header cell values.
Overrides
getSpreadsheet()
getSpreadsheet():
Promise<SpreadsheetInfo>
Defined in: adapters/GoogleSheetsAdapter.ts:84
Retrieves metadata for the configured spreadsheet.
Returns
Promise<SpreadsheetInfo>
The spreadsheet's title, URL, and contained sheet summaries.
Overrides
readSheet()
readSheet<
T>(sheetName?):Promise<T[]>
Defined in: adapters/GoogleSheetsAdapter.ts:161
Reads all data rows from the specified (or default) sheet, mapped to objects keyed by header values.
Type Parameters
T
T extends Record<string, string> = Record<string, string>
Parameters
sheetName?
string
The sheet to read from. Falls back to the sheet name provided at construction time.
Returns
Promise<T[]>
An array of row objects keyed by header values.
Overrides
updateRow()
updateRow(
rowIndex,row,sheetName?):Promise<void>
Defined in: adapters/GoogleSheetsAdapter.ts:195
Updates an existing row by its zero-based data index.
Parameters
rowIndex
number
Zero-based index of the row to update.
row
unknown[]
The new cell values for the row.
sheetName?
string
The target sheet. Falls back to the sheet name provided at construction time.
Returns
Promise<void>
Overrides
writeHeaders()
writeHeaders(
headers,sheetName?):Promise<void>
Defined in: adapters/GoogleSheetsAdapter.ts:143
Writes header values to row 1 of the specified (or default) sheet.
Parameters
headers
string[]
The header values to write.
sheetName?
string
The target sheet. Falls back to the sheet name provided at construction time.
Returns
Promise<void>