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.
-
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. Refer to section, Creating the HEVO App and Obtaining the OAuth Token for the steps to do this.
-
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. To do so:
-
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 Basic Information page, under Add features and functionality section, click Permissions.
-
In 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.
-
In 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.
You have successfully created the OAuth token. Refer to section, Configuring Slack as Source for steps to create a 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 in the Pipelines List View.
-
In the Select Source Type page, select Slack.
-
In 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
Default Pipeline Frequency | Minimum Pipeline Frequency | Maximum Pipeline Frequency | Custom Frequency Range (Hrs) |
---|---|---|---|
1 Hr | 1 Hr | 24 Hrs | 1-24 |
Note: You must set the custom frequency in hours as an integer value. For example, 1, 2, 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 a maximum of 20 API calls per minute to ensure that their system remains stable for usage by all users. 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 |
---|---|---|
Dec-07-2022 | 2.03 | New document. |