HubStor Inc.

How to Create a Slack Connector


This article will walk through the steps on how to configure a Slack connector within the HubStor Connector Service (HCS).   


The connector must be created before these settings can be applied. For information on creating a connector, refer to the article: How To Create Connectors In HubStor


The steps involved in creating a slack connector are: 

  1. Configuring the Slack environment 

  1. Creating a staging area

  1. Authenticating the Slack connector

  1. Configuring Slack connector settings 


Configuring The Slack Environment  


The settings required depend on the Slack plan. 


Free, Standard, or Plus Plans 


For Free, Standard or Plus plans, the HubStor Slack connector will use Slack’s Export capability to extract data. This type of connectivity uses a Slack user account and requires specific Workspace settings. 

User Account (Authentication)

If possible, create a specific Slack user account for the HubStor connector. This Slack user must have the 'Workspace Admin' account type assigned to it.     

When using an existing user for authentication, note the following: 
  1. The user may see messages from Slackbot detailing export activity while the HubStor connector is running.  
  2. The HubStor connector will perform housekeeping activities (removing old exports and export tokens) for exports created by its assigned user. You should remove all old exports assigned to the user prior to configuring the user to be used with the HubStor connector. 


Workspace Settings and Permissions 

Under Slack workspace settings, ensure the following settings are set: 

Enable the option 'Display members' email addresses'




Under Permissions, set message retention and deletion to maximum (or to beyond the intended crawl window).




Under Permissions, limit message editing and deletion to 1 week or less. Slack recommends a setting of 1-5 minutes. Slack has built-in expiry limits for ‘event’ retention. Changes to older content is not evented, and our connector will not refetch these messages. 



Under Settings, if 'File Retention & Deletion' setting is available, set to maximum.

Slack Enterprise (Discovery API)

Slack Enterprise plans allow the use of the Discovery API. This uses an API token for connectivity and has some specific Workspace Settings and Permissions requirements.

Authentication

For Enterprise accounts, contact HubStor to arrange to retrieve an Org token for HubStor.

Workspace Settings and Permissions

The following requirements/recommendations come directly from Slack.

  1. Required: The Retain all messages and also retain edit and deletion logs for all messages preference must be switched on and locked at org level.
    1. Without this setting on, you will only be able to pull the TS of the original message for edits (not each edit separately), and deleted messages will be unavailable.
    2. These settings have to be requested through Enterprise Grid orgs, so please plan for additional time if you need these changed.
  2. Recommended: Block edits and deletions of files, posts, and snippets.
    1. HubStor Note: These are important since Slack does not provide notification of changes to these and once captured, the connector will not re-scan the data.
  3. Recommended: Limit edit window to 1-5 mins and lock this at org level.
    1. HubStor Note: A setting of at most 1 week is important. Slack only provides a limited window of eventing for edits and deletions. Edits to old messages may not be evented and we may not receive the update.

Creating a Staging Area 

The HubStor Slack Connector will stage all Slack data from the workspace to a local folder on the Connector Service machine.

Ensure that a staging area folder is available for the connector to use. The staging area folder should have enough room to stage all the Slack data. Starting with 256 GB is recommended. It should also be restricted only to administrators (and the HubStor service account).

Note that long path support is not yet available for the Slack connector. The Staging area folder should be maintained in root of the drive (with no more than 35 characters of a path for the staging folder).

Authenticating the Slack Connector

For Slack Enterprise plans, contact HubStor to retrieve your Org token. See the next section on where to input this in the Connector UI.

For Slack Free, Standard and Plus plans: use the Slack Administration Utility tool to retrieve the authentication token.


1. Start the Slack Administration Utility and select the ‘Authenticate With Slack’ tab.
2. Enter your 'Slack Workspace URL' and press Go.



3. Login using the desired account for the HubStor connector, including the Multi-Factor authentication challenge if required. Once the Slack workspace is loaded, press Done. This will copy the token to the clipboard.  This will be used when configuring the connector under the next section.  



