List of channel messages

Super Contributor

Who can access channel messages via Graph API? Based on our findings without being a member you can't access the messages from channels in other teams.




11 Replies

The channel messages API is admin consented right now. So if you are the tenant admin you can access any teams content you just need the team id and the channel id in order to access. If you are accessing it in the user delegated mode then you need to part of the team.

Could you ellaborate on your answer? I'm not sure if i understood you correctly.

Currently i use a global admin account to access ms teams via the graph api. (Group.Read.All,Group.ReadWrite.All) 


With the access token we can access members, channels.....but not the messages.

When we try to access messages we get 403  (global admin is not a member).





Sorry, we mixed up two different things. There's who can consent to an app asking for the permission scope to read messages - answer is a global admin. And then there's which users are authorized to read a given message - answer is members & owners of the team its in. Admins can add themselves to the team, but they can't read messages without doing that.

Thank you for this information :)


Are there any plans to add the capability to get access the channel messages without the need of being an member ? (via graph api)



We are working on application permissions support for reading channel messages.

That would give the app access to all messages in the tenant.

@Nick Kramer (TEAMS) 

Hello Nick


Please can you tell us why the Application permission for "ChannelMessage.Read.All" got suddenly removed?

This was working fine till 4th of july 2019.

Customers have waited for this permission a very long time....and now it's gone?


I know that we are talking about a graph beta api, but it would be awesome if MS could communicate somthing like this in advance.


So please can you tell us something about this and what's the story behind?

Will it come back ? if yes, when ?


Thank you



Hi Nick, @Stefan Fried 


Do you know what is the status of /messages Application permissions?


Im trying to access channel messages via Graph API without user, just with an app, but im getting this Error: 403 Forbidden for URL{teamId}/channels/{channelId}/messages


No problem getting channels, groups, etc..


Our application has these permissions among others:
ChannelMessage.Read.All    Program    Read all channel messages

Group.Read.All                     Program    Read all groups

Group.ReadWrite.All            Program    Read and write all groups


and in the current documentation says that you just need Group.Read.All,Group.ReadWrite.All permissions to access channel messages.

Any idea of the needs for this Api? Do we need something more?


yes MS changed a bit here.

Channel Messages are part of the protected APIs. You need to request access to it


Please find all informations here:


hope this helps :)

Thanks @Stefan Fried !


Yes, thats some useful information. So if i get it right, i have to send a form direct to Microsoft asking for permission to use Application -> Group.Read.All,Group.ReadWrite.All? 


I have sent the form and it seems strange that it cant be done directly from the azure administration panel, which has all the application data


I didn't get any confirmation mail or reference by the way, so its just a matter of faith i guess :)


Some questions for @Nick Kramer (TEAMS)   

how is this supposed to work for the clients? Will they have to send the same form asking for permission to use the message list?

Do you really want so many mails asking for the same thing? It's like the basis of why Teams api is used, to read the channel messages


Thanks in advance!

@jaimeirala correct.

for protected APIs you need trigger the workflow at MS to get it approved.


There is for sure a reason why they have added that layer of approval (i doubt that it's due to security reasons)

..but future will tell