How to tell what permissions a user has been given to a shared mailbox

Andrew Earl 105 Reputation points
2024-08-22T10:53:41.21+00:00

Hi, in Outlook I can share my inbox with another user and grant them read access or write access.

When using graph API, is there a way to tell what permissions a user has to a specific shared inbox, e.g. no access, read only, read and write?

I am using delegated permissions.

Thanks

Outlook | Windows | Classic Outlook for Windows | For business
Exchange | Exchange Server | Management
Microsoft Security | Microsoft Graph
0 comments No comments
{count} votes

Accepted answer
  1. Andy David - MVP 157.8K Reputation points MVP Volunteer Moderator
    2024-08-22T16:00:44.04+00:00

    You will need to use Exchange powershell:

    https://learn.microsoft.com/en-us/powershell/module/exchange/get-mailboxfolderpermission?view=exchange-ps

    Graph does not yet support this.

    1 person found this answer helpful.
    0 comments No comments

1 additional answer

Sort by: Most helpful
  1. Hitesh Pachipulusu - MSFT 3,620 Reputation points Microsoft External Staff
    2024-08-22T16:09:21.8933333+00:00

    Hello Andrew Earl,

    Greetings from Microsoft Support!

    Currently, there isn’t a direct API call in Microsoft Graph to explicitly check the permissions a user has on a shared inbox. However, you can infer the permissions by attempting specific actions and handling the responses:

    The Signed User should be the individual whose mailbox access is being verified.

    The UserId should be the identifier of the user with a shared inbox.

    1. Read Access: Try to read messages from the shared inbox.
         GET /users/{UserId}/mailFolders('Inbox')/messages
      
      If successful, the user has at least read access. image (11)
    2. Write Access: Try to create or modify a message in the shared inbox.
         POST /users/{UserId}/mailFolders('Inbox')/messages
      
      If successful, the user has write access.
    3. No Access: If both actions fail, the user likely has no access.

    These steps allow you to determine the level of access indirectly.

    Hope this helps.

    If the answer is helpful, please click Accept Answer and kindly upvote it. If you have any further questions about this answer, please click Comment.

    0 comments No comments

Your answer

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