Anything you can do with Node.js, you can do in a Pipedream workflow. This includes using most of npm's 400,000+ packages.
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 event when a username or specific keyword is mentioned in a channel
Emit new event when a member has added an emoji reaction to a message
Write custom Node.js code and use any of the 400k+ npm packages available. Refer to the Pipedream Node docs to learn more.
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
Send a direct message to a single user. See postMessage or scheduleMessage docs here
Send a message using Slack's Block Kit UI framework to a channel, group or user. See postMessage or scheduleMessage docs here
// To use previous step data, pass the `steps` object to the run() function
export default defineComponent({
async run({ steps, $ }) {
// Return data to use it in future steps
return steps.trigger.event
},
})
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}`,
},
})
},
})