Email Marketing and SMS Marketing Platform
Emit an event for each new or modified record in a table
Emit an event for each new or modified record in a view
Emits an event each time a record is added, updated, or deleted in an Airtable table. Supports tables up to 10,000 records
With the Klaviyo API, you can build a variety of things, including:
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
klaviyo: {
type: "app",
app: "klaviyo",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://a.klaviyo.com/api/v2/lists`,
headers: {
"Authorization": `Klaviyo-API-Key ${this.klaviyo.$auth.api_key}`,
"revision": `2022-10-17`,
},
})
},
})
Using the Airtable API, you can build applications that can:
module.exports = defineComponent({
props: {
airtable: {
type: "app",
app: "airtable",
},
baseId: {
type: "$.airtable.baseId",
appProp: "airtable",
},
tableId: {
type: "$.airtable.tableId",
baseIdProp: "baseId",
},
},
async run({steps, $}) {
const Airtable = require('airtable');
const base = new Airtable({apiKey: this.airtable.$auth.api_key}).base(this.baseId);
const data = []
await base(this.tableId).select({
// pass optional config parameters here
}).eachPage(function page(records, fetchNextPage) {
// This function (`page`) will get called for each page of records.
records.forEach(function(record) {
data.push(record._rawJson)
});
// To fetch the next page of records, call `fetchNextPage`.
// If there are more records, `page` will get called again.
// If there are no more records, `done` will get called.
fetchNextPage();
})
return data
},
})