首页 > 解决方案 > 新插入的联系人未在第一人中返回:searchContacts

问题描述

由于弃用,我们正在尝试从 Google Contacts API 迁移到 Google People API。

使用 Google People API 创建联系人后出现一些奇怪的行为。

首先我们创建一个新联系人

POST https://people.googleapis.com/v1/people:createContact?sources=READ_SOURCE_TYPE_CONTACT&key=[YOUR_API_KEY] HTTP/1.1

Authorization: Bearer [YOUR_ACCESS_TOKEN]
Accept: application/json
Content-Type: application/json

{
  "names": [
    {
      "givenName": "Test",
      "familyName": "Contact"
    }
  ],
  "emailAddresses": [
    {
      "value": "test@tester.com.au"
    }
  ]
}

然后我们查询新创建的联系人

GET https://people.googleapis.com/v1/people:searchContacts?query=test%40tester.com.au&readMask=names%2CemailAddresses%2Cmetadata%2Cmemberships%2CuserDefined&key=[YOUR_API_KEY] HTTP/1.1

Authorization: Bearer [YOUR_ACCESS_TOKEN]
Accept: application/json

搜索返回空结果

{}

如果我们现在再次查询,我们会得到预期的结果

{
  "results": [
    {
      "person": {
        "resourceName": "people/c1041359888227912421",
        "etag": "%EggBAj0JPhY3LhoBAiIMd0UrSkMrM21tMG89",
        .....
  ]
}

不知道这里发生了什么?还有其他人遇到这种奇怪的行为吗?

标签: google-apigoogle-contacts-apigoogle-people-api

解决方案


我已经为此提交了错误报告

https://issuetracker.google.com/188860467

一定要给它加星标,向谷歌表明你受到了这个影响,这也会让你订阅更新。


推荐阅读