Skip to main content
Like Discord, Slack uses a webhook-based approach for posting messages.

Quirks & Gotchas

Webhook-Based Posting

Slack requires you to connect a workspace and select channels. We use incoming webhooks to post messages.
  • You must be a workspace admin to connect.
  • Posts appear as a bot message in the selected channel.

Channel Selection Required

You must specify a channelId in your post data. Available channels are in socialAccount.channels.

Generous Character Limit

Slack allows up to 30,000 characters per message-much more than most platforms.

Custom Bot Identity

Like Discord, you can customize the bot appearance:
  • username: Up to 80 characters.
  • avatarUrl: A URL to an image for the bot’s avatar.

Post Options

FieldTypeDescription
channelIdstringRequired. The channel to post to. Found in socialAccount.channels.
textstringMessage content. Max 30,000 characters.
uploadIdsstring[]Media attachments.
usernamestringCustom display name. Max 80 characters.
avatarUrlstringCustom avatar URL. Max 2048 characters.

Media Limits

ConstraintValue
Files0-4 (images and/or videos, mixed allowed)
Video max size1 GB
Image max size1 GB
TextMax 30,000 characters
See Platform Limits for more details.

Analytics

For general analytics concepts, see the Analytics Overview. Slack does not provide analytics via its API. All metrics return 0. It’s a workspace tool, not a social media platform.
MetricNote
impressionsReturns 0
viewsReturns 0
likesReturns 0
commentsReturns 0

Example

await bundle.post.create({
  socialAccountTypes: ["SLACK"],
  data: {
    SLACK: {
      channelId: "C0123456789",
      text: "New product launch! Check it out.",
      username: "Marketing Bot"
    }
  }
});