Messaging Integrations
Connect messaging platforms to send automated messages, manage groups, and engage members across channels. These integrations work as action nodes in the Workflow Builder.
Overview
| Platform | Operations | Auth Method |
|---|---|---|
| Discord | Send message, manage roles, create invite | Bot token or Webhook URL |
| Twilio SMS | Send SMS, send MMS | Account SID + Auth Token |
| Slack | Send message, invite/remove from channel | Bot token or Webhook URL |
| Telegram | Send message, ban/unban, create invite link | Bot token (@BotFather) |
| Send message, send template | System User Access Token (Meta) | |
| Zalo | Send OA message, send ZNS, tag follower | OAuth2 (auto-refresh) |
| Viber | Send message | Auth token |
Discord
Setup
- Go to Discord Developer Portal
- Create a new application → go to Bot → create bot
- Enable these Privileged Intents: Server Members, Message Content
- Copy the Bot Token
- Invite the bot to your server with
Manage Roles,Send Messages,Create Invitepermissions
In Uni8:
- Go to Settings > Automations > Integrations > Discord
- Choose auth method:
- Bot Token — Full access (messages, roles, invites)
- Webhook URL — Send-only (simpler, no bot needed)
- Paste credentials and click Test Connection
Actions
Send Message
- Post a message to a specific channel
- Supports
{{ expressions }}for dynamic content (e.g.,{{ user.name }}) - Specify channel ID, message content, and optional embed
Manage Roles
- Add or remove a Discord role from a member
- Requires the member's Discord User ID (configured in their profile social links)
- Use case: Auto-assign a "Member" role when someone joins, or upgrade to "VIP" role on tier change
Create Invite
- Generate a server invite link with configurable expiration
- Useful for onboarding workflows — send personalized invite links to new members
Webhook Mode
For simple message-only needs:
- In Discord: Right-click channel → Edit Channel → Integrations → Create Webhook
- Copy the Webhook URL
- In Uni8: Use Webhook URL as the credential
Twilio SMS
Setup
- Sign up at Twilio Console
- Get a Twilio phone number
- Find your Account SID and Auth Token in the dashboard
In Uni8:
- Go to Settings > Automations > Integrations > Twilio SMS
- Enter Account SID and Auth Token
- Enter your Twilio phone number (sender)
- Click Test Connection
Actions
Send SMS
- Send a text message to a phone number
- The recipient's phone number comes from their profile or workflow expression
- Supports
{{ expressions }}for dynamic content - Example: Send order confirmation, event reminder, or membership renewal notice
Send MMS
- Send a message with media attachment (image URL)
- Useful for sending QR codes, event tickets, or promotional images
Important Notes
- Twilio charges per message — monitor usage in Twilio Console
- International SMS may require additional Twilio configuration
- Phone numbers must be in E.164 format (e.g.,
+84912345678)
Slack
Setup
- Create a Slack App at api.slack.com/apps
- Add bot scopes:
chat:write,channels:manage,groups:write - Install to your workspace and copy the Bot Token
Actions
- Send message — Post to a channel with custom text, username, and emoji
- Invite to channel — Add a member to a Slack channel
- Remove from channel — Remove a member from a channel
Webhook mode: Paste a Slack Incoming Webhook URL for send-only.
Telegram
Setup
- Message @BotFather on Telegram
- Create a new bot with
/newbotand copy the token - Add the bot to your group/channel as admin
Actions
- Send message — Send text (supports MarkdownV2 and HTML formatting)
- Ban member — Remove and ban a user from the group
- Unban member — Lift a ban
- Create invite link — Generate a shareable group/channel invite
Getting Chat IDs
Members need a Telegram Chat ID in their profile for direct messages. They can get it by messaging @RawDataBot and copying the numeric ID.
WhatsApp Business
Setup
- Register at Meta Business Suite
- Set up WhatsApp Business Cloud API
- Get your Phone Number ID and System User Access Token
Actions
- Send message — Send text to a phone number (recipient must have messaged your business first, or use a template)
- Send template — Send a pre-approved message template with dynamic parameters
Template Messages
WhatsApp requires pre-approved templates for outbound messages. Create templates in Meta Business Manager:
- Template name and language
- Header, body, footer content
- Dynamic parameters:
{{1}},{{2}}mapped to workflow expressions
Zalo
Setup
- Register at Zalo Developers
- Create an Official Account (OA)
- In Uni8: Connect via OAuth2 — click "Connect" and authorize (tokens auto-refresh every hour)
Actions
- Send OA message — Send notification to followers
- Send ZNS template — Send Zalo Notification Service template (requires ZNS approval)
- Tag follower — Add a user to a custom tag for segmentation
Viber
Setup
- Register at Viber Partners
- Create a bot account and copy the Auth Token
Actions
- Send message — Send 1-to-1 text message to a user
Message Conditions
Use the Can Send Message condition in workflows to check if a member has their platform ID configured before attempting to send.
How It Works
Add a Condition node before your messaging action:
- In Workflow Builder, add a Condition node
- Select Can Send Message
- Choose the platform:
telegram,discord,slack, orsms - The condition checks if the member has configured their platform ID in their profile social links
Example Workflow
Trigger: Membership purchased
↓
Condition: Can send Telegram message?
├── Yes → Send Telegram welcome message
└── No → Send email notification instead
This prevents failed delivery attempts and lets you create fallback paths.
Member Platform IDs
For messaging to work, members need to add their platform IDs in Profile > Social Links:
| Platform | What to Enter | How to Get It |
|---|---|---|
| Telegram | Chat ID (numeric) | Message @RawDataBot |
| Discord | User ID (numeric) | Enable Developer Mode → right-click user → Copy User ID |
| Slack | Member ID | Click profile → ··· → Copy member ID |
| SMS/WhatsApp | Phone number | E.164 format (e.g., +84912345678) |
Admins can configure which platforms are available in Profile Fields Configuration.
Using Expressions in Messages
All messaging actions support {{ }} expressions for dynamic content:
| Expression | Description |
|---|---|
{{ user.name }} | Member's display name |
{{ user.email }} | Member's email |
{{ triggerPayload.courseName }} | Course name from trigger |
{{ triggerPayload.eventTitle }} | Event title from trigger |
{{ triggerPayload.amount }} | Payment amount from trigger |
Related
- Integrations Setup — Credential management overview
- Data Integrations — Google Sheets, CRM, and Webhook
- Workflow Builder — Build automated workflows
- Profile Fields Configuration — Configure social links