The distributed serverless database combining the flexibility of NoSQL with the relational querying capabilities of SQL systems.
Emit new event each time you add or remove a document from a specific collection, with the details of the document.
Emit new event when a new message is posted to one or more channels
Emit new event when a message was posted in a direct message channel
Emit new events on new Slack interactivity events sourced from Block Kit interactive elements, Slash commands, or Shortcuts.
Emit new event when a username or specific keyword is mentioned in a channel
Performs an arbitrary authorized GraphQL query. See docs here
Send a message to a public channel and customize the name and avatar of the bot that posts the message. See postMessage or scheduleMessage docs here
Send a message to a private channel and customize the name and avatar of the bot that posts the message. See postMessage or scheduleMessage docs here
Reads all documents from a given FaunaDB collection. See docs here
module.exports = defineComponent({
props: {
faunadb: {
type: "app",
app: "faunadb",
}
},
async run({steps, $}) {
const faunadb = require('faunadb')
const q = faunadb.query
const client = new faunadb.Client({ secret: this.faunadb.$auth.secret })
// Lists collections in the database tied to your secret key
const collectionsPaginator = await client.paginate(q.Collections())
this.collections = []
await collectionsPaginator.each(page => {
for (const collection of page) {
this.collections.push(collection.id)
}
})
},
})
With the Slack API, you can build all sorts of integrations and applications to
make your work life easier. Here are just a few examples:
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
slack: {
type: "app",
app: "slack",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://slack.com/api/users.profile.get`,
headers: {
Authorization: `Bearer ${this.slack.$auth.oauth_access_token}`,
},
})
},
})