Slack is a channel-based messaging platform. With Slack, people can work together more effectively, connect all their software tools and services, and find the information they need to do their best work — all within a secure, enterprise-grade environment.
Emit new event when a new message is posted to one or more channels
Emit new Pub/Sub topic in your GCP account. Messages published to this topic are emitted from the Pipedream source.
Emit new events with the results of an arbitrary query
Emit new event when a message was posted in a direct message channel
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
Inserts rows into a BigQuery table. See the docs and for an example here.
Send a message using Slack's Block Kit UI framework to a channel, group or user. See postMessage or scheduleMessage docs here
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}`,
},
})
},
})
The Google Cloud API allows developers to access a variety of Google Cloud
services from their own applications. Services that can be accessed include
Google Cloud Storage, Google Cloud Datastore, Google Cloud Functions, and
Google Cloud Pub/Sub. With the Google Cloud API, developers can build a variety
of applications that take advantage of Google Cloud services.
module.exports = defineComponent({
props: {
google_cloud: {
type: "app",
app: "google_cloud",
}
},
async run({steps, $}) {
// Required workaround to get the @google-cloud/storage package
// working correctly on Pipedream
require("@dylburger/umask")()
const { Storage } = require('@google-cloud/storage')
const key = JSON.parse(this.google_cloud.$auth.key_json)
// Creates a client from a Google service account key.
// See https://cloud.google.com/nodejs/docs/reference/storage/1.6.x/global#ClientConfig
const storage = new Storage({
projectId: key.project_id,
credentials: {
client_email: key.client_email,
private_key: key.private_key,
}
})
// Uncomment this section and rename for your bucket before running this code
// const bucketName = 'pipedream-test-bucket';
await storage.createBucket(bucketName)
console.log(`Bucket ${bucketName} created.`)
},
})