Microsoft 365 integration
A lot of work in Microsoft 365 isn't recorded anywhere else: meetings in Outlook, commitments in emails, contracts in SharePoint. An integration brings that to the system where it belongs. And the other way round: a new starter from the HR system has an account on day one, and a won deal shows up straight away in the right Teams channel.
- Accounts and groups in Entra ID goes back and forth with Your other systems
- Outlook email goes back and forth with Your other systems
- Outlook calendar goes back and forth with Your other systems
- Contacts goes back and forth with Your other systems
Built for clients including Tata Steel, M&G Investments, Digistore24, Toppers in Concert, Bar-le-Duc and Loogman
This is the data organisations most often let flow between systems. Which of it matters to you depends on where work is getting stuck today.
Accounts and groups in Entra ID
Employees with their job title, department and groups. When someone joins or leaves, an integration creates, updates or blocks the account. With API-driven inbound provisioning, Entra ID accepts that data from any HR system.
Outlook email
Emails with customers that you want to see on the contact in your CRM, or a shared mailbox whose messages need to land as a ticket or order in another system.
Outlook calendar
Meetings your planning, CRM or time tracking needs to know about. An integration reads, creates or changes appointments, for example an installation appointment from your scheduling system.
Contacts
Contacts in Outlook. Handy when salespeople want customers from the CRM on their phone.
SharePoint and OneDrive
Contracts, quotes and project folders. For a new customer or project, an integration creates a folder, saves a document from another system or puts a link back in the CRM.
Teams notifications
A message in a channel when a big deal comes in, a ticket escalates or a payment fails. The team sees it without anyone having to open another system.
For each combination: which data moves back and forth, what the standard integration does and what to watch out for.
- Connect AFAS to Microsoft 365Connect AFAS to Microsoft 365: a new employee in AFAS gets an account and groups in Entra ID, and the account is blocked when they leave the organisation.
- Connect TOPdesk to Microsoft 365Connect TOPdesk to Microsoft 365: persons come in from Entra ID, tickets from email and Teams, and an approved change carries out actions in Entra ID.
- Connect Claude to Microsoft 365Connect Claude to Outlook, Teams, SharePoint and OneDrive with Anthropic's Microsoft 365 connector. What Claude can do, and what your admin needs to set up.
Not always. If an existing integration for Microsoft 365 does exactly what you need, we'll tell you.
Many CRM and HR packages have their own integration with Outlook, Teams or Entra ID. HubSpot logs emails from Outlook, Pipedrive syncs email, calendar and contacts, and Salesforce does so with Einstein Activity Capture. Microsoft itself provides Power Automate with ready-made connectors.
For notifications in Teams, you now use the Workflows app. The old Microsoft 365 connectors for Teams are being retired. A workflow does belong to a person, though: if they leave without a co-owner, the flow is left without an owner.
Standard is enough if each employee only connects their own email and calendar. A custom integration comes into the picture for shared mailboxes, for organisation-wide processes, or when an integration has to work without anyone signed in.
- Creating, updating and blocking accounts based on your HR or payroll system, including groups and licences.
- A shared mailbox that automatically puts orders, invoices or customer questions into the right system.
- Creating project folders in SharePoint from your CRM or project system, with the right permissions.
- Notifications in Teams that do more than show text, such as an approval through a bot.
- Old integrations that still use Exchange Web Services and need to move to Microsoft Graph.
One API: Microsoft Graph
You access accounts, groups, email, calendar, files and Teams through Microsoft Graph, a REST API at graph.microsoft.com. Graph is also the successor for integrations that still run on Exchange Web Services.
Permissions through Entra ID
You register the integration as an app in Microsoft Entra ID. It works on behalf of a signed-in user (delegated permissions) or on its own (application permissions). High-impact permissions need admin consent. Only request what the integration really needs.
Scoping access
An app with Mail.Read as an application permission can in principle read every mailbox. With RBAC for Applications in Exchange Online, you limit that to a group of mailboxes. With Sites.Selected, an app only gets access to SharePoint sites you grant site by site.
Change notifications that expire
Graph reports changes through webhooks, Azure Event Hubs or Azure Event Grid. Those subscriptions do expire: for Outlook mail and calendar after at most 10,080 minutes, just under seven days, and for SharePoint lists after just under 30 days. The integration has to renew them on time itself.
Throttling and test environment
If you make too many requests, you get status 429 with a Retry-After header telling you how long to wait. Use delta queries and notifications instead of repeatedly requesting everything. For testing, the Microsoft 365 Developer Program offers an E5 sandbox with 25 licences, for those who qualify, such as Visual Studio subscribers and certain partners.
An integration moves data. In between, AI can read, sort and prepare a suggestion. Where it matters, a person decides.
What Copilot can do itself
Copilot in Outlook summarises an email thread, with references to the individual emails, and helps with a draft reply. For work that stays within email, calendar and documents, that's often enough.
Copilot and your other systems
Through Copilot connectors, Copilot can also use data from, say, a CRM, either indexed or fetched live through MCP. By default, Copilot Chat doesn't write back to those systems. If an action also needs to land in the CRM or ERP, you need an integration or an agent with actions.
Sorting a shared mailbox
An email to info@ comes in. AI decides whether it's a quote request, complaint or invoice, summarises the email and files it against the right customer in the CRM. If the model is unsure, the email goes to an employee. What the customer gets back is decided by a person.
Expired subscriptions
Change notifications stop without an error when a subscription expires. For email and calendar that happens within seven days, and for notifications with resource data within a day. Renew on time and listen for the lifecycle notifications Graph sends.
Permissions that are too broad
An app with organisation-wide Mail.Read can read every mailbox, including the board's. Limit access with RBAC for Applications, and then remove the broad permission in Entra ID. Otherwise both permissions add up and nothing is restricted.
Exchange Web Services is ending
Microsoft is switching off Exchange Web Services in Exchange Online: in phases from October 2026, and completely in April 2027. Older integrations with Outlook mail or calendar sometimes still use EWS. Check that now and move to Microsoft Graph.
Workflows without an owner
A Teams workflow belongs to the person who created it. If they leave, the flow can stop. Add co-owners, or build important notifications as a bot or app that doesn't depend on one person.
What goes where
Which data moves, in which direction, and which system wins when two values differ. That is written down before anything gets built. For this integration, that means: Accounts and groups in Entra ID, Outlook email, Outlook calendar, Contacts, SharePoint and OneDrive, Teams notifications.
Fields and rules
For every field, how it translates between the systems: statuses, VAT codes, general ledger accounts, item numbers. And what happens with a duplicate or a missing value. For this integration, that means: One API: Microsoft Graph, Permissions through Entra ID, Scoping access, Change notifications that expire, Throttling and test environment.
Testing with real cases
In a sandbox or test administration, with the exceptions you actually run into: credit notes, partial deliveries, changed customer details.
Live, with logging and monitoring
Every sync is logged, and when something fails, someone gets an alert. If a vendor changes its API, we update the integration.

