使用Microsoft Graph API,我想创建所有Office 365用户的生日列表,但我目前无法获得具有相关属性的用户列表。
要设置此列表,我需要通过Graph API公开以下属性:
使用图形资源管理器https://graph.microsoft.io/en-us/graph-explorer,我试图请求我自己的属性(graph.microsoft.com/v1.0/Me/?$select=id,displayName,userPrincipalName,birthday) :
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users(id,displayName,userPrincipalName,birthday)/$entity",
"id": "aaaaaaaa-bbbbb-ccccc-a3c6-63817c4bbbca",
"displayName": "Harold van de Kamp",
"userPrincipalName": "harold@company.com",
"birthday": "2000-08-15T00:00:00Z"
}
当我查询所有用户(graph.microsoft.com/v1.0/Users)时,这也有效,但不包含所有必需的属性
但是当我查询具有所需属性的所有用户(graph.microsoft.com/v1.0/Users/?$select=id,displayName,userPrincipalName,birthday)时,我收到以下错误:
{
"error": {
"code": "InternalServerError",
"message": "This operation is not yet supported.",
"innerError": {
"request-id": "06a7b9c9-2fcd-4f26-a86c-fe9704a35a1e",
"date": "2016-06-11T11:15:45"
}
}
}
查询测试版API(graph.microsoft.com/beta/Users/?$select=id,displayName,userPrincipalName,birthday)会导致同样的错误。
问题:我知道为什么会出现此错误,我们如何才能解决此问题?
加分问题:是否可以直接查询即将到来的15个生日列表?
答案 0 :(得分:2)
抱歉Harold,但遗憾的是,正如错误消息所示,目前不支持此功能。在幕后,Microsoft Graph正在将数据请求分配给多个服务。虽然Microsoft Graph确实支持服务中的分页,但它还不支持跨服务的分页(或扩展)。这是我们将要开展的工作,但我还不担心ETA。
答案 1 :(得分:1)
解决方法可能是单独访问该属性:
https://graph.microsoft.com/v1.0/users/<id_or_principle_name>/birthday
答案 2 :(得分:0)
不确定您是否找到了解决方法,但我们所做的(具有相同要求)是我们能够从我们的内部部署AD映射自定义生日属性 - &gt;使用DirSync将其同步到Azure AD,然后它成为我们接收和使用的扩展属性。
答案 3 :(得分:0)
还在等待这个,但是,Microsoft Graph 目前不支持它。它目前在微软的积压工作中。
如果您需要相同的功能,请在用户声音/想法页面上投票: