Capabilities
- Direct messaging — interact with the bot in a 1:1 personal chat.
- Channel @mentions — mention the bot in any team channel to ask questions visible to the whole channel.
- Threaded conversations — each @mention in a channel starts a thread; replies within it continue the same conversation and report.
- Rich responses — text and markdown tables directly in Teams.
- Permission-aware — channel mentions query only public agents; DMs also include the user’s private agents.
How to integrate
This process requires:- Admin access to BOW (to manage integrations)
- Access to the Azure Portal (to register a bot)
- Admin access to Microsoft Teams (to sideload the app)
Teams delivers events to BOW over HTTPS, so your BOW server must be reachable at a public URL.
Step 1: Register a Bot in Azure
- Go to the Azure Portal.
- Search for Azure Bot and click Create.
- Fill in the required fields:
- Bot handle: A unique name for your bot (e.g.,
bow-bot) - Subscription: Select your Azure subscription
- Resource group: Create new or select existing
- Type of App: Select Multi Tenant
- Creation type: Select Create new Microsoft App ID
- Bot handle: A unique name for your bot (e.g.,
- Click Review + Create, then Create.
- Once the resource is created, go to the bot resource.
Step 2: Get the App ID and Client Secret
- In the Azure Bot resource, go to Configuration.
- Copy the Microsoft App ID — this is your bot’s App ID.
- Click Manage Password (next to the App ID) to go to the App Registration’s Certificates & secrets page.
- Click New client secret, give it a description, and click Add.
- Copy the Value of the secret immediately (it won’t be shown again). This is your Client Secret.
Step 3: Configure the Messaging Endpoint
- In the Azure Bot resource, go to Configuration.
- Set the Messaging endpoint to your BOW application’s webhook URL:
- Click Apply.
Step 4: Enable the Teams Channel
- In the Azure Bot resource, go to Channels.
- Click on Microsoft Teams to enable it.
- Accept the terms and click Apply.
Step 5: Connect in BOW
- In BOW, navigate to Settings > Integrations.
- Click Integrate (or Settings) for the Microsoft Teams integration.
- A modal will appear. Enter the following:
- App ID: The Microsoft App ID from Step 2
- Client Secret: The client secret value from Step 2
- Tenant ID: Your Microsoft 365 tenant ID (found in Azure Active Directory > Overview)
- Click Connect. If successful, the modal will close and the UI will show that Teams is connected.
Step 6: Create the Teams App Manifest
Create a folder with three files: manifest.jsonYOUR-APP-ID-HERE with the Microsoft App ID from Step 2, and YOUR-BOW-DOMAIN.com with your BOW instance domain.
color.png — A 192x192 full-color icon for your bot.
outline.png — A 32x32 transparent outline icon for your bot.
Step 7: Install the Bot in Teams
- Zip the three files together:
- Open Microsoft Teams.
- Go to Apps (in the left sidebar) → Manage your apps → Upload an app.
- Select Upload a custom app and choose the
bot.zipfile. - Click Add to install the bot.
If you see an error about a duplicate App ID, go to Apps → Manage your apps, find the existing app, and click Update to upload the new version instead.
How to use
Account linking
If a user’s Teams email matches their BOW account email, they are linked automatically on first contact. Otherwise the bot responds with a verification card — click Verify Account and log in to BOW to link the accounts. This is a one-time step.Chat with the bot
Option A: Direct Messages (1:1 Chat)- Open a 1:1 chat with the bot in Teams.
- Send your query or command.
- The bot will reply with a link to the new report, followed by the response with text and data.
- Continue the conversation by sending more messages — follow-up messages will extend the same report.
- In any team channel, @mention the bot followed by your question (e.g., “@BOW Bot what were last month’s sales?”).
- The bot will respond in a thread on your message.
- Reply in the thread (with @mention) to continue the conversation.
In channels, the bot only receives messages where it is @mentioned — this is a Teams platform requirement. In 1:1 chats, no @mention is needed.
When using channel mentions, only public agents are queried since responses are visible to everyone. For access to private agents, use DMs instead.