Configuring Slack Connector Settings

The following describes the Slack Connector settings available in the HubStor Connector Service (HCS) user interface. After creating the connector, use the “Update Connector…” button in the HCS UI to access the settings.



Basic Settings



Slack Connection Mode: 
  1. For Slack Enterprise plans with Discovery API enabled, Select 'Discovery API'.
  2. For Slack Free, Standard and Plus plans, Select 'Auto Export'.
Slack Workspace URL: Ignore for Slack Enterprise, otherwise set this to the Slack workspace web URL (e.g. “https://myworkspace.slack.com/”).
Auth Token: (enter the token added to the clipboard in Step3 the previous section)
  1. For Slack Enterprise, paste the org token retrieved during the process with HubStor.
  2. For Slack Free, Standard and Plus plans, paste the token retrieved using the Slack Administration Utility.
Staging Folder --  Enter the staging folder path here. Use the 'Validate' button to test connectivity with the Slack credentials entered.
Regenerate All Content During Next Crawl -- Select this option to regenerate all HTML files (including ones beyond the normal capture period. This is useful if there is a new connector feature or fix available. The option will be automatically disabled after a successful crawl.

Advanced Settings



      Enable Diagnostic Logging – This option is used to create a diagnostic file for HubStor support analysis

Export Capture Duration – This option controls the number of past days the connector will query Slack for data. This should be set to cover the permission period for message edit and deletions (See notes above on Configuring Your Slack Environment).

o   For the first ingestion, set this value very high (e.g. 365 days) to capture the base set of Slack data.

o   Once the initial crawl is complete, HubStor recommends a value of at most 7 days for efficient processing going forward.

o   Note: Slack currently appears to have a roughly 2 week retention on message edits/deletion change events. HubStor does not recommend setting higher than 7 days as it is possible that message edit/deletion events (shown in blue or red background in HTML) may be overwritten in subsequent crawls.

Export Poll Frequency – Defines the waiting period between polling of the Slack UI interface to see if the export is ready after an export is triggered
Export Timeout – The amount of time that the connector will allow for Slack to produce an export package, before giving up and producing an error.

Refresh Staging Area Only – This setting causes the connector to refresh the staging area only, stopping before updating any locations into the online Stor. This can be used if there is an issue with the staging area creation that needs to be addressed without any unwanted changes online.

Disable Updates of Posts and Snippets -- A snippet is plain text whereas blog post provides rich text formatting capability.  This setting is off by default, meaning the connector will update old snippets and posts. When turned on, the connector will redownload all snippets or blog posts that were previously captured, compare them to the current snapshot, and update if necessary.




    • Related Articles

    • Understanding Slack Connector Data

      This article discusses the content captured by the HubStor Slack Connector.  For information on creating or configuring a Slack Connector, refer to the article:  How to Create a Slack Connector For information on restoring data to Slack, refer to the ...
    • Restoring Slack Content

      This article discusses how to restore Slack content back into Slack after ingestion into HubStor. For information on creating or configuring a Slack Connector, refer to the article: How to Create a Slack Connector For information on Slack content ...
    • How To Create Connectors In HubStor

      This article describes the process of how to create connectors in the HubStor Connector Service (HCS).  Add Connector  In the HubStor Connector Service (HCS) app, go to  'Connectors' and click 'Add Connector '.      In the drop-down, select the type ...
    • How To Create A OneDrive Connector

      This article will walk through the process of configuring a connector that will capture OneDrive Sites.   Pre-requisites:  The connector must be created before these settings can be applied. For information on creating a connector, refer to the ...
    • Crawler Task fails with error 'There is not enough space on the disk' and 'Unable to create .hubstorinfo file'

      Symptom When the Crawler task runs, it may fail immediately and upon reviewing the Crawler Task Events, the following error shows: Error getting child locations from connector for location DC-Quotas Error building information for location descendant ...