Slack activities represent actions that can be performed programmatically in your Slack workspace through Thena workflows. These activities enable automated interactions with channels, messages, and users.

Quick reference

All available activities

Understanding activities

Activity types

• Message operations
• Reaction management
• Member management
• Channel operations

Usage patterns

• Workflow actions
• Automated responses
• Team management
• Content moderation

Message activities

postMessage

Send a new message to a Slack channel or user.

{
  "type": "object",
  "required": ["channel", "text"],
  "properties": {
    "channel": {
      "type": "string",
      "description": "Channel ID or user ID to send message to"
    },
    "text": {
      "type": "string",
      "description": "Message text content"
    },
    "thread_ts": {
      "type": "string",
      "description": "Optional timestamp of parent message for threading"
    },
    "blocks": {
      "type": "array",
      "description": "Optional Slack block kit elements"
    }
  }
}

editMessage

Edit an existing message in Slack.

{
  "type": "object",
  "required": ["channel", "ts", "text"],
  "properties": {
    "channel": {
      "type": "string",
      "description": "Channel ID containing the message"
    },
    "ts": {
      "type": "string",
      "description": "Timestamp of message to edit"
    },
    "text": {
      "type": "string",
      "description": "New message text"
    },
    "blocks": {
      "type": "array",
      "description": "Optional updated block kit elements"
    }
  }
}

deleteMessage

Delete a message from a channel.

{
  "type": "object",
  "required": ["channel", "ts"],
  "properties": {
    "channel": {
      "type": "string",
      "description": "Channel ID containing the message"
    },
    "ts": {
      "type": "string",
      "description": "Timestamp of message to delete"
    }
  }
}

Reaction activities

addReaction

Add a reaction emoji to a message.

{
  "type": "object",
  "required": ["channel", "ts", "name"],
  "properties": {
    "channel": {
      "type": "string",
      "description": "Channel ID containing the message"
    },
    "ts": {
      "type": "string",
      "description": "Timestamp of target message"
    },
    "name": {
      "type": "string",
      "description": "Emoji name without colons"
    }
  }
}

removeReaction

Remove a reaction emoji from a message.

{
  "type": "object",
  "required": ["channel", "ts", "name"],
  "properties": {
    "channel": {
      "type": "string",
      "description": "Channel ID containing the message"
    },
    "ts": {
      "type": "string",
      "description": "Timestamp of target message"
    },
    "name": {
      "type": "string",
      "description": "Emoji name to remove"
    }
  }
}

Member activities

addMember

Add a user to a channel.

{
  "type": "object",
  "required": ["channel", "user"],
  "properties": {
    "channel": {
      "type": "string",
      "description": "Channel ID"
    },
    "user": {
      "type": "string",
      "description": "User ID to add"
    }
  }
}

removeMember

Remove a user from a channel.

{
  "type": "object",
  "required": ["channel", "user"],
  "properties": {
    "channel": {
      "type": "string",
      "description": "Channel ID"
    },
    "user": {
      "type": "string",
      "description": "User ID to remove"
    }
  }
}

Channel activities

joinChannel

Join a public channel.

{
  "type": "object",
  "required": ["channel"],
  "properties": {
    "channel": {
      "type": "string",
      "description": "Channel ID to join"
    }
  }
}

leaveChannel

Leave a channel.

{
  "type": "object",
  "required": ["channel"],
  "properties": {
    "channel": {
      "type": "string",
      "description": "Channel ID to leave"
    }
  }
}

Using activities in workflows

1

Select activity

Choose the appropriate Slack activity for your workflow

2

Configure parameters

Set required and optional parameters

3

Handle responses

Process the activity response in your workflow

4

View executions

Monitor and track your Slack activities through the workflow executions page.

Best practices

Execution monitoring

• Check activity status regularly
• Monitor execution times
• Track success rates
• Set up alerts for failures

Activity tracking

• Review execution logs
• Track rate limits
• Monitor API usage
• Analyze performance patterns