Integrating Slack with Frontegg allows your application to read user profiles, browse channels and conversations, post messages, manage files, and search across a Slack workspace — all through Frontegg's integration layer using Slack OAuth v2 (user tokens).
Prerequisites
Prerequisites
- A Slack workspace where you have permission to create and install apps
- Access to the Slack API console
Sign in to the Slack API console with an account that belongs to the workspace where you want to install the app. Click Create an App at the top of the page.

In the Create an app dialog, choose From scratch to configure the app manually through the UI.

Enter an App Name (for example, Frontegg Integration) and pick the Slack workspace you want to develop the app in. Click Create App.
Workspace is permanent
Workspace is permanent
You can't change the app's development workspace after creation. Pick the workspace whose data you want Frontegg to access.

After creation, you are taken to the app's Basic Information page. Scroll to the App Credentials section. Copy the Client ID and click Show next to Client Secret to reveal and copy the secret — you'll need both when configuring the Frontegg portal.
Keep your Client Secret safe
Keep your Client Secret safe
The Client Secret authenticates your Frontegg integration to Slack. Never share or commit it to version control.

In the left sidebar, click OAuth & Permissions. Under Redirect URLs, click Add New Redirect URL and enter:
https://YOUR_MCP_GATEWAY_URL/integration-callbackClick Add, then Save URLs.

The Redirect URL now appears in the list. Verify the URL matches your Frontegg MCP Gateway exactly — a mismatch will cause the OAuth flow to fail with bad_redirect_uri.

Scroll down to Scopes. Frontegg uses User Token Scopes (not Bot Token Scopes) — Slack issues a user token that acts on behalf of the user who authorizes the app. Click Add an OAuth Scope under User Token Scopes.
Use User Token Scopes, not Bot Token Scopes
Use User Token Scopes, not Bot Token Scopes
Frontegg requests user tokens via Slack's user_scope parameter. Scopes added under Bot Token Scopes are not granted to the user token and won't be available to Frontegg.

Type each scope name into the search box and select it from the dropdown. Select the following scopes:
| Scope | Description |
|---|---|
users.profile:read | View profile details about people in the workspace (required) |
users:read | View people in the workspace (required) |
users:read.email | View email addresses of people in the workspace (required) |
channels:read | View basic information about public channels |
channels:history | View messages and other content in public channels |
chat:write | Send messages on the user's behalf |
files:read | View files shared in channels and conversations |
search:read | Search the workspace's content |
Add more scopes as needed
Add more scopes as needed
Slack supports many additional user scopes — for example groups:* for private channels, im:* for direct messages, reactions:*, pins:*, reminders:*, and admin.* scopes for org-wide actions. Add only the scopes your application needs.

Once you have your Client ID and Client Secret, enter them in the Frontegg portal:
- Open the Frontegg portal and navigate to [ENVIRONMENT] → Integrations → Slack.
- Enter the Client ID and Client Secret in the corresponding fields.
- Select the required scopes.
- Click Save.
When a user authorizes the integration, Slack will prompt them to choose the workspace where the app should be installed and to approve the requested scopes.