可以在查询中使用creationTime和其他目录元字段吗?

时间:2016-11-22 16:17:45

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

我正在尝试过滤从Directory.Users.List返回的用户列表,并希望在过滤器中使用creationTime值。根据这个:

Search for users

...你可以在比较中使用日期字段,但是当我尝试这样的事情时:

creationTime> = 2016-06-30(或引用的相同值)

......我明白了:

Caused by: com.google.api.client.googleapis.json.GoogleJsonResponseException: 400 Bad Request
{
  "code" : 400,
  "errors" : [ {
    "domain" : "global",
    "message" : "Invalid Input: creationTime>=2016-06-30",
    "reason" : "invalid"
  } ],
  "message" : "Invalid Input: creationTime>=2016-06-30"
}

该消息不是特别有用 - 这是查询的语法问题,还是该字段不可用于查询的情况(该文章中未列出该字段,但它是该文章的一部分) JSON响应)?

本文指定了Date字段查询的格式,但是该字段还包含一个时间组件,因此我尝试复制JSON中显示的确切格式,结果相同。

此外,尝试它的结果相同!用户参考页面的一部分。

另外,尝试使用数值(Date.getTime(),实际上) - 同样的错误。

...谢谢

P.S。有趣的是,谷歌确实记录了如何搜索Chromebook的日期字段,这与他们对用户的暗示完全不同。我仍然无法使用creationTime,但它适用于Chromebook。另一部分是它引用了未记录的字段,以及为什么我尝试使用记录的字段(例如lastSync与sync),它失败并显示相同的消息。这一切似乎都是半生不熟的。

View Chrome device information

1 个答案:

答案 0 :(得分:1)

只有表格中列出的字段可通过users.list搜索进行搜索。

解决方法(我不知道这是否适合您)可能是将您要在搜索中使用的数据推送到custom user fields。这些字段是可搜索的。