No account manager. You talk to someone who builds integrations themselves, and who will tell you when a standard integration is enough.
- Office on the Duivendrechtsekade in Amsterdam
- ISO 9001 and ISO 27001, certified by Kiwa
- 500 projects delivered
- 4.8 from 127 reviews
What is Microsoft Graph?
Microsoft Graph is the API that gives you access to data in Microsoft 365 and Entra ID: users, groups, email, calendar, files and Teams. It's a REST API at a single endpoint, secured through the Microsoft identity platform. Microsoft also recommends Graph as the replacement for Exchange Web Services.
Do I need an admin to connect Microsoft 365?
Usually, yes. The integration has to be registered as an app in Microsoft Entra ID, and high-impact permissions, such as access to all mailboxes, need admin consent. An integration that only works on behalf of a single user can sometimes be approved by that user.
Can an integration be limited to certain mailboxes or SharePoint sites?
Yes. With RBAC for Applications in Exchange Online, you give an app access only to a defined group of mailboxes. For SharePoint and OneDrive, you use Sites.Selected, or even finer-grained scopes for lists and files. An app with Sites.Selected only has access once it's been granted per site.
Will our Outlook integration keep working?
That depends on the technology behind it. Integrations that use Exchange Web Services will stop: Microsoft is switching off EWS in Exchange Online from October 2026, and by April 2027 it's gone completely. Integrations through Microsoft Graph carry on working.
How do I post notifications to Teams automatically?
Use the Workflows app with the trigger for an incoming webhook request, or a notification bot if you want more than just a message. The old Microsoft 365 connectors for Teams are being retired, so don't build new integrations on them.
Can I test an integration without our real environment?
Yes, if you qualify for the Microsoft 365 Developer Program. It gives you an E5 sandbox with 25 user licences and sample data for email, calendar and Teams. Otherwise, you test in your own tenant, with separate test accounts and as few permissions as possible.
Sources
The technical facts on this page come from the vendors' official documentation, checked on 19 September 2026. Vendors change their APIs and limits; when we build an integration, we always check the current state.
- Microsoft Learn: Authentication and authorization basics (Microsoft Graph)
- Microsoft Learn: Change notifications in Microsoft Graph
- Microsoft Learn: Microsoft Graph throttling guidance
- Microsoft Learn: Role Based Access Control for Applications in Exchange Online
- Microsoft Learn: Selected permissions in OneDrive and SharePoint
- Microsoft Learn: API-driven inbound provisioning
- Microsoft Learn: Webhooks and connectors in Teams
- Microsoft Learn: Deprecation of Exchange Web Services in Exchange Online
- Microsoft Learn: Microsoft 365 Developer Program FAQ
- Microsoft Learn: Copilot connectors overview
- Microsoft Support: Summarize an email thread with Copilot in Outlook



