Share via

Microsoft Graph Webhook Subscriptions for Multiple Mailboxes (Tenant vs User Level)

Surekha Yeddula 60 Reputation points
2026-02-16T08:35:47.9766667+00:00

I have a tenant with approximately 5,000 mailbox users, and I’m using Microsoft Graph webhook subscriptions to monitor incoming emails.

Question

Is it possible to create a single subscription at the tenant level (using the tenant ID) to receive notifications for all users’ mailboxes, or do I need to create individual subscriptions per user mailbox?

Scenario Details

  • Number of users: ~5,000

Resource being monitored: messages (Inbox emails)

Goal: Receive notifications when new emails arrive for all users

Example Question

Can something like this be done?

/tenants/{tenant-id}/mailFolders('Inbox')/messages

Or is the only supported approach to create subscriptions like the following for each user?

/users/{user-id}/mailFolders('Inbox')/messages

Clarification Needed

Does Microsoft Graph support tenant-wide mailbox subscriptions?

If individual subscriptions are required:

What are the scalability limits (max subscriptions per app / tenant)?

  Are there recommended **design patterns** for handling thousands of users efficiently?

  
  Is using **application permissions** sufficient for this scenario, or are there alternative approaches?
```Any guidance, official documentation references, or best-practice recommendations would be very helpful.I have a tenant with approximately **5,000 mailbox users**, and I’m using **Microsoft Graph** webhook subscriptions to monitor incoming emails.

### Question

Is it possible to create **a single subscription at the tenant level** (using the tenant ID) to receive notifications for **all users’ mailboxes**, or do I need to create **individual subscriptions per user mailbox**?

### Scenario Details

Number of users: ~5,000

Resource being monitored: `messages` (Inbox emails)

Goal: Receive notifications when new emails arrive for all users

### Example Question

Can something like this be done?


```yaml
/tenants/{tenant-id}/mailFolders('Inbox')/messages

Or is the only supported approach to create subscriptions like the following for each user?

/users/{user-id}/mailFolders('Inbox')/messages

Clarification Needed

Does Microsoft Graph support tenant-wide mailbox subscriptions?

If individual subscriptions are required:

What are the scalability limits (max subscriptions per app / tenant)?

  Are there recommended **design patterns** for handling thousands of users efficiently?

  
  Is using **application permissions** sufficient for this scenario, or are there alternative approaches?
```Any guidance, official documentation references, or best-practice recommendations would be very helpful.
Microsoft Security | Microsoft Graph
0 comments No comments
{count} votes

Answer accepted by question author
  1. Q&A Assist
    2026-02-16T08:36:00.06+00:00
    AI generated content. This question contains an answer created with AI from Q&A Assist. Learn more

    Microsoft Graph does not support creating a single subscription at the tenant level to receive notifications for all users' mailboxes. Instead, you need to create individual subscriptions for each user mailbox. This means that for your scenario with approximately 5,000 users, you will need to set up 5,000 separate subscriptions, each targeting the respective user's inbox messages.

    Scalability Limits

    The maximum limit for active subscriptions per mailbox is 1,000 for all applications combined. Therefore, if you are managing subscriptions for 5,000 users, you will need to ensure that you stay within this limit by possibly managing subscriptions efficiently or rotating them as needed.

    To handle thousands of users efficiently, consider the following design patterns:

    • Batch Processing: Group user subscriptions and manage them in batches, possibly refreshing them periodically.
    • Event-Driven Architecture: Use an event-driven approach to process notifications as they come in, which can help in scaling your application.
    • Caching: Implement caching strategies to minimize repeated API calls for the same data.

    Permissions

    Using application permissions is indeed sufficient for this scenario as it allows your application to access all users' mailboxes without needing individual user consent. This is crucial for managing a large number of subscriptions effectively.

    For further details on managing subscriptions and permissions, you can refer to the Microsoft Graph documentation.

    0 comments No comments

0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.