我正在使用Google管理SDK中的目录API来管理Google域中的用户。 我正在寻找一种方法来列出域中特定组织的用户,但我找不到任何关于如何实现这一目标的示例。 根据文档https://developers.google.com/admin-sdk/directory/v1/reference/users/list,唯一有效的查询属性是email,familyName和givenName。 我今天使用的解决方法是获取域中的所有用户,然后过滤响应。
答案 0 :(得分:6)
使用query
参数可以实现这一点。
示例:
/admin/directory/v1/users?domain=domain.com&query=orgUnitPath=/Sales
或,url编码:
/admin/directory/v1/users?domain=example.com&query=orgUnitPath%3D%2FSales
将返回/Sales
orgunit中的所有用户。
完整文档here。
答案 1 :(得分:0)
您的发现是正确的,没有办法只检索给定OU中的用户。您可以使用fields参数检索电子邮件和OrgUnit,然后在本地过滤。使用字段应该可以减少流量并提高效率。
答案 2 :(得分:0)
我按照 https://developers.google.com/admin-sdk/directory/reference/rest/v1/users/list 中的说明使用了 'query' 参数并且它有效。
var optionalArgs = {
customer: 'my_customer',
orderBy: 'email',
query: "orgUnitPath='/A1 - Current Members'"
};
var response = AdminDirectory.Users.list(optionalArgs);