ViksaAIDocs
Start now

Microsoft Teams setup

Register an Azure Bot, point the messaging endpoint at Viksa, and connect Teams or Web Chat to your project's agents.

Use cases#

  • Internal IT and platform ops — run agents from Teams channels or personal chat
  • On-call runbooks and approval workflows where your team already works
  • Azure Web Chat testing before publishing a Teams app manifest

What to create (not a Copilot declarative agent)#

Viksa uses a standard Azure Bot (Bot Framework) registration — not a Copilot declarative agent or tab-only Teams app. Create an Azure Bot, enable the Microsoft Teams channel, and point the messaging endpoint at Viksa.

Prerequisites#

  • Azure subscription with permission to create an Azure Bot resource
  • Microsoft App ID and client secret (App password)
  • Directory (tenant) ID for single-tenant bots
  • At least one deployed agent in your ViksaAI project

Installation steps#

  1. 1

    Register an Azure Bot

    Azure Portal → Create a resource → Azure Bot. Note the Microsoft App ID, create a client secret (App password), and copy your Directory (tenant) ID. Under Channels, enable Microsoft Teams.

  2. 2

    Set the messaging endpoint

    In Azure Bot Configuration, set the messaging endpoint to https://api.viksaai.com/v1/webhooks/teams. Viksa validates inbound Bot Framework JWTs on every activity.

  3. 3

    Connect in Channel Hub

    Volt → Channel Hub → Teams. Enter App ID, App password (secret value, not Secret ID), and tenant ID for single-tenant bots. Click Validate then Connect.

  4. 4

    Single-tenant tenant ID

  5. 5

    Grant access

    Grant by work email ([email protected]) or Azure AD object ID. Viksa project members can also receive all agents when members get all agents is enabled. See Access & security.

  6. 6

    Test

    Use Azure Bot Test in Web Chat or publish/sideload a Teams app manifest, then send a plain text message to the bot.

Credentials reference#

FieldRequiredNotes
Microsoft App IDYesGUID — routing key for your project
App passwordYesClient secret value from App registration
Directory (tenant) IDSingle-tenantRequired for Single Tenant bots

Routing (shared webhook URL)#

All Teams customers use the same Viksa URL (https://api.viksaai.com/v1/webhooks/teams). Viksa resolves your project from the bot's App ID in the inbound JWT. Each App ID maps to exactly one project.

Message flow#

  1. User sends a message on the channel.
  2. The platform posts a webhook to volt-engine-service at /v1/webhooks/*.
  3. Engine resolves account, org, and project from the global routing index (App ID, phone number ID, tenant key, etc.).
  4. Access is checked via channel_grants_v1 and optional Viksa project membership.
  5. The same Think→Act→Observe pipeline loads your project agent catalog and runs agents.
  6. The reply is sent back through the channel API (Graph, Telegram Bot API, Bot Framework, etc.).

Troubleshooting#