Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Teams connector

OAuth 2.0 communication

Connect to Microsoft Teams. Manage messages, channels, meetings, and team collaboration

Teams connector

  1. Terminal window
    npm install @scalekit-sdk/node

    Full SDK reference: Node.js | Python

  2. Add your Scalekit credentials to your .env file. Find values in app.scalekit.com > Developers > API Credentials.

    .env
    SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
    SCALEKIT_CLIENT_ID=<your-client-id>
    SCALEKIT_CLIENT_SECRET=<your-client-secret>
  3. Register your Teams credentials with Scalekit so it handles the token lifecycle. You do this once per environment.

    Dashboard setup steps

    Register your Scalekit environment with the Microsoft Teams connector so Scalekit handles the authentication flow and token lifecycle for you. The connection name you create will be used to identify and invoke the connection programmatically. Then complete the configuration in your application as follows:

    1. Register an Azure app

      • In Scalekit dashboard, go to AgentKit > Connections > Create Connection. Find Teams and click Create. Copy the redirect URI. It will look like https://<SCALEKIT_ENVIRONMENT_URL>/sso/v1/oauth/<CONNECTION_ID>/callback.

        Copy redirect URI from Scalekit dashboard

      • Sign into portal.azure.com and go to Microsoft Entra IDApp registrationsNew registration.

      • Enter a name for your app.

      • Under Supported account types, select Accounts in any organizational directory (Any Azure AD directory - Multitenant).

      • Under Redirect URI, select Web and paste the redirect URI from step 1. Click Register.

        Register an application in Azure portal

      • Go to Certificates & secretsNew client secret, set an expiry, and click Add. Copy the Value immediately.

      • From the Overview page, copy the Application (client) ID.

    2. Create an Azure bot

      • In the Azure portal, search for Azure Bot and click Create.

      • Enter a bot handle name, select your subscription and resource group, and set the Microsoft App ID to the Application (client) ID from above. Click Review + create.

        Azure Bot setup

      • Once created, go to Channels and add the Microsoft Teams channel to enable Teams integration.

    3. Add credentials in Scalekit

      • In Scalekit dashboard, go to AgentKit > Connections and open the connection you created.

      • Enter your credentials:

        Add credentials in Scalekit dashboard

      • Click Save.

  4. quickstart.ts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENV_URL,
    process.env.SCALEKIT_CLIENT_ID,
    process.env.SCALEKIT_CLIENT_SECRET,
    )
    const actions = scalekit.actions
    const connector = 'microsoftteams'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Teams:', link)
    process.stdout.write('Press Enter after authorizing...')
    await new Promise(r => process.stdin.once('data', r))
    // Make your first API call through the proxy
    const result = await actions.request({
    connectionName: connector,
    identifier,
    path: '/v1.0/me',
    method: 'GET',
    })
    console.log(result)
Proxy API call
// Make a request via Scalekit proxy
const result = await actions.request({
connectionName: 'microsoftteams',
identifier: 'user_123',
path: '/v1.0/me',
method: 'GET',
});
console.log(result);
Execute a tool
const result = await actions.executeTool({
connector: 'microsoftteams',
identifier: 'user_123',
toolName: 'microsoftteams_list',
toolInput: {},
});
console.log(result);