← cd ~/compare
// compare · graph permissions
Chat.Read.All vs Chat.ReadWrite.All
Two Microsoft Graph permissions that are easy to mix up, side by side.
In short: Chat.Read.All only reads. Chat.ReadWrite.All can also create, change or delete. Use the read-only one unless your app needs to write.
| Permission type | Chat.Read.All | Chat.ReadWrite.All |
|---|---|---|
| Application | Read all chat messages Allows the app to read all 1-to-1 or group chat messages in Microsoft Teams. Always needs admin consent · High risk | Read and write all chat messages Allows an app to read and write all chat messages in Microsoft Teams, without a signed-in user. Always needs admin consent · High risk |
| Delegated | Not available as a delegated permission | Read and write all chat messages Allows an app to read and write all one-to-one and group chats in Microsoft Teams, without a signed-in user. Does not allow sending messages. Needs admin consent · High risk |
Spotted something out of date or wrong? Tell us and we'll fix it.