The ID of the spreadsheet to insert rows into. The spreadsheetID can be found in the URL when viewing your Google sheet. E.g., https://docs.google.com/spreadsheets/d/[spreadsheetId]/edit#gid=0
The A1 notation of the values to retrieve. E.g., A1:E5 or Sheet1!A1:E5
async
(params, auths) => {
}
const {google} = require('googleapis')
const auth = new google.auth.OAuth2()
auth.setCredentials({ access_token: auths.google_sheets.oauth_access_token })
const sheets = await google.sheets({version: 'v4', auth});
const response = await sheets.spreadsheets.values.get({
spreadsheetId: params.spreadhsheetId,
range: params.range
})
this.status = response.status
this.statusText = response.statusText
return response.data
auths
objectreturn
or this.key = 'value'
, pass input data to your code viaparams
, and maintain state across executions with$checkpoint.async
(event, steps) => {
}
// First row contains our headers / keys
const rows = steps.get_values.$return_value.values
this.headerRow = rows.shift()
// Build our array of objects iteratively.
// See the docs on step exports for the this.arrayOfObject syntax:
// https://docs.pipedream.com/workflows/steps/#step-exports
// That array will appear below the step - great for troubleshooting!
this.arrayOfObjects = []
for (const row of rows) {
const obj = {}
// Every row contains cells (columns) of data
for (const [index, cell] of row.entries()) {
obj[this.headerRow[index]] = cell
}
this.arrayOfObjects.push(obj)
}
// https://docs.pipedream.com/workflows/steps/triggers/#customizing-the-http-response
$respond({
status: 200,
headers: {
"Content-Type": "application/json"
},
body: this.arrayOfObjects
})