我们正试图通过beta/me/people
获取公司联系人的用户个人资料,但似乎我们无法获得所有联系人,即使我们拥有来自/v1.0/users
API的用户ID
我们获得的用户数量也有所不同,具体取决于登录的帐户。
文档说明它是一个排名列表,但我应该能够通过ID获得一个吗?
任何人都可以帮助我们解释这是为什么吗?有没有办法,例如,没有管理员必须更改权限的每个用户的电话号码?
答案 0 :(得分:2)
/beta/me/people端点返回与当前用户相关的联系人列表。这"关系"基于电子邮件,电话和文档等内容。这就是为什么它会根据登录的用户而改变的原因。例如,在我的情况下,我的经理显示在结果的顶部,但是我从未与之交互的公司内的人员没有。
如果您要查找给定用户的纯联系人列表(即Outlook中的联系人),您可以使用/me/contacts端点。这将返回Outlook / Exchange中当前用户的默认联系人文件夹中的联系人记录列表。
如果您正在寻找内部人员(即用户帐户)的个人资料信息,可以使用/users端点来完成此操作。这将返回组织内的所有用户。
如果您希望获取单个用户帐户的个人资料信息,可以使用/users/{id | userPrincipalName}检索此信息。 通常我建议使用userPrincipalName
,因为它会使调试和查看日志更具人性化。
如果您希望从用户的“联系人”文件夹中检索单个联系人,可以使用$filter查询参数完成此操作。例如:me/contacts?$filter=emailAddresses/any(a:a/address eq '@domain.com')
。
如果您希望从/me/people端点抓取一个人,只需将该用户的id
添加到路径即可:/me/people/{id}
< / p>
请注意,使用
beta
端点可能会导致意外行为。这些端点可用于测试,但绝对不适合生产工作负载。