Slack

tap-slack (mashey variant)🥈

Team communication tool

The tap-slack extractor pulls data from Slack that can then be sent to a destination using a loader.

Alternate Implementations

Getting Started

Prerequisites

If you haven't already, follow the initial steps of the Getting Started guide:

  1. Install Meltano
  2. Create your Meltano project

Installation and configuration

  1. Add the tap-slack extractor to your project using
    meltano add
    :
  2. meltano add extractor tap-slack --variant mashey
  3. Configure the tap-slack settings using
    meltano config
    :
  4. meltano config tap-slack set --interactive
  5. Test that extractor settings are valid using
    meltano config
    :
  6. meltano config tap-slack test

Next steps

If you run into any issues, learn how to get help.

Capabilities

The current capabilities for tap-slack may have been automatically set when originally added to the Hub. Please review the capabilities when using this extractor. If you find they are out of date, please consider updating them by making a pull request to the YAML file that defines the capabilities for this extractor.

This plugin has the following capabilities:

  • catalog
  • discover
  • state

You can override these capabilities or specify additional ones in your meltano.yml by adding the capabilities key.

Settings

The tap-slack settings that are known to Meltano are documented below. To quickly find the setting you're looking for, click on any setting name from the list:

You can also list these settings using

meltano config
with the list subcommand:

meltano config tap-slack list

You can override these settings or specify additional ones in your meltano.yml by adding the settings key.

Please consider adding any settings you have defined locally to this definition on MeltanoHub by making a pull request to the YAML file that defines the settings for this plugin.

Sync Archived Channels (archived_channels)

  • Environment variable: TAP_SLACK_ARCHIVED_CHANNELS
  • Default Value: false

Specifies whether the tap will sync archived channels or not. Note that a bot cannot join an archived channel, so unless the bot was added to the channel prior to it being archived it will not be able to sync the data from that channel. Default is false.


Configure this setting directly using the following Meltano command:

meltano config tap-slack set archived_channels [value]

Channels to Sync (channels)

  • Environment variable: TAP_SLACK_CHANNELS

Optionally specify specific channels to sync. By default the tap will sync all channels it has been invited to, but this can be overriden to limit it ot specific channels. Note this needs to be channel ID, not the name, as recommended by the Slack API. To get the ID for a channel, either use the Slack API or find it in the URL.


Configure this setting directly using the following Meltano command:

meltano config tap-slack set channels [value]

Date Window Size (date_window_size)

  • Environment variable: TAP_SLACK_DATE_WINDOW_SIZE
  • Default Value: 7

Specifies the window size for syncing certain streams (messages, files, threads). The default is 7 days.


Configure this setting directly using the following Meltano command:

meltano config tap-slack set date_window_size [value]

Join Public Channels (join_public_channels)

  • Environment variable: TAP_SLACK_JOIN_PUBLIC_CHANNELS
  • Default Value: false

Specifies whether to have the tap auto-join all public channels in your ogranziation. Default is false.


Configure this setting directly using the following Meltano command:

meltano config tap-slack set join_public_channels [value]

Join Private Channels (private_channels)

  • Environment variable: TAP_SLACK_PRIVATE_CHANNELS
  • Default Value: true

Specifies whether to sync private channels or not. Default is true.


Configure this setting directly using the following Meltano command:

meltano config tap-slack set private_channels [value]

Sync Start Date (start_date)

  • Environment variable: TAP_SLACK_START_DATE

Determines how much historical data will be extracted. Please be aware that the larger the time period and amount of data, the longer the initial extraction can be expected to take.


Configure this setting directly using the following Meltano command:

meltano config tap-slack set start_date [value]

API Token (token)

  • Environment variable: TAP_SLACK_TOKEN

Your Slack API Token. To obtain a token for a single workspace you will need to create a Slack App in your workspace and assigning it the relevant scopes. The minimum required scopes for the tap are:

  • channels:history
  • channels:join
  • channels:read
  • files:read
  • groups:read
  • links:read
  • reactions:read
  • remote_files:read
  • remote_files:write
  • team:read
  • usergroups:read
  • users.profile:read
  • users:read

Configure this setting directly using the following Meltano command:

meltano config tap-slack set token [value]

Something missing?

This page is generated from a YAML file that you can contribute changes to.

Edit it on GitHub!

Looking for help?

If you're having trouble getting the tap-slack extractor to work, look for an existing issue in its repository, file a new issue, or join the Meltano Slack community and ask for help in the
#plugins-general
channel.

Install

meltano add extractor tap-slack --variant mashey

Maintenance Status

  • Maintenance Status

Repo

https://github.com/Mashey/tap-slack
  • Stars
  • Forks
  • Last Commit Date
  • Open Issues
  • Open PRs
  • Contributors
  • License

Maintainer

  • Mashey

Meltano Stats

  • Projects (Last 3 Months)

Keywords

  • api