Built in

Slack

The Slack Web API as the bot of a Slack app you create in your own Slack workspace. Authorising the connection installs the app; the platform keeps the bot token, so it never reaches workspace code. Its default scopes are the ones the company agent's Slack channel uses.

Inside SegmentStream

Connected once, used everywhere.

Connections are declared in your repository and authorised in the console. The credentials stay with the platform; apps, pipelines, workflows and the agent use them under the same roles.

segmentstream.com
The console's connections page: Resend, Xero, Stripe, Supabase, LinkedIn and Telegram connections, each connected, with the key it is declared under in code
Connections declared in code and authorised here. The credentials stay with the platform, never in the repository.

What the connection reaches

  • Web API methods the app's bot scopes allow: post messages, read the channels it is in, files
  • Default scopes cover mentions, channels, direct messages and files
  • Callable from pipelines and from ontology actions
Status
Built into the pipeline SDK
Connection class
SlackConnection
Credential
Slack app of your own, installed in your Slack workspace

Connect Slack

Three steps, the same for every connection. The credential goes to the platform, never into the repository or pipeline code.

  1. 1

    Declare it in connections/connections.py

    connections/connections.py
    from segmentstream.connections import SlackConnection connections = (    SlackConnection(key="slack"),)
  2. 2

    Deploy

    $ segmentstream deploy
  3. 3

    Connect

    Create a Slack app at api.slack.com/apps in your Slack workspace. Enter its client ID and secret in the console, and add the redirect URI the console shows to the app under OAuth & Permissions.

    $ segmentstream connection configure slack
  4. 4

    Then

    Open the connection in the console and sign in with a Slack account allowed to install apps in the workspace, or authorise it from the terminal. Tokens are refreshed by the platform; pipeline code never sees them.

    $ segmentstream connection authorize slack --open

Use it

Code asks for the connection by its key. The platform adds the credential on the way out.

pipeline/ingestion/…
import segmentstream as s with s.get_connection("slack").get_http_client() as client:    response = client.post("/chat.postMessage", json={"channel": channel, "text": text})    response.raise_for_status()

Or ask your agent

“Add a Slack bot that posts the weekly revenue summary to #leadership.”

Part of these solutions

More in Messaging & email

Enterprise pilot

Want Slack set up for you?

Our forward-deployed engineers build one solution on your data, in your own workspace, as code you own. Tell us what you run today and what you want; your note goes straight to our founder.

  • One solution, on your data, in your own workspace
  • First version live in two weeks
  • Parity proven before anything is switched off
  • Fixed scope and price, credited to your contract if you continue

Not ready for a pilot? Send the form anyway with your question. An engineer will reply, not a sales rep.

How the pilot works

Goes to our founder’s inbox. No sales queue, no newsletter.

Connect what your company runs.

Start a pilot

Our engineers build the first version on your data in two weeks, at a fixed price.

Or build it yourself with your coding agent:

curl -fsSL https://segmentstream.com/install.sh | sh

We’ll email you product updates, tips and onboarding help. Unsubscribe anytime.