List
Read live records straight from the Slack API.
Load Slack users into the warehouse or AI app you already run.
Source
Slack

Overview
The Airbyte Slack connector extracts data from Slack and loads it into 50+ destinations such as Snowflake, BigQuery, Databricks or Postgres, with full refresh and incremental sync. It publishes 5 streams you can select per connection.
Land 5 Slack tables in 50+ destinations on a schedule you control.
Read, create, update and delete Slack records at runtime through typed entity actions.
Query synced Slack data with filters, sorting and semantic search, without spending Slack API rate limits.
Pull only the records that changed since the last run instead of reloading everything.
5 streams
| Sync modes | FullIncr. |
|---|
| Sync modes | FullIncr. |
|---|
| Sync modes | FullIncr. |
|---|
| Sync modes | FullIncr. |
|---|
| Sync modes | FullIncr. |
|---|
Setup
First, navigate to the Slack source connector page on Airbyte.com.
Click on the "Add Source" button to begin the process of adding your Slack credentials.
In the "Connection Configuration" section, enter a name for your Slack connection.
Next, enter your Slack workspace's API token in the "API Token" field. You can generate an API token by following the instructions in the Airbyte documentation.
In the "Channels" field, enter the names of the Slack channels you want to sync data from. You can enter multiple channels by separating them with commas.
If you want to filter the data that is synced from Slack, you can enter a date range in the "Start Date" and "End Date" fields.
Once you have entered all the necessary information, click on the "Test" button to ensure that your credentials are valid and that Airbyte can connect to your Slack workspace.
If the test is successful, click on the "Save & Continue" button to save your Slack connection.
You can now use your Slack source connector to sync data from your Slack workspace to your destination of choice.
| Field | Type | Description |
|---|---|---|
| join_channels* | boolean | Whether to join all channels or to sync data only from channels the bot is already in. If false, you''ll need to manually add the bot to all the channels from which you''d like to sync messages. |
| lookback_window* | integer | How far into the past to look for messages in threads, default is 0 days |
| start_date* | string | UTC date and time in the format 2017-01-25T00:00:00Z. Any data before this date will not be replicated. |
| channel_filter | array | A channel name list (without leading '#' char) which limit the channels from which you'd like to sync. Empty list means no filter. |
| channel_messages_window_size | integer | The size (in days) of the date window that will be used while syncing data from the channel messages stream. A smaller window will allow for greater parallelization when syncing records, but can lead to rate limiting errors. |
| credentials | object | Choose how to authenticate into Slack |
| include_archived_channels | boolean | Whether to include archived channels in the sync. When disabled (default), archived channels are excluded from the Slack API response, reducing the number of API calls for downstream streams such as channel_messages, threads, and channel_members. Enable this option if you need to sync data from archived channels. |
| include_private_channels | boolean | Whether to read information from private channels that the bot is already in. If false, only public channels will be read. If true, the bot must be manually added to private channels. |
7 actions
Read live records straight from the Slack API.
Fetch a single record by ID.
Query synced data with filters and sorting, with no API rate limits.
Write a new record back into Slack.
Patch fields on an existing record.
Natural-language search across synced Slack records.
Remove a record.
Full parameter-level details live in the Slack entity reference.
Hybrid deployment
The data plane runs in your environment. Records, credentials and keys stay with you; the control plane only receives configuration and job metadata.
Your environment
Airbyte control plane
Use cases
List all users in my Slack workspace
Show me all public channels
Show me details for a specific public channel
Show me recent messages in a public channel
Show me thread replies for a recent message
List all channels I have access to
Show me user details for a workspace member
How many members are in each public channel?
Send a message to a channel saying 'Hello team!'
Post a message in the general channel
Update the most recent message in a channel
Create a new public channel called 'project-updates'
Create a private channel named 'team-internal'
Rename a channel to 'new-channel-name'
Set the topic for a channel to 'Daily standup notes'
Update the purpose of a channel
Add a thumbsup reaction to the latest message in a channel
React with :rocket: to the latest message in a channel
Reply to a recent thread with 'Thanks for the update!'
Invite a user to a channel
Add a team member to the #project-updates channel
Send an ephemeral message to a user in a channel
Whisper a private reminder to a user in #general
Schedule a message in a channel for tomorrow at 9am
Send a reminder to a channel at 5pm today
Delete the bot's last message in a channel
Remove the :thumbsup: reaction from a message
Archive the #old-project channel
Remove a user from the #team channel
Pin the latest important message in a channel
Add a bookmark link to a channel
Join the #announcements channel
Have the bot join a public channel
What messages were posted in channel channel_id last week?
Show me the conversation history for channel channel_id
Search for messages mentioning keyword in channel channel_id
FAQ
No. One Slack authorization powers both the scheduled syncs that land data in your destination and the entity actions your agents call at runtime.
No. Entity actions read and write through the Slack API as they are called, so they work immediately. Context store search is the exception: it queries data Airbyte has already synced, which is what lets it filter and sort without spending API rate limits.
5 streams: Channels (Conversations), Channel Members (Conversation Members), Messages (Conversation History), Users, Threads (Conversation Replies).
Yes. The Slack connector supports incremental sync on selected streams, and full refresh on every stream.
Run the Slack connector on Cloud, OSS, Hybrid. Hybrid deployments keep the data plane in your environment while the control plane orchestrates syncs.
Didn't find your answer? Talk to sales
Free 14-day trial. One connection powers your scheduled syncs and your live Slack actions.