Google Directory API按自定义字段搜索用户未设置

时间:2015-07-07 21:14:36

标签: google-apps google-admin-sdk google-directory-api

根据Google Directory API,您可以为用户创建自定义字段,然后按这些字段搜索用户。

https://developers.google.com/admin-sdk/directory/v1/guides/search-users

  

您可以搜索与某些属性匹配的用户   目录API的users.list方法。此方法接受查询   参数是组合一个或多个搜索的搜索查询   条款。每个搜索子句由三部分组成:

     

字段
  搜索的用户属性。例如,givenName。习惯   可以通过schemaName.fieldName搜索字段   操作
  测试即是   对数据执行以提供匹配。例如,:运算符   测试文本属性是否包含值   的
  的内容   被测试的属性。例如,简。

搜索布尔值似乎只显示已明确设置为true或false的用户。是否可以搜索没有设置值的用户或搜索所有值不为真或不为假的用户?

似乎已经改变了。当我使用

在Google API资源管理器上搜索时

获取https:// www.googleapis.com/admin/directory/v1/users?customer=my_customer&projection=full&key={YOUR_API_KEY}

它返回大约70个结果,但使用

获取https:// www.googleapis.com/admin/directory/v1/users?customer=my_customer&projection=full&query=userData.enabled%3Dfalse&key={YOUR_API_KEY} 返回1结果和

获取https:// www.googleapis.com/admin/directory/v1/users?customer=my_customer&projection=full&query=userData.enabled%3Dtrue&key={YOUR_API_KEY} 没有结果。

我有大约十几个设置为true,其余设置为false。只有少数我没有明确地设置为真或假。

1 个答案:

答案 0 :(得分:0)

您似乎无法搜索未明确设置的值。唯一的选择是拉出设定值并找出设定值和不设置值之间的差值。例如,使用php array_udiff或迭代所有用户并比较值。