Customer data platform
Create one or more records in a table by passing an array of objects containing field names and values as key/value pairs.
identify lets you tie a user to their actions and record traits about them. It includes a unique User ID and any optional traits you know about them (note requires userId or anonymousId). See the docs here
You can do a lot of amazing things with Segment's API. Segment's API enables
you to collect and connect customer data quickly and easily. With it, you can
power your analytics, marketing, and data warehousing requirements, and improve
your customer experience and performance.
The Segment API provides you with full control over your customer data,
including file storage, ETL, data modeling, data enrichment and
transformations, and data queries. With it, you can build powerful solutions
that help you uncover useful customer insights in real-time. Here are a few
examples of what you can do using the Segment API:
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
segment: {
type: "app",
app: "segment",
}
},
async run({steps, $}) {
const data = {
"event": `PipedreamTestOrder`,
"anonymousId": `019mr8mf4r`,
}
return await axios($, {
method: "post",
url: `https://api.segment.io/v1/track`,
auth: {
username: `${this.segment.$auth.write_key}`,
password: ``,
},
data,
})
},
})
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
},
})