Vercel Connect is generally available as of August 25, 2026. Read the launch blog post, changelog, and complete guide for more information.
Vercel Connect now includes a managed connector for Microsoft, so your apps and agents can access all Microsoft products such as Teams, OneDrive and more.
As a Vercel Managed Connector, Vercel registers the Entra application and configures federated credentials for it, so you don't have to create an app registration or manage client secrets yourself. Authorize the app for your Microsoft tenant once, then attach the connector to the projects and environments it needs.
Create a connector from the dashboard or the Vercel CLI:
# Create a Microsoft connectorvc connect create microsoft --name acme-msft
# Attach it to a projectvc connect attach microsoft/acme-msft --project my-app --environment productionCreate a Microsoft connector and attach it to a project's production environment.
With the connector attached, your code requests a token only when it needs one. The @vercel/connect SDK authenticates with your deployment's OIDC identity and returns a short-lived token for the app itself, using the application permissions your admin granted:
import { getToken } from '@vercel/connect';
const token = await getToken('microsoft/acme-msft', { subject: { type: 'app' }, scopes: ['https://graph.microsoft.com/.default'],});
await fetch('https://graph.microsoft.com/v1.0/users/releases@acme.com/sendMail', { method: 'POST', headers: { Authorization: `Bearer ${token}`, 'Content-Type': 'application/json', }, body: JSON.stringify({ message: { subject: 'Deploy finished', body: { contentType: 'Text', content: 'Production is live ✅' }, toRecipients: [{ emailAddress: { address: 'eng@acme.com' } }], }, }),});Request an app token and send an email through the Microsoft Graph API.
Each token is scoped to what you request and refreshed automatically, so there's nothing to leak or rotate. To act as a specific person instead, pass that user as the subject and the token carries their delegated permissions:
const token = await getToken('microsoft/acme-msft', { subject: { type: 'user', id: userId }, scopes: ['User.Read'],});The token acts as this user, limited to what they authorized.
Read the Vercel Connect docs and create a Microsoft connector to get started.
Build a software factory with Vercel Connect
Ship a software factory with GitHub and Linear connectors provisioned for you from the first deployment.
Deploy now