Slack Dynamic OAuth2 Account
In this article
Overview
You can use this account type to connect Slack Snaps with data sources that use Dynamic OAuth2 accounts using either a Bot User Token (Bot Token) or a User Token.
Expression-enabled authentication fields, such as Username, Password, and Client Secret, support Secrets Management, a SnapLogic add-on that allows you to store endpoint credentials in a third-party secrets manager, such as AWS Secrets Manager, Azure Key Vault, or HashiCorp Vault. During validation and execution, pipelines obtain the credentials directly from the secrets manager. Learn more: Configure Accounts to use secrets.
Prerequisites
Valid Slack app that provides the following details:
- Bot Token.
- User Token.
- Redirect (callback) URLs. See Configuring Redirect URLs for your app for details.
See Start building Slack apps for details about creating an app. Once you install the app in your workspace, you can find these tokens in the https://api.slack.com/apps/<appid>/oauth? page, where <appid> is your application ID, which is populated in the browser's address bar after installing your app.
Limitations
- Bot Tokens do not work with the Search, Channel Operations, and Workspace Operations Snaps.
- User Tokens can perform all actions on individual workspaces, but the Enterprise Grid-based operations require User Tokens of a Slack Enterprise Admin or Owner.
Known Issues
None.
Account Settings
You can create a Slack Dynamic OAuth2 account for a Bot User or a generic user.
Parameter | Data Type | Description | Default Value | Example |
---|---|---|---|---|
Label | String | Required. Specify a unique label for the account. | N/A | Slack_Dynamic_OAuth_Bot |
Access Token | String/Expression | Required. Copy the value in Bot User OAuth Access Token or OAuth Access Token from the OAuth & Permissions section https://api.slack.com/apps/<App_ID>/oauth? and paste it into this field. <App_ID> corresponds to the Slack App you created for your Slack workspace. Updating Scopes for your app When you update the list of Scopes for your Slack app in the OAuth Tokens & Redirect URLs section of the app, you must click Re-install app to ensure that the latest set of scopes take effect. Access Tokens By default, Slack tokens do not expire. If you have an Enterprise Admin account, you can set an expiry duration for your app's user token. See Revoke All OAuth Tokens to learn more about revoking all your OAuth tokens, if required. | N/A | xoxb-1331052996481-1411658495648-zrrpuI4BMvBQaRbqQABz3Zzx |
Header authenticated | Check box | Select this check box to specify that Slack uses the bearer header authentication. | Not Selected | Selected |
Configuring Redirect URLs for your app
While creating the Slack app, you must configure a Redirect (callback) URL for Slack to verify and authorize the communication between the app and your SnapLogic environment.
- Open https://api.slack.com/apps/<app_ID>/oauth? in your browser, where <app_ID> is the 11-character alphanumeric identifier (starting with 'A') for your Slack app.
For example, https://api.slack.com/apps/A01AYUSRU5V/oauth? . You must log in to the site if you do not have a valid session running beforehand. - In the left navigation, navigate to Features > OAuth & Permissions, and then scroll down to the Redirect URLs section.
- Click Add New Redirect URL.
Enter the redirect URL in the following format:
https://<control-plane-name>.snaplogic.com/api/1/rest/admin/oauth2callback/<snap-pack-name>
where the<control-plane-name>
corresponds to the domain part of your SnapLogic URL—elastic (global control plane) or emea (EMEA control plane).
For example:https://elastic.snaplogic.com/api/1/rest/admin/oauth2callback/slack
https://emea.snaplogic.com/api/1/rest/admin/oauth2callback/slack
https://elastic.snaplogic.com/api/1/rest/admin/oauth2callback/slack
Slack app with REST Snap Pack
If you intend to use your Slack app with the REST Snap Pack, add the Redirect URL: https://<control-plane-name>/api/1/rest/admin/oauth2callback/rest in addition to the slack Redirect URL that you added in Step 4.
Click Add, and click Save URLs.
Revoke All OAuth Tokens
You can revoke all the OAuth tokens that you generated for your app if you want to revoke the various access permissions provided to your app's users.
- Open https://api.slack.com/apps/<YOURAPPID>/oauth? in your browser, or select OAuth & Permissions from your app's Features section from the left navigation.
- Scroll down to the Revoke All OAuth Tokens section, and click Revoke Tokens.
This revokes all the OAuth tokens from your app. You must repeat the Token Generation process if you want to generate new tokens.
Troubleshooting
Error | Reason | Resolution |
---|---|---|
Authentication failed | You have entered an incorrect token. | Verify that you have copied the correct token value for the account and the application has the required access privileges. |
Snap Pack History
Related content
Have feedback? Email documentation@snaplogic.com | Ask a question in the SnapLogic Community
© 2017-2024 SnapLogic, Inc.