Meet Caddi in personADVISE AIOct 20–22AI for Mid-Sized LawNov 5Legal InnovatorsNov 17–18
Microsoft 365 API

Connect Microsoft 365 without building on its API

Microsoft 365 has a REST API. Self-serve for any developer who registers an app in Microsoft Entra ID, but tenant data needs user consent or admin consent. If you're reading the docs because you need Microsoft 365 to talk to the rest of your stack, Caddi does that without you writing or maintaining integration code: you show it the job once, and it runs it across Microsoft 365 and your other tools.

  • APIREST (JSON)
  • AuthOAuth 2.0
  • AccessSelf-serve
The Microsoft 365 API

What the Microsoft 365 API gives you

Type
REST (JSON)
Authentication
OAuth 2.0 via Microsoft identity platform (Microsoft Entra ID), delegated or application permissions
Who can get access
Self-serve for any developer who registers an app in Microsoft Entra ID, but tenant data needs user consent or admin consent.
What it covers
Microsoft 365 data including users, groups, Outlook mail/calendar/contacts, OneDrive, SharePoint, Teams, Planner, OneNote, To Do, plus Entra ID and Intune.
Limits
No single global limit: throttling thresholds vary by service and scenario (see the service-specific limits page) and return 429 with Retry-After.
Worth knowing
Microsoft points large-volume data extraction to Microsoft Graph Data Connect instead of the Graph REST APIs.

Official docs: learn.microsoft.com. Checked September 2026. Vendors change access terms, so confirm with Microsoft 365 before you build.

Build or have it run

Building on the Microsoft 365 API vs. having Caddi run it

The jobBuild it on the APIWith Caddi
Getting accessRegister an app, get Microsoft 365 credentials, and manage tokens and refreshes.Connect your Microsoft 365 account once. Caddi holds the connection.
Writing the integrationA developer maps fields, handles pagination, retries and rate limits, and writes the sync.You show Caddi the Microsoft 365 task the way you'd train a new hire. It writes verified code for it.
Steps the API doesn't coverScreens with no endpoint stay manual, or need a separate RPA tool.Caddi uses a secure, audited browser session where there's no API, in the same automation.
The other systems in the loopEach extra tool is another API, another set of credentials, another integration to own.One automation runs across all the tools the job touches.
Keeping it runningSomeone owns the code when the API version, fields or your process change.Every automation is reviewed before it runs in production, and every run is logged.

Building on the API is the right call when you have engineers and the integration is your product. When the goal is getting Microsoft 365 work off someone's desk, the build is the slow part.

What teams connect

What teams usually want the Microsoft 365 API for

  • New Hire Tracker Cleanup

    Caddi manages new hire onboarding follow-ups in an Excel tracker by categorizing employees, updating tracking fields, and removing duplicate entries.

  • Excel Transaction Sync

    Caddi transfers new deal transaction data between Excel worksheets by creating a row for each transaction and mapping source values into the destination sheet.

  • Onboarding Tracker Cleanup

    Caddi manages onboarding follow-ups from an onboarding report by classifying employees, updating tracker fields, and removing duplicate entries.

  • Outlook → Word → DMS

    Caddi reads inbound requests in Outlook, drafts the response document in Word with current data, and files the finalized version in your DMS.

Everything Caddi does with Microsoft 365.

Microsoft 365 API questions

Does Microsoft 365 have an API?

Yes. Microsoft 365 has a REST API, authenticated with OAuth 2.0 via Microsoft identity platform (Microsoft Entra ID), delegated or application permissions. The official documentation is at https://learn.microsoft.com/en-us/graph/overview.

How do I get access to the Microsoft 365 API?

Self-serve for any developer who registers an app in Microsoft Entra ID, but tenant data needs user consent or admin consent.

Does the Microsoft 365 API have rate limits?

No single global limit: throttling thresholds vary by service and scenario (see the service-specific limits page) and return 429 with Retry-After.

Can I connect Microsoft 365 to my other tools without writing code against its API?

Yes. With Caddi you show the Microsoft 365 task once, the way you'd train a new hire, and Caddi builds it as verified code that runs across Microsoft 365 and the other tools the job touches. Where a step has no API, Caddi uses a secure, audited browser session in the same automation.

Do I need a developer to automate Microsoft 365 with Caddi?

No. There is no integration code for you to write or maintain. Every automation Caddi builds for Microsoft 365 is reviewed before it runs in production, and every run is logged.

Connect Microsoft 365 without the build.

Drop your work email and pick a time. We'll show you Caddi running your Microsoft 365 workflow end to end.