'Microsoft Teams send Activity Feed Notification through Graph API

I have a with yeoman teams scaffolded tab in which I ask for adminconsent for application permission. On a Go backend I then use the code to retrieve the access token. I am also getting all Users of the team. Although I am using only application permissions, I can not send notifications to the admin account. When trying to send notifications to other accounts, the Graph API returns a 204 Status Code but the activity feed of the recipient stays empty.

The application has following application permissions (with granted admin consent):

  • ChannelMember.ReadAll
  • GroupMember.ReadAll
  • Team.ReadBasic.All
  • TeamMember.Read.All
  • TeamsActivity.Send

This is the Manifest file with version 1.11:

{
  "manifestVersion": "1.11",
  "id": "{{APPLICATION_ID}}",
  "version": "{{VERSION}}",
  "permissions": [
    "identity",
    "messageTeamMembers"
  ],
  "webApplicationInfo": {
    "id": "{{APPLICATION_ID}}",
    "resource": "api://{{DOMAIN}}.{{APPLICATION_ID}}"
  },
  "devicePermissions": [
    "notifications"
  ],
  "activities": {
    "activityTypes": [
      {
        "type": "newActivity",
        "description": "A new Activity Description"
      }
    ]
  }
}

The HTTP POST request to: https://graph.microsoft.com/v1.0/teams/{teamID}/sendNotification

The JSON Body:

{
    "topic": {
        "source": "entityUrl",
        "value": "https://graph.microsoft.com/v1.0/teams/%s"
    },
    "activityType": "newActivity",
    "previewText": {
        "content": "A new Activity Description"
    },
    "recipient": {
        "odata.type": "microsoft.graph.aadUserNotificationRecipient",
        "userId": "{{USER_ID}}"
    }
}

The recipient is also Member of the channel the activity is referring to. I also made sure that the recipient can receive notifications.



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source