snippets_js
Integration
New integration from credential
const googleSpreadsheetClient = await yepcode.integration.googleSpreadsheet("credential-slug");
New integration from plain authentication data
const { GoogleSpreadsheet } = require("google-spreadsheet");
const googleSpreadsheetServiceAccountJson = {
type: "service_account",
project_id: "yepcode",
private_key_id: "XXXXX",
private_key: \`-----BEGIN PRIVATE KEY-----\nx\n-----END PRIVATE KEY-----\`,
client_email: "yepcode@example.org",
client_id: "1234567890",
auth_uri: "https://example.org",
token_uri: "https://example.org",
auth_provider_x509_cert_url: "https://example.org",
client_x509_cert_url: "https://example.org",
};
const googleSpreadsheetClient = new GoogleSpreadsheet("spreadsheet-id");
await googleSpreadsheetClient.useServiceAccountAuth(googleSpreadsheetServiceAccountJson);
Load Document Properties and Worksheets
Load document
await googleSpreadsheetClient.loadInfo();
console.log(googleSpreadsheetClient.title);
const sheet = googleSpreadsheetClient.sheetsByTitle["sheetTitle"];
console.log(sheet.title);
console.log(sheet.rowCount);
Create New Sheet and Add Rows
Create new sheet and add rows
await googleSpreadsheetClient.loadInfo();
const sheet = await googleSpreadsheetClient.addSheet({ title: "sheetTitle", headerValues: ["columnName", "columnName"] });
await sheet.addRow({ "columnName": "value", "columnName": "value" });
Update and Remove Rows
Update and remove rows
await googleSpreadsheetClient.loadInfo();
const sheet = googleSpreadsheetClient.sheetsByTitle["sheetTitle"];
const rows = await sheet.getRows();
rows[1].columnName = newValue;
await rows[1].save();
await rows[2].delete();
Work with Cells
Work with cells
await googleSpreadsheetClient.loadInfo();
const sheet = googleSpreadsheetClient.sheetsByTitle["sheetTitle"];
await sheet.loadCells("A1:E10");
console.log(sheet.cellStats); // total cells, loaded, how many non-empty
const a2 = sheet.getCell(1, 0);
const a3 = sheet.getCellByA1("A3");
a2.value = newValue
a3.value = newValue
await sheet.saveUpdatedCells();