Slack

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.

Integrate the Slack API with the Firebase Admin SDK API

Setup the Slack API trigger to run a workflow which integrates with the Firebase Admin SDK API. Pipedream's integration platform allows you to integrate Slack and Firebase Admin SDK remarkably fast. Free for developers.

Create Document with Firebase Admin SDK API on New Message In Channels from Slack API
Slack + Firebase Admin SDK
 
Try it
Create Firebase Realtime Database Record with Firebase Admin SDK API on New Message In Channels from Slack API
Slack + Firebase Admin SDK
 
Try it
List Documents with Firebase Admin SDK API on New Message In Channels from Slack API
Slack + Firebase Admin SDK
 
Try it
Save Event to Firestore with Firebase Admin SDK API on New Message In Channels from Slack API
Slack + Firebase Admin SDK
 
Try it
Update Documents with Firebase Admin SDK API on New Message In Channels (Instant) from Slack API
Slack + Firebase Admin SDK
 
Try it
New Message In Channels (Instant) from the Slack API

Emit new event when a new message is posted to one or more channels

 
Try it
New Child Object in a Realtime Database from the Firebase Admin SDK API

Emit new event when a new child object is discovered within a specific path

 
Try it
New Document in Firestore Collection from the Firebase Admin SDK API

Emit new event when a structured query returns new documents

 
Try it
New Direct Message (Instant) from the Slack API

Emit new event when a message was posted in a direct message channel

 
Try it
New Interaction Events from the Slack API

Emit new events on new Slack interactivity events sourced from Block Kit interactive elements, Slash commands, or Shortcuts.

 
Try it
Create Document with the Firebase Admin SDK API

Creates a New Document. See the docs here

 
Try it
Send Message to a Public Channel with the Slack API

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

 
Try it
Create Firebase Realtime Database Record with the Firebase Admin SDK API

Creates or replaces a child object within your Firebase Realtime Database. See the docs here

 
Try it
Send Message to a Private Channel with the Slack API

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

 
Try it
List Documents with the Firebase Admin SDK API

Lists documents in a collection. See the docs here

 
Try it

Overview of Slack

The Pipedream Slack app enables you to build event-driven workflows that interact with the Slack API. When you authorize the Pipedream app's access to your workspace, you can use Pipedream workflows to perform common Slack actions, or write your own code against the Slack API.

The Pipedream Slack app is not a typical app. You don't interact with it directly as a bot, and it doesn't add custom functionality to your workspace out of the box. It just makes it easier to automate anything you'd typically use the Slack API for, using Pipedream workflows.

Here are some examples of automations you can build with Pipedream on Slack:

  • Automate posting updates to your team channel
  • Create a bot to answer common questions
  • Integrate with your existing tools and services
  • Build a custom dashboard to track your team's progress
  • Create a bot to handle scheduling and meeting requests
  • And much more!

Should I use the Slack or Slack Bot app on Pipedream?

The Slack app is the easiest and most convienent option to get started. It installs the official Pipedream bot into your Slack workspace with just a few clicks.

However, if you'd like to use your own bot registered with the Slack API, you can use the Slack Bot app instead.

The Slack Bot requires a bot token to allow your Pipedream workflows to authenticate as your bot. The extra set up steps allow you to list your custom bot on the Slack Marketplace, or install the bot on other workspaces as your bot's name instead of as Pipedream.

Getting Started

You can install the Pipedream Slack app in the Accounts section of your account, or directly in a workflow

Accounts

  1. Visit https://pipedream.com/accounts.
  2. Click on the Click Here To Connect An App button in the top-right.
  3. Search for "Slack" among the list of apps, and select it.
  4. This will open a new window asking you to allow Pipedream access to your Slack workspace. Choose the right workspace where you'd like to install the app, then click Allow.
  5. That's it! You can now use this Slack account in any actions, or link it to any code step.

Within a workflow

  1. Create a new workflow.
  2. Select your trigger (HTTP, Cron, etc.).
  3. Click on the + button below the trigger step, and search for "Slack".
  4. Select the Send a Message action.
  5. Click the Connect Account button near the top of the step. This will prompt you to select any existing Slack accounts you've previously authenticated with Pipedream, or you can select a New account. Clicking New opens a new window asking you to allow Pipedream access to your Slack workspace. Choose the right workspace where you'd like to install the app, then click Allow.
  6. That's it! You can now connect to the Slack API using any of the Slack actions within a Pipedream workflow.

Troubleshooting

Please reach out to the Pipedream team with any technical issues or questions about the Slack integration. We're happy to help!

Connect Slack

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
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}`,
      },
    })
  },
})

Overview of Firebase Admin SDK

With the Firebase Admin SDK API, you can build a variety of different
applications and tools. For example, you could build a tool to manage your
Firebase project's users, or a tool to monitor your Firebase project's data
usage. You could also build an app that helps you manage your Firebase
project's settings, or an app that helps you troubleshoot your Firebase
project's data.

Connect Firebase Admin SDK

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
module.exports = defineComponent({
  props: {
    firebase_admin_sdk: {
      type: "app",
      app: "firebase_admin_sdk",
    }
  },
  async run({steps, $}) {
    const admin = require('firebase-admin')
    
    // Enter values for the following parameters below this code step,
    // These get passed to the initializeApp method below.
    const { projectId, clientEmail, privateKey } = this.firebase_admin_sdk.$auth
    
    // Before passing the privateKey to the initializeApp constructor,
    // we have to replace newline characters with literal newlines
    const formattedPrivateKey = privateKey.replace(/\\n/g, '\n')
    
    // See https://firebase.google.com/docs/reference/admin/node/admin.credential.html#cert
    if (!admin.apps.length) {
      admin.initializeApp({
        credential: admin.credential.cert({
          projectId,
          clientEmail,
          privateKey: formattedPrivateKey,
        })
      })
    }
  },
})
Save Zoom Cloud Recordings to Google Drive and Share on Slack
Save Zoom Cloud Recordings to Google Drive and Share on Slack
Save Zoom Cloud Recordings to Google Drive and Share on Slack.
Run a Pipedream workflow on PagerDuty on-call rotations
Run a Pipedream workflow on PagerDuty on-call rotations
Run common workflows, or any Node.js code you'd like, each time a new user rotates onto an on-call schedule.

Community Posts

Airtable Webhooks with Slack + Pipedream
Airtable Webhooks with Slack + Pipedream
We love Airtable here at Pipedream. But Airtable lacks one killer feature — webhooks. We took advantage of Airtable’s Slack notifications and built a way to send webhooks to an HTTP endpoint every time a record is created or updated in a base. It takes 10 minutes to setup and it’s free.