Skip to main content

Slack Wrkbot — Application Overview

Wrk Product avatar
Written by Wrk Product
Updated over a week ago

Slack is a business communication platform used by teams to collaborate through channels, direct messages, files, and reactions. Slack is commonly used by operations, engineering, support, and customer-facing teams to centralize real-time communication and workflow updates.

The Slack integration within the Wrk platform allows you to automate messaging, user and channel management, file access, and advanced API interactions by calling the Slack Web API through prebuilt Wrk Actions.

This document provides an overview of how Slack integrates into Wrk, how authentication works, general API behaviour, and a complete list of available Wrk Actions.


Authentication

Slack supports multiple authentication methods within Wrk, allowing flexibility depending on workspace policies and use cases.

Supported Authentication Methods

Method

Description

OAuth 2.0

Recommended method using Slack’s OAuth flow

OAuth 2.0 Authentication

When connecting Slack via OAuth:

  • Authentication is initiated directly inside Wrk.

  • Users are redirected to Slack to authorize access.

  • Wrk receives an access token that is used for all subsequent API calls.

  • Tokens are scoped based on the permissions granted during authorization.

If authentication fails or the token is revoked, Slack returns an HTTP 401 Unauthorized response.

Important Notes

  • Tokens are tied to a specific workspace.

  • Missing scopes will cause Slack to return permission-related errors.

  • Revoking the app or regenerating tokens requires reauthentication in Wrk.


General API Behaviour

Slack Web API Overview

The Slack integration uses the Slack Web API. Most interactions are performed by calling method-based endpoints such as chat.postMessage, conversations.list, or users.info.

Each API request generally includes:

  • An authenticated token

  • A method name

  • A JSON payload of parameters

Conversations and IDs

Slack uses string-based IDs for all primary objects:

  • Users (UXXXXXX)

  • Channels and conversations (CXXXXXX, GXXXXXX, DXXXXXX)

  • Messages (timestamp-based IDs)

These IDs must be passed exactly as returned from the API.

Pagination

Many Slack endpoints return paginated results using cursor-based pagination.

Key details:

  • Responses may include a response_metadata.next_cursor value.

  • If next_cursor is present, it must be passed into the next request.

  • An empty cursor indicates no additional pages.

Rate Limits

Slack enforces tiered rate limits based on:

  • API method

  • Workspace

  • App installation

If rate limits are exceeded:

  • Slack returns HTTP 429 Too Many Requests.

  • A Retry-After header indicates when requests may resume.

Message Formatting

Slack messages may include:

  • Plain text

  • Block Kit layouts

  • Attachments

  • Reactions and metadata

Errors and Troubleshooting

Common Slack API errors include:

  • invalid_auth – token is missing or invalid

  • missing_scope – required permission not granted

  • channel_not_found – invalid or inaccessible channel

  • rate_limited – request volume exceeded

Slack errors are returned with descriptive error codes in the response body.


Available Wrk Actions for Slack

Wrk provides a curated set of Slack Actions that map directly to commonly used Slack Web API methods.

  • Download file from Slack as Wrkbot

  • Send a message in Slack as Wrkbot

  • React to a message in Slack as Wrkbot

  • Perform an API call in Slack as Wrkbot

  • Retrieve user details from Slack as Wrkbot

  • Retrieve channel details from Slack as Wrkbot

  • Delete a message in Slack as Wrkbot

  • Invite users to a channel in Slack as Wrkbot

  • Remove a reaction from an item in Slack as Wrkbot

  • Retrieve a conversation's history of messages and events from Slack as Wrkbot

  • Retrieve a user with an email address from Slack as Wrkbot

  • Retrieve all channels in a Slack team from Slack as Wrkbot

  • Retrieve all users in a Slack team from Slack as Wrkbot

  • Retrieve information about a conversation from Slack as Wrkbot

  • Retrieve members of a conversation from Slack as Wrkbot

  • Retrieve reactions for an item from Slack as Wrkbot

  • Schedule a message to be sent to a channel in Slack as Wrkbot

  • Update a message in Slack as Wrkbot


Additional Resources

Slack Web API Overview: https://docs.slack.dev/apis/web-api/

Slack API Methods Reference: https://docs.slack.dev/reference/methods/

Authentication Documentation: https://docs.slack.dev/apis/authentication/

Did this answer your question?