我希望能够获得我的租户中特定名称的未读电子邮件的数量。
类似https://graph.microsoft.com/v1.0/的我 / mailFolders / Inbox / messages?$ filter = isRead ne false&$ count = true]
但可以更改特定用户的我,以上内容适用于我的签名用户的图形浏览器。
我尝试了这个示例here。这给我带来了用户列表,并试图对其进行修改而没有成功。
该应用程序具有Microsoft图形的api权限,可以读取所有邮箱中的邮件。
答案 0 :(得分:0)
我可能会误解您的问题,但我认为您的麻烦是您正在使用用户标识符替换URI中的我。如果正确的话,您需要将其替换为 user / useridentifier 。
这将使查询:
https://graph.microsoft.com/v1.0/user/ / mailFolders / Inbox / messages?$ filter = isRead ne false&$ count = true
答案 1 :(得分:0)
访问已登录用户以外的用户邮箱。您将需要使用应用程序(仅应用程序)令牌调用api。这将需要为Mail.Read请求应用程序权限(而非委托权限)。
有关在没有用户上下文的情况下进行访问的更多信息,请参见https://docs.microsoft.com/en-us/graph/auth-v2-service?context=graph%2Fapi%2F1.0&view=graph-rest-1.0
请求将是 GET https://graph.microsoft.com/v1.0/users/ {id | userPrincipalName} /消息
您可以使用来电显示的ID GET https://graph.microsoft.com/v1.0/users
或在大多数情况下,使用upn(即他们的电子邮件地址)。
更多文档可在此处https://docs.microsoft.com/en-us/graph/api/user-list-messages?view=graph-rest-1.0&tabs=http
您实际上可以在我们的邮递员收藏中测试这些请求调用。 Graph Explorer纯粹是代表流程请求调用。设置说明在此处https://docs.microsoft.com/en-us/graph/use-postman
答案 2 :(得分:0)
只需在GET API中传递用户ID
{{UserId}} - username/mailid/principalName
https://graph.microsoft.com/v1.0/users/{{UserId}}/mailFolders/Inbox/messages?$filter=isRead ne true&$count=true