Slack
On This Page
Slack is a messaging platform that allows you to collaborate, communicate, and connect with other team members within your organization. This can be done using the channels, DMs, and groups that you can create within your Slack workspace. Slack also allows you to integrate various apps, such as Google Drive, Google Calendar, and Twitter to receive any alerts related to these apps.
Slack uses an OAuth token to identify Hevo and authorize the request for accessing account data.
You can replicate the data from your Slack workspace to a Destination database or data warehouse using Hevo Pipelines. Hevo ingests the data objects in Full Load mode. Refer to section, Data Model for the list of supported objects.
Prerequisites
-
An active Slack account from which data is to be ingested exists.
-
You are logged in as a Workspace Owner to obtain the OAuth token.
-
The HEVO app is created in your Slack workspace and the OAuth token is available to authenticate Hevo on your Slack workspace.
-
You are assigned the Team Administrator, Team Collaborator, or Pipeline Administrator role in Hevo to create the Pipeline.
Creating the HEVO App and Obtaining the OAuth Token
You must create the HEVO app in your Slack workspace and generate the OAuth token for configuring Slack as a Source in Hevo.
Note: You must log in as a Workspace Owner to perform these steps.
To create the HEVO app and obtain the OAuth token:
-
Navigate to the Your Apps page, and click Create an App.
-
In the Create an app dialog, click From scratch.
-
In the Name app & choose workspace pop-up window, do the following:
-
Specify the App Name.
-
Select the Slack workspace in which you want to create your app.
-
Click Create App.
-
-
In the left navigation bar, under Features, click OAuth & Permissions.
-
On the OAuth & Permissions page that appears, scroll down to the Scopes section and click Add an OAuth Scope.
-
From the drop-down list, search and add the following scopes:
-
channels:read
-
groups:read
-
im:read
-
mpim:read
-
usergroups:read
-
users:read
-
users:read.email
-
-
Scroll to the top of the page, under OAuth Tokens for Your Workspace, click Install to Workspace.
-
On the page that appears, click Allow.
-
From the OAuth Tokens for Your Workspace section, copy the Bot User OAuth Token and save it securely like any other password. Use this OAuth token while configuring your Hevo Pipeline.
Configuring Slack as a Source
Perform the following steps to configure Slack as the Source in your Pipeline:
-
Click PIPELINES in the Navigation Bar.
-
Click + CREATE PIPELINE in the Pipelines List View.
-
On the Select Source Type page, select Slack.
-
On the Configure your Slack Source page, specify the following:
-
Pipeline Name: A unique name for the Pipeline, not exceeding 255 characters.
-
OAuth Token: The OAuth token that you generated for your Slack workspace.
-
-
Click TEST & CONTINUE.
-
Proceed to configuring the data ingestion and setting up the Destination.
Data Replication
For Teams Created | Default Ingestion Frequency | Minimum Ingestion Frequency | Maximum Ingestion Frequency | Custom Frequency Range (in Hrs) |
---|---|---|---|---|
Before Release 2.21 | 1 Hr | 1 Hr | 24 Hrs | 1-24 |
After Release 2.21 | 6 Hrs | 30 Mins | 24 Hrs | 1-24 |
Note: The custom frequency must be set in hours as an integer value. For example, 1, 2, or 3 but not 1.5 or 1.75.
Hevo ingests all the objects in Full Load mode in each run of the Pipeline.
Schema and Primary Keys
Hevo uses the following schema to upload the records in the Destination database:
Data Model
The following is the list of tables (objects) that are created at the Destination when you run the Pipeline:
Object | Description |
---|---|
Channels | Contains a list of all channels in your Slack workspace. You can create these channels to organize conversations about specific projects or topics within or across teams. |
User Groups | Contains the details of the various groups of users in your Slack workspace, whom you can notify at once. For example, @managers, @directors, and @developers. |
Users | Contains the list of users who can access your Slack workspace. |
Source Considerations
-
Pagination: An API response for each Slack object fetches one page with up to 200 records.
-
Rate Limit: Slack imposes a limit of 20 API calls per minute. If the limit is exceeded, Hevo defers the ingestion till the limits reset. Read Rate Limits to know more about rate limits in Slack, and configure a suitable ingestion frequency for your Pipeline.
Limitations
-
Hevo currently does not support deletes. Therefore, any data deleted in the Source may continue to exist in the Destination.
-
Hevo does not provide you with the option to select the historical sync duration for loading historical data. All the historical data in your Slack account is loaded.
-
User Groups object is available only for paid subscription plans.
Revision History
Refer to the following table for the list of key updates made to this page:
Date | Release | Description of Change |
---|---|---|
Oct-22-2024 | NA | Updated section, Creating the HEVO App and Obtaining the OAuth Token as per the latest Slack UI. |
Mar-05-2024 | 2.21 | Updated the ingestion frequency table in the Data Replication section. |
Dec-07-2022 | 2.03 | New document. |