Slack (dagster_slack)

This library provides an integration with Slack, to support posting messages in your company’s Slack workspace.

Presently, it provides a thin wrapper on the Slack client API chat.postMessage.

To use this integration, you’ll first need to create a Slack App for it.

  1. Create App: Go to and click “Create New App”:

  2. Install App: After creating an app, on the left-hand side of the app configuration, click “Bot Users”, and then create a bot user. Then, click “Install App” on the left hand side, and finally “Install App to Workspace”.

  3. Bot Token: Once finished, this will create a new bot token for your bot/workspace:

Copy this bot token and put it somewhere safe; see Safely Storing Credentials for more on this topic.

dagster_slack.slack_resource ResourceDefinition[source]

This resource is for connecting to Slack.

By configuring this Slack resource, you can post messages to Slack from any Dagster solid:


import os

from dagster import solid, execute_pipeline, ModeDefinition
from dagster_slack import slack_resource

def slack_solid(context):
    context.resources.slack.chat_postMessage(channel='#noise', text=':wave: hey there!')

    mode_defs=[ModeDefinition(resource_defs={'slack': slack_resource})],
def slack_pipeline():

    slack_pipeline, {'resources': {'slack': {'config': {'token': os.getenv('SLACK_TOKEN')}}}}