Before you begin
- ✓NIVA botmaster account with a bot configured and active
- ✓Slack workspace where you have Admin or Owner access
Step-by-step setup
- 1
Create a Slack App
- Go to https://api.slack.com/apps and sign in
- Click Create New App → choose From scratch
- Enter a display name (e.g. NIVA Bot) and select your workspace
- Click Create App
- 2
Add Bot Permissions
- In the left sidebar click OAuth & Permissions
- Scroll to Scopes → Bot Token Scopes
- Click Add an OAuth Scope and add:
chat:write - Add a second scope:
app_mentions:read
- 3
Install the App to Your Workspace
- Still on OAuth & Permissions, scroll to the top
- Click Install to Workspace → Allow
- Copy the Bot User OAuth Token (starts with
xoxb-). You will need this next
- 4
Get Your Signing Secret
- In the left sidebar click Basic Information
- Scroll to App Credentials
- Copy the Signing Secret
- 5
Configure in NIVA Botmaster
- Open your NIVA botmaster → Omnichannel in the sidebar
- Click Configure on the Slack card
- Paste the Bot OAuth Token (xoxb-…)
- Paste the Signing Secret
- Optionally select a persona, then click Save & Activate
- Copy the Webhook URL shown after saving
Keep the Webhook URL. You will paste it in the next step. - 6
Enable Event Subscriptions
- Back in Slack App settings → Event Subscriptions
- Toggle Enable Events ON
- Paste your Webhook URL into Request URL
- Wait for the ✓ Verified badge to appear
- Under Subscribe to bot events click Add Bot Event
- Add:
message.channels,message.im,app_mention - Click Save Changes
- 7
Invite the Bot to a Channel
- Open any Slack channel
- Type
/invite @YourBotNameand send - Send a test message. The bot should reply within 2–3 seconds
For DMs just open a direct message with the bot. No invite needed.
Troubleshooting
URL not verified (red ✗)
Your server is not publicly reachable. Use ngrok for local dev.
Bot does not reply
Check the Slack card shows Active in NIVA Omnichannel.
not_in_channel error
Invite the bot to the channel first with /invite.
invalid_auth error
Token copied incorrectly. Regenerate from OAuth & Permissions.