如何使用图 API 在 MS Teams 中将成员添加为组或邮件列表

How to add members as a group or mail list in MS Teams using graph API

当使用添加成员到 Microsoft Teams 时,如果我传递的有效负载是个人用户,我没有问题。

documentation 提到它可以接受 userdirectoryObj 或另一个 group。实际上,示例有效载荷是:

{
  "@odata.id": "https://graph.microsoft.com/v1.0/directoryObjects/{id}"
}

我创建了一个邮件列表,它本质上只是一个组或目录对象(不太确定两者中的哪一个)并尝试了相同的方法 API 但我收到以下错误:

{
  "error": {
    "code": "Request_BadRequest",
    "message": "Only Users can be members of a Unified Group. paramName: Members, paramValue: , objectType: Microsoft.Online.DirectoryServices.Group",
    "innerError": {
      "request-id": "STRING_GOES_HERE",
      "date": "DATE_GOES_HERE"
    },
    "details": [
      {
        "target": "members",
        "code": "InvalidValue"
      }
    ]
  }
}

我认为我的请求没有任何错误,运行 directoryObjects subAPI(用于负载)returns 我可以从中解压成员的正确位置,但我实际上无法在其中添加成员

这包含在您引用的文档中(粗体):

You can add users or other groups. Important: You can add only users to Office 365 Groups.

您不能将组添加到统一组(也称为 Office 365 组或团队)。只有个人用户可以成为这些组的成员。

至于组和目录对象之间的区别,没有区别。 AAD 中的每个对象都派生自 directoryObject。把 directoryObject 想象成 Java 中的 System.Object in .NET or java.lang.Object。因此,组是 directoryObject,用户是 directoryObject,但组不是用户。