Method: people.updateContact

更新現有聯絡人的聯絡資料。系統不會修改任何非接觸式資料。系統會忽略要更新對象中的非聯絡人資料。updateMask 中指定的所有欄位都會遭到取代。

如果未指定要更新的聯絡人 person.metadata.sources,或是沒有聯絡人來源,伺服器會傳回 400 錯誤。

如果 person.metadata.sources.etag 與聯絡人的 etag 不同,伺服器會傳回 400 錯誤,並附上原因 "failedPrecondition",表示聯絡人自資料讀取後已變更。用戶端應取得最新的人物資料,並將更新內容合併至最新的人物資料。如果要針對同一個人進行連續更新,請使用 updateContact 回應中的 etag,以免發生失敗。

如果系統正在更新 memberships,但沒有指定聯絡人群組成員資格,伺服器會傳回 400 錯誤。

如果在聯絡資訊來源的單一欄位上指定多個欄位,伺服器會傳回 400 錯誤:

  • 傳記
  • 生日
  • 性別
  • 名稱

請依序傳送同一位使用者的變異要求,以免延遲時間增加和失敗。

HTTP 要求

PATCH https://people.googleapis.com/v1/{person.resourceName=people/*}:updateContact

這個網址使用 gRPC 轉碼語法。

路徑參數

參數
person.resourceName

string

伺服器指派給使用者的資源名稱。以 people/{person_id} 格式的 ASCII 字串。

查詢參數

參數
updatePersonFields

string (FieldMask format)

必要欄位。欄位遮罩會限制更新的個人資料欄位。您可以使用半形逗號分隔多個欄位。所有更新的欄位都會替換。有效值如下:

  • addresses
  • 傳記
  • 生日
  • calendarUrls
  • clientData
  • emailAddresses
  • 活動
  • externalIds
  • 性別
  • imClients
  • 興趣
  • locales
  • 位置
  • 會籍
  • miscKeywords
  • 名稱
  • 暱稱
  • 職業
  • 機構組織
  • phoneNumbers
  • 關係
  • sipAddresses
  • 網址
  • userDefined
personFields

string (FieldMask format)

(非必要) 欄位遮罩,用於限制要傳回的每位使用者欄位。您可以使用半形逗號分隔多個欄位。如果未設定,預設值為所有欄位。有效值如下:

  • addresses
  • ageRanges
  • 傳記
  • 生日
  • calendarUrls
  • clientData
  • coverPhotos
  • emailAddresses
  • 活動
  • externalIds
  • 性別
  • imClients
  • 興趣
  • locales
  • 位置
  • 會籍
  • 中繼資料
  • miscKeywords
  • 名稱
  • 暱稱
  • 職業
  • 機構組織
  • phoneNumbers
  • 相片
  • 關係
  • sipAddresses
  • skills
  • 網址
  • userDefined
sources[]

enum (ReadSourceType)

(非必要) 要傳回的來源類型遮罩。如果未設定,預設值為 READ_SOURCE_TYPE_CONTACTREAD_SOURCE_TYPE_PROFILE

要求主體

要求主體包含 Person 的例項。

回應主體

如果成功,回應主體會包含 Person 的執行例項。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/contacts

詳情請參閱授權指南