Microsoft Outlook
MICROSOFT 365 · EMAIL
Mail, folders, and rules under the signed-in user’s own mailbox.
Connect Microsoft Outlook with Fabriq Developer
Your user consents at Microsoft Outlook. The credential lands in a vault your agent cannot read, and the tool list it gets back is the intersection of that user’s grant and the agent’s own scopes.
Provider names are surfaces, not vendors, and the authoritative list is the capabilities endpoint rather than any page including this one — an unknown name returns 400 with the valid list. Fabriq Developer is free to start and needs no provider paperwork. Start free or read the quickstart.
Connecting Microsoft Outlook in practice
The Outlook service throttles per app ID and mailbox pair rather than per tenant: 10,000 requests per 10 minutes and, more painfully, only four concurrent requests. An agent working one executive’s mailbox is limited to roughly sixteen requests a second with a concurrency of four, however large the tenant is.
Scopes that draw scrutiny
Mail.ReadWriteAs a delegated permission it needs no admin consent, but the application-permission variant does and reaches every mailbox in the tenant. The same name means two very different grants.Mail.SendSame split: delegated requires no admin consent, application does. Application Mail.Send is the ability to send as anyone in the organization.User.Read.AllAdmin consent required for both delegated and application, because it reads the full directory rather than the signed-in user.
Rate limits
- 10,000 API requests in a 10-minute period per app ID and mailbox combination, on both the v1.0 and beta endpoints.
- Four concurrent requests per app and mailbox.
- 150 MB of upload (PATCH, POST, PUT) in a 5-minute period.
- In an unordered JSON batch, Microsoft Graph sends the Outlook service at most four individual requests at a time, so batching does not buy concurrency.
- Exchange message trace: 100 requests per 5 minutes per tenant.
Who has to approve
In Microsoft Entra every application permission requires tenant admin consent. The delegated forms of Mail.ReadWrite and Mail.Send do not, which is why a pilot on one user’s mailbox goes through and the tenant-wide rollout stops at a consent screen only an admin can clear.
Worth knowing
- Exceeding the limit for one mailbox does not affect the app’s access to another, so the correct design is per-mailbox queues rather than one global limiter.
- The concurrency limit of four is what most pipelines hit first; the 10,000-per-10-minutes figure is rarely the binding constraint.
- Using dependsOn to order a batch makes Graph send the Outlook service one request at a time, so ordering costs you the little parallelism you had.
- Microsoft states plainly that "The specific limits described in this article are subject to change", so these numbers are a design input, not a guarantee.
Checked against Microsoft Graph service-specific throttling limits (2026-09-29), Microsoft Graph permissions reference (2026-09-29)
What an agent can do
Each action is granted on its own. An agent allowed to read is not thereby allowed to write, and the scope beside each row is what the acting user must have connected for it to run at all.
Often connected alongside
Put Microsoft Outlook behind one governed endpoint.
Same permissions, same audit trail, whatever else you connect next.