Skip to content
Voxbi Cockpit APIs
API Guides

Microsoft 365 integration

The Microsoft 365 integration connects your PBX to Microsoft Entra ID and Microsoft Graph so user accounts and contacts stay aligned between Cockpit and Microsoft.

Overview

Microsoft 365 is one of the integration types you configure under Integrations. It uses your Microsoft tenant to read directory users and to read and write each user's Outlook contacts through Microsoft Graph. Each sync behavior has its own toggle, so you can enable only the parts you need.

What it does

Before any sync runs, the integration needs admin consent in your Microsoft Entra tenant. Until consent is granted, the user sync and the contact push stay off even when the integration is active and the toggles are on. Consent is granted once per tenant against the Voxbi application registration.

The integration authenticates to Microsoft Graph using the application client credentials flow, scoped to your tenant. Access tokens are obtained and cached automatically, so you do not enter or manage a token yourself.

The three toggles, all on the Microsoft 365 tab, work as follows.

  • Fetch Microsoft users to Cockpit (microsoft_users_sync) pulls users one way, from Microsoft Entra into Cockpit. Cockpit reads each directory user and provisions a matching Cockpit user account, carrying over first name, last name, email, active state, business phone as the extension, mobile number, office, and city. This direction requires admin consent. See Users for the accounts that result.

  • Push contacts to Microsoft (microsoft_contacts_sync) pushes contacts one way, from Cockpit out to Microsoft. For each enabled Cockpit user it maintains two contact folders in that user's Outlook account, one for global contacts and one for that user's personal contacts, and creates, updates, or removes Microsoft contacts to match what is in Cockpit. This direction also requires admin consent. See Contacts for the source records.

  • Fetch contacts from Microsoft (microsoft_user_contact_sync) pulls contacts the other way, reading a user's Microsoft contacts from the same two folders so Cockpit can show them. This is a read-only view of what already exists on the Microsoft side.

The two contact directions are independent of each other but both operate on the same per-user global and personal folders, so the push direction is what populates those folders in the first place.

When a Cockpit user is disabled, the integration removes that user's contacts from their managed Microsoft folders so stale entries do not linger.

See also

  • Integrations - the integration entity and its full field reference.
  • Users - provisioned from Microsoft Entra.
  • Contacts - the contact sync target.

Updated