Rounak Dhillon 6f31e92cc6
Slack Application Document Addition in Collate (#22213)
Co-authored-by: “Rounak <“rounakpreet.d@deuexsolutions.com”>
Co-authored-by: Prajwal214 <167504578+Prajwal214@users.noreply.github.com>
2025-07-08 16:34:21 -07:00

183 lines
5.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: Slack Integration with Collate for Data Collaboration
description: Integrate Collate with Slack to enable real-time data collaboration, search assets, receive notifications, and share metadata insights directly in Slack.
slug: /applications/slack
collate: true
---
# Slack Application in Collate
Integrate Collate with Slack to enhance data collaboration and streamline team workflows. This integration enables real-time notifications, in-Slack search and sharing of metadata assets, and message interactions—all within your existing Slack workspace.
## Overview
The Slack application connects your Slack workspace with Collate, enabling seamless communication and metadata access:
- **Real-Time Notifications**: Receive instant alerts, mentions, and updates directly in Slack.
- **Metadata Search**: Quickly search for glossaries, terms, tags, and tables within Slack.
- **Asset Sharing**: Share Collate assets effortlessly with your team from Slack.
- **Enhanced Productivity**: Stay informed and connected without leaving your workspace.
## Key Capabilities
- **Search Entities**: Use Slack to search glossaries, terms, tags, and tables.
- **Share Assets**: Share metadata assets from Collate to your team directly in Slack.
- **Notifications**: Get notified when someone mentions `@collate2`, or when updates occur in your data workspace.
## Authorizations
When connected, Collate will have the following permissions in Slack:
- View and respond to messages that mention `@collate2`.
- Access content in public channels where Collate is added.
- Join public channels and view their basic information.
- Add and respond to shortcuts and slash commands.
- Access content in direct messages and group direct messages.
- View user profiles in the workspace.
- Send messages as `@collate2`, including to channels it's not a member of.
- Post messages to designated Slack channels.
## Slack App Configuration
To enable Slack integration in Collate:
1. Navigate to **Settings****Applications****Add Apps**.
{% image
src="/images/v1.9/applications/slack1.png"
alt="Configuration"
caption="Configuration"
/%}
2. Search for **Slack** and install the application.
{% image
src="/images/v1.9/applications/slack2.png"
alt="Configuration"
caption="Configuration"
/%}
### Configuration Fields
- **User Token**: Token used to authenticate Slack API requests on behalf of a user.
- **Bot Token**: Token used to authenticate Slack API requests on behalf of the bot.
{% image
src="/images/v1.9/applications/slack3.png"
alt="Configuration"
caption="Configuration"
/%}
{% note %}
Ensure that both tokens are securely stored and have the required scopes for interaction with your Slack workspace.
{% /note %}
## How to Obtain Slack Bot Token and User Token
To integrate Slack with Collate, you need to generate both a **Bot Token** and a **User Token** from your Slack workspace. These tokens allow Collate to interact with Slack APIs on behalf of your application and users.
## Step-by-Step Instructions
### 1. Create a Slack App
1. Go to the [Slack API: Your Apps](https://api.slack.com/apps) page.
2. Click **Create New App**.
{% image
src="/images/v1.9/applications/slack4.png"
alt="Configuration"
caption="Configuration"
/%}
3. Select **From scratch**.
{% image
src="/images/v1.9/applications/slack5.png"
alt="Configuration"
caption="Configuration"
/%}
4. Enter the **App Name** (e.g., `Collate Integration`) and choose your **Slack workspace**.
5. Click **Create App**.
{% image
src="/images/v1.9/applications/slack6.png"
alt="Configuration"
caption="Configuration"
/%}
### 2. Configure OAuth & Permissions
1. In your apps dashboard, navigate to **OAuth & Permissions**.
{% image
src="/images/v1.9/applications/slack7.png"
alt="Configuration"
caption="Configuration"
/%}
2. Under **Scopes**, configure the following:
{% image
src="/images/v1.9/applications/slack8.png"
alt="Configuration"
caption="Configuration"
/%}
#### For **Bot Token Scopes**:
Add these scopes:
- `chat:write`
- `channels:read`
- `groups:read`
- `im:read`
- `mpim:read`
- `users:read`
- `commands`
- `app_mentions:read`
#### For **User Token Scopes**:
Add these scopes:
- `channels:history`
- `groups:history`
- `im:history`
- `mpim:history`
{% note %}
Only add the scopes you need. Ensure your Slack workspace allows user token generation (may require admin privileges).
{% /note %}
### 3. Install the App to Workspace
1. Still in **OAuth & Permissions**, click **Install** to install App to your Workspace.
{% image
src="/images/v1.9/applications/slack9.png"
alt="Configuration"
caption="Configuration"
/%}
2. Authorize the permissions requested by the app.
After installation, you'll be redirected to the OAuth screen where your tokens will be displayed.
### 4. Copy the Tokens
- **Bot User OAuth Token**: Starts with `xoxb-...`
- **User OAuth Token**: Starts with `xoxp-...`
Store these tokens securely and provide them in the Slack app configuration within Collate.
{% note %}
- Never expose your tokens publicly.
- Rotate tokens periodically.
- Use Slack's [token rotation policy](https://api.slack.com/authentication/token-types#rotating) for better security.
{% /note %}
For more information, refer to the [Slack API documentation](https://api.slack.com/).