Service Azure qui fournit un environnement intégré pour le développement de bot.
Azure Bot Service / Microsoft Teams: how to provision multiple bots per customer at scale without one marketplace app per agent?
Service / technologies: Azure Bot Service, Bot Framework, Microsoft Teams, Teams app manifest, Microsoft Entra ID (multi-tenant app registration), Teams Store / marketplace.
Scenario: I develop a multi-tenant autonomous agent platform. Each customer creates several agents in my product, and I want every one of those agents to be reachable as its own conversational entity in Microsoft Teams.
Today I publish a single Azure Bot in the marketplace. Because there is only one bot registration and therefore one Teams app, each customer must choose which single agent to connect to Teams; the others are unreachable.
What I've tried / considered:
- One Azure Bot + one marketplace app per agent — this doesn't scale: each new agent would require a new bot registration, a new Entra app registration, a new manifest, and re-publication. It also isn't automatable, since to my knowledge Microsoft does not expose a public API to create Azure Bot resources and their Teams channel registrations programmatically. (Is that correct, or is provisioning possible via ARM/Bicep, the Azure CLI
az botcommands, or the Bot Service REST API?) - A single bot acting as a router — one bot registration where the user selects the target agent within the conversation (command, adaptive card, or one Teams conversation/channel per agent). This scales, but every agent shares the same identity, name, and icon, which is a poor experience.
Desired outcome: Guidance on the recommended architecture for exposing N agents per tenant in Teams, specifically:
- Is a single multi-tenant bot with in-conversation routing the intended pattern, or is there a supported way to give each agent a distinct Teams identity?
- Can Azure Bot resources and their Teams channel be provisioned programmatically (ARM template, Azure CLI, REST API)? If so, which permissions and quotas apply?
- Would Teams app templating / a Line of Business (LOB) app uploaded per tenant, or the newer Microsoft 365 Agents SDK / declarative agents in Copilot, be a better fit for this multi-agent-per-customer model?
Environment: Multi-tenant SaaS, bots published via the Teams Store, customers on Microsoft 365 commercial tenants.
Documentation consulted: [list the specific Bot Service and Teams publishing docs you've read].
Tag: azure-bot-service (add microsoft-teams-development if the tag picker allows a second one).Service / technologies: Azure Bot Service, Bot Framework, Microsoft Teams, Teams app manifest, Microsoft Entra ID (multi-tenant app registration), Teams Store / marketplace.
Scenario: I develop a multi-tenant autonomous agent platform. Each customer creates several agents in my product, and I want every one of those agents to be reachable as its own conversational entity in Microsoft Teams.
Today I publish a single Azure Bot in the marketplace. Because there is only one bot registration and therefore one Teams app, each customer must choose which single agent to connect to Teams; the others are unreachable.
What I've tried / considered:
- One Azure Bot + one marketplace app per agent — this doesn't scale: each new agent would require a new bot registration, a new Entra app registration, a new manifest, and re-publication. It also isn't automatable, since to my knowledge Microsoft does not expose a public API to create Azure Bot resources and their Teams channel registrations programmatically. (Is that correct, or is provisioning possible via ARM/Bicep, the Azure CLI
az botcommands, or the Bot Service REST API?) - A single bot acting as a router — one bot registration where the user selects the target agent within the conversation (command, adaptive card, or one Teams conversation/channel per agent). This scales, but every agent shares the same identity, name, and icon, which is a poor experience.
Desired outcome: Guidance on the recommended architecture for exposing N agents per tenant in Teams, specifically:
- Is a single multi-tenant bot with in-conversation routing the intended pattern, or is there a supported way to give each agent a distinct Teams identity?
- Can Azure Bot resources and their Teams channel be provisioned programmatically (ARM template, Azure CLI, REST API)? If so, which permissions and quotas apply?
- Would Teams app templating / a Line of Business (LOB) app uploaded per tenant, or the newer Microsoft 365 Agents SDK / declarative agents in Copilot, be a better fit for this multi-agent-per-customer model?
Environment: Multi-tenant SaaS, bots published via the Teams Store, customers on Microsoft 365 commercial tenants.
Tag: azure-bot-service (add microsoft-teams-development if the tag picker allows a second one).