Sign In

Messaging Integrations

Connect Buildorado workflows with Slack, Microsoft Teams, Discord, Telegram, and WhatsApp for real-time notifications and team communication.

Messaging integrations let you send real-time notifications from your Buildorado workflows to the communication tools your team already uses. When a form is submitted, a payment is processed, or a workflow reaches a specific step, you can automatically post messages to channels, send direct messages, and alert the right people instantly. All messaging integrations authenticate via OAuth 2.0 and store credentials with AES-256 encryption through AWS KMS.

Slack

Slack is the most popular messaging integration in Buildorado. Connect your Slack workspace and send messages to any channel or direct message whenever a workflow executes.

Setting Up the Slack Integration

You have two options for connecting Slack:

Option A: Use Buildorado's OAuth (recommended)

  1. Navigate to Settings > Integrations in your Buildorado dashboard.
  2. Find Slack in the list and click Connect.
  3. A Slack authorization popup appears. Select the workspace you want to connect.
  4. Review the requested permissions and click Allow.
  5. The popup closes and Slack shows as Connected with your workspace name.

Option B: Use your own Slack app

  1. Create a new app at api.slack.com/apps.
  2. Under OAuth and Permissions, add the following scopes: chat:write, channels:read, groups:read, users:read, team:read.
  3. Install the app to your workspace and copy the Bot User OAuth Token.
  4. In Buildorado, go to Settings > Integrations > Slack and enter the token in the custom credentials field.

Inviting the Bot to Channels

After connecting, you must invite the Buildorado bot to any channel where you want it to post. In Slack, open the target channel and type:

/invite @Buildorado

Without this step, the bot will receive a not_in_channel error when attempting to post. This applies to both public and private channels.

Operations

sendMessage

Post a message to a Slack channel or direct message.

