Overview
Microsoft Teams integration lets your agent respond inside Teams chats and channels - a natural fit for internal tooling and organizations already standardized on Microsoft 365.Enterprise Ready
Built for Microsoft 365 organizations
Chats & Channels
DMs, group chats, and @mentions in team channels
Quick Start Available
Use Lua’s shared bot with no Azure setup
Bring Your Own Bot
Full control with your own Azure Bot registration
Two ways to connect
- Lua's Teams bot (quick start)
- Bring your own bot (advanced)
Recommended for most teams
- No Azure account, Bot resource, or app registration — nothing to set up on Microsoft’s side
- Install Lua’s ready-made Teams app and link your agent
- Best for getting started quickly, or when you don’t need your own app identity
Connection Method 1: Use Lua’s Teams bot (Quick Start)
The fastest way in — Lua hosts the bot for you. No Azure subscription, no Bot resource, no app registration, no client secrets to manage. You install one ready-made app and link your agent; that’s the whole job.
1
Open the dashboard
2
Open your agent and add a channel
Click Agents in the main side navigation, select your agent’s card, click the + (plus) icon to add a channel, then choose Microsoft Teams.
Screenshot: The agent’s add-channel (+) control and the channel options

3
Choose Use Lua's Teams bot
Pick Use Lua’s Teams bot. No Azure credentials are required for this path.
4
Install the Lua Teams app
The dashboard gives you a Teams app package to install (or a direct install link). In Microsoft Teams, an admin uploads the app: Apps → Manage your apps → Upload a custom app, then selects the package Lua provided. If your tenant restricts custom app uploads, a Teams admin may need to approve it first in the Teams admin center.
5
Connect your agent
Installing the app doesn’t yet link it to your agent — one quick step does. The dashboard gives you a Connect link. Open it: it starts a chat with the Lua bot and pre-fills a one-time connect message. Just send it, and the bot replies “Connected to agent…” — your organization is now linked to this agent.
Why this step exists: Lua’s bot is shared across many organizations, so this one-time link is how Lua learns which agent your organization belongs to. (Running your own bot instead? Then there’s no connect step — see Bring Your Own Azure Bot.)
The connect link is single-use and expires after 24 hours. If it expires before you use it, regenerate it from the dashboard.
6
Start chatting
@mention the bot in a team channel, or send it a direct message, and your agent will reply.
Done — with zero Azure setup. No subscription, no Bot resource, no secrets to rotate.
Connection Method 2: Bring Your Own Bot (Advanced)
Use this path if your organization requires its own Azure app registration, or you want the bot to appear under your own name and branding.
- In the Azure Portal, create an Azure Bot (Single Tenant), set its Messaging endpoint to
https://wa.heylua.ai/teams/webhook, and enable the Microsoft Teams channel. - Copy the bot’s App ID, create a client secret, and note your Tenant ID.
- In the Lua dashboard, choose Bring your own bot, paste those three values, and click Connect — your bot is now linked to your agent. Download the app package Lua generates, upload it to Teams, then @mention or DM the bot.
Full step-by-step walkthrough
Every click in Azure and Teams, with each concept explained, a values reference, and troubleshooting.
Notes & limitations
- Reactive replies and warm follow-ups only. Your agent replies wherever it’s been messaged or @mentioned. There is no cold-start path — you can’t message a Teams user who has never contacted your agent. See Channel Capabilities for the full outbound matrix.
- Where the bot replies. The bot responds in the same chat or channel it was messaged or @mentioned in — a DM gets a DM reply, a channel @mention gets a channel reply.
- Tenant admin approval. Depending on your Microsoft 365 tenant’s app policies, uploading a custom Teams app (Lua’s shared bot or your own manifest) may require a Teams admin to allow custom app uploads or approve the app in the Teams admin center.
- Further reading: Microsoft’s Azure Bot Service documentation and Teams app manifest schema.
Sending Proactive Messages
To message a Teams user your agent is already in conversation with, load theUser and call user.send(...), or use Channels.send with channel: 'teams' and to: { userId }:
Teams is warm-only — you can only reach a user who already has a conversation with your agent. See Proactive Messaging for the model and per-channel rules.
Next Steps
Slack
Add Slack support
Management
Manage all channels

