Getting "Insufficient Privileges" Error Message, with Inner Error message: "AclCheckFailed-Can't parse Member Role"

Abiodun 40 Reputation points
2025-05-13T17:59:34.4466667+00:00

I'm currently using the MS Graph API to send Teams messages to a channel

This works fine except for the set reaction api

POST /teams/{teamsId}/channels/{channelId}/messages/{chatMessageId}/setReaction

POST /teams/{teamId}/channels/{channelId}/messages/{messageId}/replies/{replyId}/setReaction

Returns the error message:

{
    "error": {
        "code": "Forbidden",
        "message": "InsufficientPrivileges",
        "innerError": {
            "code": "1",
            "message": "AclCheckFailed-Can't parse Member Role ''",
            "date": "2025-05-13T17:44:36",
            "request-id": "d982ee52-02e4-4f96-9cca-27d843707c5d",
            "client-request-id": "d982ee52-02e4-4f96-9cca-27d843707c5d"
        }
    }
}

The documentation specifies that the ChannelMessage.Send permission is required

When I decode my JWT access token, here are the scopes included;

"scp": "ChannelMember.Read.All ChannelMessage.Send Chat.ReadWrite.All ChatMessage.Read ChatMessage.Send email Files.ReadWrite GroupMember.Read.All openid profile Sites.Read.All Sites.ReadWrite.All TeamMember.Read.All User.Read User.Read.All",

Which includes the required permission, also on APP API Permissions.

CleanShot 2025-05-13 at 18.49.17@2x

Been on it for hours and can't figure it out, the access token works for sending and updating messages, so not sure why it doesn't work to set reactions.

Microsoft Security | Microsoft Graph
{count} votes

1 answer

Sort by: Most helpful
  1. Saied Taki 5 Reputation points
    2025-05-22T08:21:34.75+00:00

    You can check Teams policies in the Microsoft Teams Admin Center to ensure external apps can interact with Teams.Debug Using Logs

    Review the Graph API request logs for additional details. Use https://jwt.ms/ to decode the access token and confirm the scopes.

    Test with Delegated vs. Application Permissions

    If using application permissions, try switching to delegated permissions.

    1 person found this answer 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.