FieldTypeRequiredDescription
channelstringYesChannel name (e.g., #sales-leads) or channel ID
messagestringYesThe message body, supports Slack mrkdwn formatting
threadTsstringNoTimestamp of a parent message to reply in a thread
unfurlLinksbooleanNoWhether to show link previews (default: true)
unfurlMediabooleanNoWhether to show media previews (default: true)

listChannels

Retrieve a list of channels in the connected workspace. Useful for dynamically selecting a target channel.

FieldTypeRequiredDescription
includePrivatebooleanNoInclude private channels in the results (default: false)
limitnumberNoMaximum number of channels to return (default: 100)

Message Formatting with Slack mrkdwn

Slack uses its own markup syntax called mrkdwn. You can use these formatting options in the message field:

*bold text*
_italic text_
~strikethrough~
`inline code`
> block quote
• bullet point (use the bullet character)

Links: <https://example.com|Click here>
Code block:
` ` `
function hello() {
  return "world";
}
` ` `

User and Channel Mentions

Mention users and channels directly in your messages:

  • Mention a user: <@U0123456789> (use the Slack user ID)
  • Mention a channel: <#C0123456789> (use the channel ID)
  • Mention @here: <!here>
  • Mention @channel: <!channel>

Using Template Variables

Inject dynamic data from your workflow into Slack messages using the template variable syntax:

New lead submitted!
*Name:* {{contactForm.firstName}} {{contactForm.lastName}}
*Email:* {{contactForm.email}}
*Budget:* ${{contactForm.budget}}
*Source:* {{contactForm.referralSource}}

Rate Limits

Slack imposes rate limits on API calls. Buildorado respects these limits and queues messages when necessary.

LimitValue
Sustained rate50 requests per minute
Burst limit5 requests per second

If your workflow sends a high volume of messages, consider batching notifications or using a summary message instead of individual alerts.

Common Patterns

Notify sales team on high-value lead:

[Form: Lead Capture]
  -- Branch: budget > 10000 --
  -- [Slack: #enterprise-sales "High-value lead: {{form.name}} (${{form.budget}})"]

Thread replies for status updates:

Send the initial message, capture its timestamp from the output, and use it as threadTs in follow-up messages to keep updates organized in a single Slack thread.

Microsoft Teams

Microsoft Teams integration lets you post messages to team channels and send direct chat messages through Microsoft 365.

Setting Up Microsoft Teams

  1. Navigate to Settings > Integrations and click Connect next to Microsoft Teams.

  2. Sign in with your Microsoft 365 account in the authorization popup.

  3. An admin may need to grant consent for the application. The following permissions are requested:

    • ChannelMessage.Send -- Post messages to team channels
    • Chat.ReadWrite -- Send and read chat messages
    • Team.ReadBasic.All -- List teams
    • Channel.ReadBasic.All -- List channels within teams
  4. Once authorized, Teams shows as Connected.

Operations

sendMessage

Post a message to a Microsoft Teams channel.

FieldTypeRequiredDescription
teamIdstringYesThe ID of the team (use listTeams to find it)
channelIdstringYesThe ID of the channel (use listChannels to find it)
messagestringYesMessage content, supports HTML formatting

sendChatMessage

Send a direct message to a user or group chat.

FieldTypeRequiredDescription
chatIdstringYesThe chat ID or user email
messagestringYesMessage content

listTeams

Retrieve the list of teams the authenticated user belongs to.

listChannels

Retrieve the list of channels within a specific team.

FieldTypeRequiredDescription
teamIdstringYesThe ID of the team to list channels for

Tips for Microsoft Teams

  • Messages support basic HTML formatting: <b>bold</b>, <i>italic</i>, <a href="url">link</a>.
  • Use listTeams and listChannels operations to discover IDs, then hardcode them in your workflow or use dynamic selection.
  • Admin consent is typically required for organization-wide access. Work with your IT administrator to approve the Buildorado app.

Discord (Coming Soon)

Discord integration sends messages to Discord channels via webhooks. No bot token is required -- you only need a Discord webhook URL. This integration is currently in development and will be available in an upcoming release.

Setup

  1. In your Discord server, go to Server Settings > Integrations > Webhooks and create a new webhook.
  2. Copy the webhook URL provided by Discord.
  3. In your Buildorado workflow, add a Discord action node and paste the webhook URL into the webhookUrl field.

Operations

OperationDescription
sendWebhookMessageSend a text message to a Discord channel via webhook
sendEmbedSend a rich embed message with title, description, color, and fields

Discord messages support Markdown formatting: **bold**, *italic*, `code`, and code blocks with triple backticks.

Telegram (Coming Soon)

Telegram integration uses the Telegram Bot API to send messages to chats and groups. This integration is currently in development and will be available in an upcoming release.

Setup

  1. Create a bot through @BotFather on Telegram.
  2. Copy the bot token provided by BotFather.
  3. In Buildorado, go to Settings > Integrations > Telegram and enter the bot token.
  4. Add the bot to the group or start a conversation with it to obtain a chat ID.

Operations

OperationDescription
sendMessageSend a text message to a chat or group
sendPhotoSend an image with an optional caption
sendDocumentSend a file to a chat

Telegram messages support Markdown and HTML formatting. Use the parseMode field to select Markdown, MarkdownV2, or HTML.

WhatsApp (Coming Soon)

WhatsApp integration uses the WhatsApp Business API to send messages to customers. This integration is currently in development and will be available in an upcoming release.

Setup

  1. Set up a WhatsApp Business account through Meta Business Suite.
  2. Create a WhatsApp Business API application and obtain an access token.
  3. Register and verify your phone number with the WhatsApp Business API.
  4. In Buildorado, go to Settings > Integrations > WhatsApp and enter your credentials.

Operations

OperationDescription
sendMessageSend a text message to a phone number
sendTemplateSend a pre-approved message template

WhatsApp requires pre-approved message templates for business-initiated conversations. User-initiated conversations (replies within 24 hours) can use free-form text.

Choosing the Right Messaging Integration

ConsiderationRecommendation
Internal team notificationsSlack or Microsoft Teams
Customer notificationsWhatsApp or Telegram
Developer communityDiscord
Microsoft 365 environmentMicrosoft Teams
Simple bot notificationsTelegram

All messaging integrations support the template variable syntax for injecting dynamic data from form submissions and upstream workflow nodes. Combine messaging actions with conditional logic to route notifications to different channels based on form responses, priority levels, or any other criteria.

On this page

Messaging Integrations | Buildorado