Aeion + Slack — Workspace Connection
Aeion's auth layer recognizes `slack` as an OAuth provider type, but it isn't wired to any environment configuration in the current build — "Sign in with Slack" as an end-user identity option isn't available yet. What IS live today is a workspace-level Slack connection (OAuth v2 bot install) that powers Aeion Connect's Slack channel — reading and sending messages, reactions, and files between a Slack workspace and Aeion's omnichannel inbox.
When This Integration Matters
Connecting Slack matters for any product where the user's workplace runs on Slack (most knowledge-worker B2B SaaS). Today, the integration is workspace-level, not per-user:
Step 1 — Slack App Setup
Slack apps are configured via Apps → api.slack.com/apps → Your Apps.
Step 2 — What's Actually Wired Up Today
Be aware of the gap between what's defined in code and what's reachable at runtime before you build against this:
OAuth v2 Flow Specifics
For context, once the Connect workspace-bot flow is reachable, here's the shape it's built around: Slack's OAuth is v2-only (the v1 OAuth flow shut down in 2021), and the flow requests bot scopes directly (chat:write, channels:read, users:read, etc. — see the manifest above) rather than a separate per-user identity scope. The resulting bot token (xoxb-...) is workspace-scoped — every install is bound to a single Slack workspace (team), and the token + channel list are what modules/connect's IntegrationService stores and uses to post messages, list channels, and look up users via chat.postMessage, conversations.list, and related Slack Web API calls.
Common Gotchas
- The incoming-webhook path doesn't need scopes at all — an Incoming Webhook URL posts to the specific channel it was created for regardless of any app-level OAuth scopes, since it isn't tied to a bot token.
FAQ
No. The `slack` OAuth provider type exists in Aeion Auth's code, but no environment variable wires client credentials to it, so it can't be turned on in the login UI yet.
Create a Slack Incoming Webhook for the channel you want, and configure that webhook URL as a notification target in Aeion. Aeion auto-detects the `slack.com` webhook URL and formats messages as Slack Block Kit — no OAuth app needed.
The code for it exists in `modules/connect` (workspace OAuth install, `chat.postMessage`, channel listing), but it isn't mounted as a live route yet, so it isn't something you can configure today.
Not applicable yet — see above, Slack sign-in isn't wired up.