chore: Update discovery artifacts (#1493)

## Deleted keys were detected in the following stable discovery artifacts:
documentai v1 https://github.com/googleapis/google-api-python-client/commit/3d6892c775b31d0ed6caead07666e423dccdba62
iam v1 https://github.com/googleapis/google-api-python-client/commit/98682633e8d244ca7bbf5b3726ed305e338a1cdd
osconfig v1 https://github.com/googleapis/google-api-python-client/commit/588812ffa314a68be1be61e229a187aecbe587e4

## Deleted keys were detected in the following pre-stable discovery artifacts:
compute alpha https://github.com/googleapis/google-api-python-client/commit/3740a88b497c25e6a5aee22f873c33117034f8fa
compute beta https://github.com/googleapis/google-api-python-client/commit/3740a88b497c25e6a5aee22f873c33117034f8fa
documentai v1beta3 https://github.com/googleapis/google-api-python-client/commit/3d6892c775b31d0ed6caead07666e423dccdba62
ideahub v1alpha https://github.com/googleapis/google-api-python-client/commit/942102dcc79691866f8febbb732e477d0e5227b4

## Discovery Artifact Change Summary:
feat(analyticsadmin): update the api https://github.com/googleapis/google-api-python-client/commit/8e0c67f316381ec1ad358a079207215293093603
feat(apigee): update the api https://github.com/googleapis/google-api-python-client/commit/9fd19ee8a70661be02219133dda1b80d71ac4f4b
feat(appengine): update the api https://github.com/googleapis/google-api-python-client/commit/9727d32278b91dfa30d4c8c597755323741f8cd4
feat(bigquerydatatransfer): update the api https://github.com/googleapis/google-api-python-client/commit/0b36baa0400731507365bf477cc223729d5a109d
feat(cloudfunctions): update the api https://github.com/googleapis/google-api-python-client/commit/c138aff559b32709a8a81c271ab5c0c48ea3acbe
feat(compute): update the api https://github.com/googleapis/google-api-python-client/commit/3740a88b497c25e6a5aee22f873c33117034f8fa
feat(container): update the api https://github.com/googleapis/google-api-python-client/commit/90b095a5de68d5aebcfbea16078b4727774366f4
feat(containeranalysis): update the api https://github.com/googleapis/google-api-python-client/commit/07d2f4383aef325a7351831909e6cfc4b4b9f889
feat(documentai): update the api https://github.com/googleapis/google-api-python-client/commit/3d6892c775b31d0ed6caead07666e423dccdba62
feat(gkehub): update the api https://github.com/googleapis/google-api-python-client/commit/1676d9f17b499d3bb13f80ad9c4fbd0621961a41
feat(iam): update the api https://github.com/googleapis/google-api-python-client/commit/98682633e8d244ca7bbf5b3726ed305e338a1cdd
feat(ideahub): update the api https://github.com/googleapis/google-api-python-client/commit/942102dcc79691866f8febbb732e477d0e5227b4
feat(ondemandscanning): update the api https://github.com/googleapis/google-api-python-client/commit/97169382a9d0c80bf56af157a16c5b96cb95e6dd
feat(osconfig): update the api https://github.com/googleapis/google-api-python-client/commit/588812ffa314a68be1be61e229a187aecbe587e4
feat(people): update the api https://github.com/googleapis/google-api-python-client/commit/213598c2a41d6724368e1089bc3cbcaa0b2932c5
feat(securitycenter): update the api https://github.com/googleapis/google-api-python-client/commit/74bee354cf1dbaf388de26e756e9aeebe0baa311
feat(slides): update the api https://github.com/googleapis/google-api-python-client/commit/623c740d1333cfea2b5946cc22ebcc2c44a2197d
feat(tagmanager): update the api https://github.com/googleapis/google-api-python-client/commit/98664145c692ed1ca947bdb081a7463897655d28
diff --git a/docs/dyn/people_v1.otherContacts.html b/docs/dyn/people_v1.otherContacts.html
index a2b7963..bcf5c8b 100644
--- a/docs/dyn/people_v1.otherContacts.html
+++ b/docs/dyn/people_v1.otherContacts.html
@@ -130,7 +130,7 @@
       "formattedType": "A String", # Output only. The type of the address translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
       "formattedValue": "A String", # The unstructured value of the address. If this is not set by the user it will be automatically constructed from structured values.
       "metadata": { # Metadata about a field. # Metadata about the address.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -143,7 +143,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "poBox": "A String", # The P.O. box of the address.
@@ -158,7 +158,7 @@
     { # A person's age range.
       "ageRange": "A String", # The age range.
       "metadata": { # Metadata about a field. # Metadata about the age range.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -171,7 +171,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
     },
@@ -180,7 +180,7 @@
     { # A person's short biography.
       "contentType": "A String", # The content type of the biography.
       "metadata": { # Metadata about a field. # Metadata about the biography.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -193,7 +193,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "value": "A String", # The short biography.
@@ -207,7 +207,7 @@
         "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
       },
       "metadata": { # Metadata about a field. # Metadata about the birthday.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -220,7 +220,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "text": "A String", # A free-form string representing the user's birthday.
@@ -229,7 +229,7 @@
   "braggingRights": [ # **DEPRECATED**: No data will be returned The person's bragging rights.
     { # **DEPRECATED**: No data will be returned A person's bragging rights.
       "metadata": { # Metadata about a field. # Metadata about the bragging rights.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -242,7 +242,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "value": "A String", # The bragging rights; for example, `climbed mount everest`.
@@ -252,7 +252,7 @@
     { # A person's calendar URL.
       "formattedType": "A String", # Output only. The type of the calendar URL translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
       "metadata": { # Metadata about a field. # Metadata about the calendar URL.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -265,7 +265,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "type": "A String", # The type of the calendar URL. The type can be custom or one of these predefined values: * `home` * `freeBusy` * `work`
@@ -276,7 +276,7 @@
     { # Arbitrary client data that is populated by clients. Duplicate keys and values are allowed.
       "key": "A String", # The client specified key of the client data.
       "metadata": { # Metadata about a field. # Metadata about the client data.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -289,7 +289,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "value": "A String", # The client specified value of the client data.
@@ -299,7 +299,7 @@
     { # A person's cover photo. A large image shown on the person's profile page that represents who they are or what they care about.
       "default": True or False, # True if the cover photo is the default cover photo; false if the cover photo is a user-provided cover photo.
       "metadata": { # Metadata about a field. # Metadata about the cover photo.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -312,7 +312,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "url": "A String", # The URL of the cover photo.
@@ -323,7 +323,7 @@
       "displayName": "A String", # The display name of the email.
       "formattedType": "A String", # Output only. The type of the email address translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
       "metadata": { # Metadata about a field. # Metadata about the email address.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -336,7 +336,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "type": "A String", # The type of the email address. The type can be custom or one of these predefined values: * `home` * `work` * `other`
@@ -353,7 +353,7 @@
       },
       "formattedType": "A String", # Output only. The type of the event translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
       "metadata": { # Metadata about a field. # Metadata about the event.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -366,7 +366,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "type": "A String", # The type of the event. The type can be custom or one of these predefined values: * `anniversary` * `other`
@@ -376,7 +376,7 @@
     { # An identifier from an external entity related to the person.
       "formattedType": "A String", # Output only. The type of the event translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
       "metadata": { # Metadata about a field. # Metadata about the external ID.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -389,7 +389,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "type": "A String", # The type of the external ID. The type can be custom or one of these predefined values: * `account` * `customer` * `loginId` * `network` * `organization`
@@ -399,7 +399,7 @@
   "fileAses": [ # The person's file-ases.
     { # The name that should be used to sort the person in a list.
       "metadata": { # Metadata about a field. # Metadata about the file-as.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -412,7 +412,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "value": "A String", # The file-as value
@@ -423,7 +423,7 @@
       "addressMeAs": "A String", # The type of pronouns that should be used to address the person. The value can be custom or one of these predefined values: * `male` * `female` * `other`
       "formattedValue": "A String", # Output only. The value of the gender translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale. Unspecified or custom value are not localized.
       "metadata": { # Metadata about a field. # Metadata about the gender.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -436,7 +436,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "value": "A String", # The gender for the person. The gender can be custom or one of these predefined values: * `male` * `female` * `unspecified`
@@ -447,7 +447,7 @@
       "formattedProtocol": "A String", # Output only. The protocol of the IM client formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
       "formattedType": "A String", # Output only. The type of the IM client translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
       "metadata": { # Metadata about a field. # Metadata about the IM client.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -460,7 +460,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "protocol": "A String", # The protocol of the IM client. The protocol can be custom or one of these predefined values: * `aim` * `msn` * `yahoo` * `skype` * `qq` * `googleTalk` * `icq` * `jabber` * `netMeeting`
@@ -471,7 +471,7 @@
   "interests": [ # The person's interests.
     { # One of the person's interests.
       "metadata": { # Metadata about a field. # Metadata about the interest.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -484,7 +484,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "value": "A String", # The interest; for example, `stargazing`.
@@ -493,7 +493,7 @@
   "locales": [ # The person's locale preferences.
     { # A person's locale preference.
       "metadata": { # Metadata about a field. # Metadata about the locale.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -506,7 +506,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "value": "A String", # The well-formed [IETF BCP 47](https://tools.ietf.org/html/bcp47) language tag representing the locale.
@@ -520,7 +520,7 @@
       "floor": "A String", # The floor name or number.
       "floorSection": "A String", # The floor section in `floor_name`.
       "metadata": { # Metadata about a field. # Metadata about the location.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -533,7 +533,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "type": "A String", # The type of the location. The type can be custom or one of these predefined values: * `desk` * `grewUp`
@@ -550,7 +550,7 @@
         "inViewerDomain": True or False, # True if the person is in the viewer's Google Workspace domain.
       },
       "metadata": { # Metadata about a field. # Metadata about the membership.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -563,7 +563,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
     },
@@ -596,7 +596,7 @@
     { # A person's miscellaneous keyword.
       "formattedType": "A String", # Output only. The type of the miscellaneous keyword translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
       "metadata": { # Metadata about a field. # Metadata about the miscellaneous keyword.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -609,7 +609,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "type": "A String", # The miscellaneous keyword type.
@@ -625,7 +625,7 @@
       "honorificPrefix": "A String", # The honorific prefixes, such as `Mrs.` or `Dr.`
       "honorificSuffix": "A String", # The honorific suffixes, such as `Jr.`
       "metadata": { # Metadata about a field. # Metadata about the name.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -638,7 +638,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "middleName": "A String", # The middle name(s).
@@ -654,7 +654,7 @@
   "nicknames": [ # The person's nicknames.
     { # A person's nickname.
       "metadata": { # Metadata about a field. # Metadata about the nickname.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -667,7 +667,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "type": "A String", # The type of the nickname.
@@ -677,7 +677,7 @@
   "occupations": [ # The person's occupations.
     { # A person's occupation.
       "metadata": { # Metadata about a field. # Metadata about the occupation.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -690,7 +690,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "value": "A String", # The occupation; for example, `carpenter`.
@@ -710,7 +710,7 @@
       "jobDescription": "A String", # The person's job description at the organization.
       "location": "A String", # The location of the organization office the person works at.
       "metadata": { # Metadata about a field. # Metadata about the organization.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -723,7 +723,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "name": "A String", # The name of the organization.
@@ -743,7 +743,7 @@
       "canonicalForm": "A String", # Output only. The canonicalized [ITU-T E.164](https://law.resource.org/pub/us/cfr/ibr/004/itu-t.E.164.1.2008.pdf) form of the phone number.
       "formattedType": "A String", # Output only. The type of the phone number translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
       "metadata": { # Metadata about a field. # Metadata about the phone number.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -756,7 +756,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "type": "A String", # The type of the phone number. The type can be custom or one of these predefined values: * `home` * `work` * `mobile` * `homeFax` * `workFax` * `otherFax` * `pager` * `workMobile` * `workPager` * `main` * `googleVoice` * `other`
@@ -767,7 +767,7 @@
     { # A person's photo. A picture shown next to the person's name to help others recognize the person.
       "default": True or False, # True if the photo is a default photo; false if the photo is a user-provided photo.
       "metadata": { # Metadata about a field. # Metadata about the photo.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -780,7 +780,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "url": "A String", # The URL of the photo. You can change the desired size by appending a query parameter `sz={size}` at the end of the url, where {size} is the size in pixels. Example: https://lh3.googleusercontent.com/-T_wVWLlmg7w/AAAAAAAAAAI/AAAAAAAABa8/00gzXvDBYqw/s100/photo.jpg?sz=50
@@ -790,7 +790,7 @@
     { # A person's relation to another person.
       "formattedType": "A String", # Output only. The type of the relation translated and formatted in the viewer's account locale or the locale specified in the Accept-Language HTTP header.
       "metadata": { # Metadata about a field. # Metadata about the relation.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -803,7 +803,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "person": "A String", # The name of the other person this relation refers to.
@@ -814,7 +814,7 @@
     { # **DEPRECATED**: No data will be returned A person's relationship interest .
       "formattedValue": "A String", # Output only. The value of the relationship interest translated and formatted in the viewer's account locale or the locale specified in the Accept-Language HTTP header.
       "metadata": { # Metadata about a field. # Metadata about the relationship interest.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -827,7 +827,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "value": "A String", # The kind of relationship the person is looking for. The value can be custom or one of these predefined values: * `friend` * `date` * `relationship` * `networking`
@@ -837,7 +837,7 @@
     { # **DEPRECATED**: No data will be returned A person's relationship status.
       "formattedValue": "A String", # Output only. The value of the relationship status translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
       "metadata": { # Metadata about a field. # Metadata about the relationship status.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -850,7 +850,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "value": "A String", # The relationship status. The value can be custom or one of these predefined values: * `single` * `inARelationship` * `engaged` * `married` * `itsComplicated` * `openRelationship` * `widowed` * `inDomesticPartnership` * `inCivilUnion`
@@ -860,7 +860,7 @@
     { # **DEPRECATED**: Please use `person.locations` instead. A person's past or current residence.
       "current": True or False, # True if the residence is the person's current residence; false if the residence is a past residence.
       "metadata": { # Metadata about a field. # Metadata about the residence.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -873,7 +873,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "value": "A String", # The address of the residence.
@@ -884,7 +884,7 @@
     { # A person's SIP address. Session Initial Protocol addresses are used for VoIP communications to make voice or video calls over the internet.
       "formattedType": "A String", # Output only. The type of the SIP address translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
       "metadata": { # Metadata about a field. # Metadata about the SIP address.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -897,7 +897,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "type": "A String", # The type of the SIP address. The type can be custom or or one of these predefined values: * `home` * `work` * `mobile` * `other`
@@ -907,7 +907,7 @@
   "skills": [ # The person's skills.
     { # A skill that the person has.
       "metadata": { # Metadata about a field. # Metadata about the skill.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -920,7 +920,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "value": "A String", # The skill; for example, `underwater basket weaving`.
@@ -929,7 +929,7 @@
   "taglines": [ # Output only. **DEPRECATED**: No data will be returned The person's taglines.
     { # **DEPRECATED**: No data will be returned A brief one-line description of the person.
       "metadata": { # Metadata about a field. # Metadata about the tagline.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -942,7 +942,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "value": "A String", # The tagline.
@@ -952,7 +952,7 @@
     { # A person's associated URLs.
       "formattedType": "A String", # Output only. The type of the URL translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
       "metadata": { # Metadata about a field. # Metadata about the URL.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -965,7 +965,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "type": "A String", # The type of the URL. The type can be custom or one of these predefined values: * `home` * `work` * `blog` * `profile` * `homePage` * `ftp` * `reservations` * `appInstallPage`: website for a Currents application. * `other`
@@ -976,7 +976,7 @@
     { # Arbitrary user data that is populated by the end users.
       "key": "A String", # The end user specified key of the user defined data.
       "metadata": { # Metadata about a field. # Metadata about the user defined data.
-        "primary": True or False, # True if the field is the primary field for the person.
+        "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
         "source": { # The source of a field. # The source of the field.
           "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
           "id": "A String", # The unique identifier within the source type generated by the server.
@@ -989,7 +989,7 @@
           "type": "A String", # The source type.
           "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
         },
-        "sourcePrimary": True or False, # True if the field is the primary field for the source.
+        "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
         "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
       },
       "value": "A String", # The end user specified value of the user defined data.
@@ -1036,7 +1036,7 @@
           "formattedType": "A String", # Output only. The type of the address translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
           "formattedValue": "A String", # The unstructured value of the address. If this is not set by the user it will be automatically constructed from structured values.
           "metadata": { # Metadata about a field. # Metadata about the address.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1049,7 +1049,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "poBox": "A String", # The P.O. box of the address.
@@ -1064,7 +1064,7 @@
         { # A person's age range.
           "ageRange": "A String", # The age range.
           "metadata": { # Metadata about a field. # Metadata about the age range.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1077,7 +1077,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
         },
@@ -1086,7 +1086,7 @@
         { # A person's short biography.
           "contentType": "A String", # The content type of the biography.
           "metadata": { # Metadata about a field. # Metadata about the biography.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1099,7 +1099,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "value": "A String", # The short biography.
@@ -1113,7 +1113,7 @@
             "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
           },
           "metadata": { # Metadata about a field. # Metadata about the birthday.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1126,7 +1126,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "text": "A String", # A free-form string representing the user's birthday.
@@ -1135,7 +1135,7 @@
       "braggingRights": [ # **DEPRECATED**: No data will be returned The person's bragging rights.
         { # **DEPRECATED**: No data will be returned A person's bragging rights.
           "metadata": { # Metadata about a field. # Metadata about the bragging rights.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1148,7 +1148,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "value": "A String", # The bragging rights; for example, `climbed mount everest`.
@@ -1158,7 +1158,7 @@
         { # A person's calendar URL.
           "formattedType": "A String", # Output only. The type of the calendar URL translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
           "metadata": { # Metadata about a field. # Metadata about the calendar URL.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1171,7 +1171,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "type": "A String", # The type of the calendar URL. The type can be custom or one of these predefined values: * `home` * `freeBusy` * `work`
@@ -1182,7 +1182,7 @@
         { # Arbitrary client data that is populated by clients. Duplicate keys and values are allowed.
           "key": "A String", # The client specified key of the client data.
           "metadata": { # Metadata about a field. # Metadata about the client data.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1195,7 +1195,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "value": "A String", # The client specified value of the client data.
@@ -1205,7 +1205,7 @@
         { # A person's cover photo. A large image shown on the person's profile page that represents who they are or what they care about.
           "default": True or False, # True if the cover photo is the default cover photo; false if the cover photo is a user-provided cover photo.
           "metadata": { # Metadata about a field. # Metadata about the cover photo.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1218,7 +1218,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "url": "A String", # The URL of the cover photo.
@@ -1229,7 +1229,7 @@
           "displayName": "A String", # The display name of the email.
           "formattedType": "A String", # Output only. The type of the email address translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
           "metadata": { # Metadata about a field. # Metadata about the email address.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1242,7 +1242,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "type": "A String", # The type of the email address. The type can be custom or one of these predefined values: * `home` * `work` * `other`
@@ -1259,7 +1259,7 @@
           },
           "formattedType": "A String", # Output only. The type of the event translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
           "metadata": { # Metadata about a field. # Metadata about the event.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1272,7 +1272,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "type": "A String", # The type of the event. The type can be custom or one of these predefined values: * `anniversary` * `other`
@@ -1282,7 +1282,7 @@
         { # An identifier from an external entity related to the person.
           "formattedType": "A String", # Output only. The type of the event translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
           "metadata": { # Metadata about a field. # Metadata about the external ID.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1295,7 +1295,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "type": "A String", # The type of the external ID. The type can be custom or one of these predefined values: * `account` * `customer` * `loginId` * `network` * `organization`
@@ -1305,7 +1305,7 @@
       "fileAses": [ # The person's file-ases.
         { # The name that should be used to sort the person in a list.
           "metadata": { # Metadata about a field. # Metadata about the file-as.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1318,7 +1318,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "value": "A String", # The file-as value
@@ -1329,7 +1329,7 @@
           "addressMeAs": "A String", # The type of pronouns that should be used to address the person. The value can be custom or one of these predefined values: * `male` * `female` * `other`
           "formattedValue": "A String", # Output only. The value of the gender translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale. Unspecified or custom value are not localized.
           "metadata": { # Metadata about a field. # Metadata about the gender.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1342,7 +1342,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "value": "A String", # The gender for the person. The gender can be custom or one of these predefined values: * `male` * `female` * `unspecified`
@@ -1353,7 +1353,7 @@
           "formattedProtocol": "A String", # Output only. The protocol of the IM client formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
           "formattedType": "A String", # Output only. The type of the IM client translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
           "metadata": { # Metadata about a field. # Metadata about the IM client.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1366,7 +1366,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "protocol": "A String", # The protocol of the IM client. The protocol can be custom or one of these predefined values: * `aim` * `msn` * `yahoo` * `skype` * `qq` * `googleTalk` * `icq` * `jabber` * `netMeeting`
@@ -1377,7 +1377,7 @@
       "interests": [ # The person's interests.
         { # One of the person's interests.
           "metadata": { # Metadata about a field. # Metadata about the interest.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1390,7 +1390,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "value": "A String", # The interest; for example, `stargazing`.
@@ -1399,7 +1399,7 @@
       "locales": [ # The person's locale preferences.
         { # A person's locale preference.
           "metadata": { # Metadata about a field. # Metadata about the locale.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1412,7 +1412,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "value": "A String", # The well-formed [IETF BCP 47](https://tools.ietf.org/html/bcp47) language tag representing the locale.
@@ -1426,7 +1426,7 @@
           "floor": "A String", # The floor name or number.
           "floorSection": "A String", # The floor section in `floor_name`.
           "metadata": { # Metadata about a field. # Metadata about the location.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1439,7 +1439,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "type": "A String", # The type of the location. The type can be custom or one of these predefined values: * `desk` * `grewUp`
@@ -1456,7 +1456,7 @@
             "inViewerDomain": True or False, # True if the person is in the viewer's Google Workspace domain.
           },
           "metadata": { # Metadata about a field. # Metadata about the membership.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1469,7 +1469,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
         },
@@ -1502,7 +1502,7 @@
         { # A person's miscellaneous keyword.
           "formattedType": "A String", # Output only. The type of the miscellaneous keyword translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
           "metadata": { # Metadata about a field. # Metadata about the miscellaneous keyword.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1515,7 +1515,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "type": "A String", # The miscellaneous keyword type.
@@ -1531,7 +1531,7 @@
           "honorificPrefix": "A String", # The honorific prefixes, such as `Mrs.` or `Dr.`
           "honorificSuffix": "A String", # The honorific suffixes, such as `Jr.`
           "metadata": { # Metadata about a field. # Metadata about the name.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1544,7 +1544,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "middleName": "A String", # The middle name(s).
@@ -1560,7 +1560,7 @@
       "nicknames": [ # The person's nicknames.
         { # A person's nickname.
           "metadata": { # Metadata about a field. # Metadata about the nickname.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1573,7 +1573,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "type": "A String", # The type of the nickname.
@@ -1583,7 +1583,7 @@
       "occupations": [ # The person's occupations.
         { # A person's occupation.
           "metadata": { # Metadata about a field. # Metadata about the occupation.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1596,7 +1596,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "value": "A String", # The occupation; for example, `carpenter`.
@@ -1616,7 +1616,7 @@
           "jobDescription": "A String", # The person's job description at the organization.
           "location": "A String", # The location of the organization office the person works at.
           "metadata": { # Metadata about a field. # Metadata about the organization.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1629,7 +1629,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "name": "A String", # The name of the organization.
@@ -1649,7 +1649,7 @@
           "canonicalForm": "A String", # Output only. The canonicalized [ITU-T E.164](https://law.resource.org/pub/us/cfr/ibr/004/itu-t.E.164.1.2008.pdf) form of the phone number.
           "formattedType": "A String", # Output only. The type of the phone number translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
           "metadata": { # Metadata about a field. # Metadata about the phone number.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1662,7 +1662,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "type": "A String", # The type of the phone number. The type can be custom or one of these predefined values: * `home` * `work` * `mobile` * `homeFax` * `workFax` * `otherFax` * `pager` * `workMobile` * `workPager` * `main` * `googleVoice` * `other`
@@ -1673,7 +1673,7 @@
         { # A person's photo. A picture shown next to the person's name to help others recognize the person.
           "default": True or False, # True if the photo is a default photo; false if the photo is a user-provided photo.
           "metadata": { # Metadata about a field. # Metadata about the photo.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1686,7 +1686,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "url": "A String", # The URL of the photo. You can change the desired size by appending a query parameter `sz={size}` at the end of the url, where {size} is the size in pixels. Example: https://lh3.googleusercontent.com/-T_wVWLlmg7w/AAAAAAAAAAI/AAAAAAAABa8/00gzXvDBYqw/s100/photo.jpg?sz=50
@@ -1696,7 +1696,7 @@
         { # A person's relation to another person.
           "formattedType": "A String", # Output only. The type of the relation translated and formatted in the viewer's account locale or the locale specified in the Accept-Language HTTP header.
           "metadata": { # Metadata about a field. # Metadata about the relation.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1709,7 +1709,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "person": "A String", # The name of the other person this relation refers to.
@@ -1720,7 +1720,7 @@
         { # **DEPRECATED**: No data will be returned A person's relationship interest .
           "formattedValue": "A String", # Output only. The value of the relationship interest translated and formatted in the viewer's account locale or the locale specified in the Accept-Language HTTP header.
           "metadata": { # Metadata about a field. # Metadata about the relationship interest.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1733,7 +1733,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "value": "A String", # The kind of relationship the person is looking for. The value can be custom or one of these predefined values: * `friend` * `date` * `relationship` * `networking`
@@ -1743,7 +1743,7 @@
         { # **DEPRECATED**: No data will be returned A person's relationship status.
           "formattedValue": "A String", # Output only. The value of the relationship status translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
           "metadata": { # Metadata about a field. # Metadata about the relationship status.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1756,7 +1756,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "value": "A String", # The relationship status. The value can be custom or one of these predefined values: * `single` * `inARelationship` * `engaged` * `married` * `itsComplicated` * `openRelationship` * `widowed` * `inDomesticPartnership` * `inCivilUnion`
@@ -1766,7 +1766,7 @@
         { # **DEPRECATED**: Please use `person.locations` instead. A person's past or current residence.
           "current": True or False, # True if the residence is the person's current residence; false if the residence is a past residence.
           "metadata": { # Metadata about a field. # Metadata about the residence.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1779,7 +1779,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "value": "A String", # The address of the residence.
@@ -1790,7 +1790,7 @@
         { # A person's SIP address. Session Initial Protocol addresses are used for VoIP communications to make voice or video calls over the internet.
           "formattedType": "A String", # Output only. The type of the SIP address translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
           "metadata": { # Metadata about a field. # Metadata about the SIP address.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1803,7 +1803,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "type": "A String", # The type of the SIP address. The type can be custom or or one of these predefined values: * `home` * `work` * `mobile` * `other`
@@ -1813,7 +1813,7 @@
       "skills": [ # The person's skills.
         { # A skill that the person has.
           "metadata": { # Metadata about a field. # Metadata about the skill.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1826,7 +1826,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "value": "A String", # The skill; for example, `underwater basket weaving`.
@@ -1835,7 +1835,7 @@
       "taglines": [ # Output only. **DEPRECATED**: No data will be returned The person's taglines.
         { # **DEPRECATED**: No data will be returned A brief one-line description of the person.
           "metadata": { # Metadata about a field. # Metadata about the tagline.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1848,7 +1848,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "value": "A String", # The tagline.
@@ -1858,7 +1858,7 @@
         { # A person's associated URLs.
           "formattedType": "A String", # Output only. The type of the URL translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
           "metadata": { # Metadata about a field. # Metadata about the URL.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1871,7 +1871,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "type": "A String", # The type of the URL. The type can be custom or one of these predefined values: * `home` * `work` * `blog` * `profile` * `homePage` * `ftp` * `reservations` * `appInstallPage`: website for a Currents application. * `other`
@@ -1882,7 +1882,7 @@
         { # Arbitrary user data that is populated by the end users.
           "key": "A String", # The end user specified key of the user defined data.
           "metadata": { # Metadata about a field. # Metadata about the user defined data.
-            "primary": True or False, # True if the field is the primary field for the person.
+            "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
             "source": { # The source of a field. # The source of the field.
               "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
               "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1895,7 +1895,7 @@
               "type": "A String", # The source type.
               "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
             },
-            "sourcePrimary": True or False, # True if the field is the primary field for the source.
+            "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
             "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
           },
           "value": "A String", # The end user specified value of the user defined data.
@@ -1950,7 +1950,7 @@
             "formattedType": "A String", # Output only. The type of the address translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
             "formattedValue": "A String", # The unstructured value of the address. If this is not set by the user it will be automatically constructed from structured values.
             "metadata": { # Metadata about a field. # Metadata about the address.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1963,7 +1963,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "poBox": "A String", # The P.O. box of the address.
@@ -1978,7 +1978,7 @@
           { # A person's age range.
             "ageRange": "A String", # The age range.
             "metadata": { # Metadata about a field. # Metadata about the age range.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -1991,7 +1991,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
           },
@@ -2000,7 +2000,7 @@
           { # A person's short biography.
             "contentType": "A String", # The content type of the biography.
             "metadata": { # Metadata about a field. # Metadata about the biography.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2013,7 +2013,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "value": "A String", # The short biography.
@@ -2027,7 +2027,7 @@
               "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
             },
             "metadata": { # Metadata about a field. # Metadata about the birthday.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2040,7 +2040,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "text": "A String", # A free-form string representing the user's birthday.
@@ -2049,7 +2049,7 @@
         "braggingRights": [ # **DEPRECATED**: No data will be returned The person's bragging rights.
           { # **DEPRECATED**: No data will be returned A person's bragging rights.
             "metadata": { # Metadata about a field. # Metadata about the bragging rights.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2062,7 +2062,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "value": "A String", # The bragging rights; for example, `climbed mount everest`.
@@ -2072,7 +2072,7 @@
           { # A person's calendar URL.
             "formattedType": "A String", # Output only. The type of the calendar URL translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
             "metadata": { # Metadata about a field. # Metadata about the calendar URL.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2085,7 +2085,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "type": "A String", # The type of the calendar URL. The type can be custom or one of these predefined values: * `home` * `freeBusy` * `work`
@@ -2096,7 +2096,7 @@
           { # Arbitrary client data that is populated by clients. Duplicate keys and values are allowed.
             "key": "A String", # The client specified key of the client data.
             "metadata": { # Metadata about a field. # Metadata about the client data.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2109,7 +2109,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "value": "A String", # The client specified value of the client data.
@@ -2119,7 +2119,7 @@
           { # A person's cover photo. A large image shown on the person's profile page that represents who they are or what they care about.
             "default": True or False, # True if the cover photo is the default cover photo; false if the cover photo is a user-provided cover photo.
             "metadata": { # Metadata about a field. # Metadata about the cover photo.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2132,7 +2132,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "url": "A String", # The URL of the cover photo.
@@ -2143,7 +2143,7 @@
             "displayName": "A String", # The display name of the email.
             "formattedType": "A String", # Output only. The type of the email address translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
             "metadata": { # Metadata about a field. # Metadata about the email address.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2156,7 +2156,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "type": "A String", # The type of the email address. The type can be custom or one of these predefined values: * `home` * `work` * `other`
@@ -2173,7 +2173,7 @@
             },
             "formattedType": "A String", # Output only. The type of the event translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
             "metadata": { # Metadata about a field. # Metadata about the event.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2186,7 +2186,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "type": "A String", # The type of the event. The type can be custom or one of these predefined values: * `anniversary` * `other`
@@ -2196,7 +2196,7 @@
           { # An identifier from an external entity related to the person.
             "formattedType": "A String", # Output only. The type of the event translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
             "metadata": { # Metadata about a field. # Metadata about the external ID.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2209,7 +2209,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "type": "A String", # The type of the external ID. The type can be custom or one of these predefined values: * `account` * `customer` * `loginId` * `network` * `organization`
@@ -2219,7 +2219,7 @@
         "fileAses": [ # The person's file-ases.
           { # The name that should be used to sort the person in a list.
             "metadata": { # Metadata about a field. # Metadata about the file-as.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2232,7 +2232,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "value": "A String", # The file-as value
@@ -2243,7 +2243,7 @@
             "addressMeAs": "A String", # The type of pronouns that should be used to address the person. The value can be custom or one of these predefined values: * `male` * `female` * `other`
             "formattedValue": "A String", # Output only. The value of the gender translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale. Unspecified or custom value are not localized.
             "metadata": { # Metadata about a field. # Metadata about the gender.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2256,7 +2256,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "value": "A String", # The gender for the person. The gender can be custom or one of these predefined values: * `male` * `female` * `unspecified`
@@ -2267,7 +2267,7 @@
             "formattedProtocol": "A String", # Output only. The protocol of the IM client formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
             "formattedType": "A String", # Output only. The type of the IM client translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
             "metadata": { # Metadata about a field. # Metadata about the IM client.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2280,7 +2280,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "protocol": "A String", # The protocol of the IM client. The protocol can be custom or one of these predefined values: * `aim` * `msn` * `yahoo` * `skype` * `qq` * `googleTalk` * `icq` * `jabber` * `netMeeting`
@@ -2291,7 +2291,7 @@
         "interests": [ # The person's interests.
           { # One of the person's interests.
             "metadata": { # Metadata about a field. # Metadata about the interest.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2304,7 +2304,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "value": "A String", # The interest; for example, `stargazing`.
@@ -2313,7 +2313,7 @@
         "locales": [ # The person's locale preferences.
           { # A person's locale preference.
             "metadata": { # Metadata about a field. # Metadata about the locale.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2326,7 +2326,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "value": "A String", # The well-formed [IETF BCP 47](https://tools.ietf.org/html/bcp47) language tag representing the locale.
@@ -2340,7 +2340,7 @@
             "floor": "A String", # The floor name or number.
             "floorSection": "A String", # The floor section in `floor_name`.
             "metadata": { # Metadata about a field. # Metadata about the location.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2353,7 +2353,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "type": "A String", # The type of the location. The type can be custom or one of these predefined values: * `desk` * `grewUp`
@@ -2370,7 +2370,7 @@
               "inViewerDomain": True or False, # True if the person is in the viewer's Google Workspace domain.
             },
             "metadata": { # Metadata about a field. # Metadata about the membership.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2383,7 +2383,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
           },
@@ -2416,7 +2416,7 @@
           { # A person's miscellaneous keyword.
             "formattedType": "A String", # Output only. The type of the miscellaneous keyword translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
             "metadata": { # Metadata about a field. # Metadata about the miscellaneous keyword.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2429,7 +2429,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "type": "A String", # The miscellaneous keyword type.
@@ -2445,7 +2445,7 @@
             "honorificPrefix": "A String", # The honorific prefixes, such as `Mrs.` or `Dr.`
             "honorificSuffix": "A String", # The honorific suffixes, such as `Jr.`
             "metadata": { # Metadata about a field. # Metadata about the name.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2458,7 +2458,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "middleName": "A String", # The middle name(s).
@@ -2474,7 +2474,7 @@
         "nicknames": [ # The person's nicknames.
           { # A person's nickname.
             "metadata": { # Metadata about a field. # Metadata about the nickname.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2487,7 +2487,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "type": "A String", # The type of the nickname.
@@ -2497,7 +2497,7 @@
         "occupations": [ # The person's occupations.
           { # A person's occupation.
             "metadata": { # Metadata about a field. # Metadata about the occupation.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2510,7 +2510,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "value": "A String", # The occupation; for example, `carpenter`.
@@ -2530,7 +2530,7 @@
             "jobDescription": "A String", # The person's job description at the organization.
             "location": "A String", # The location of the organization office the person works at.
             "metadata": { # Metadata about a field. # Metadata about the organization.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2543,7 +2543,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "name": "A String", # The name of the organization.
@@ -2563,7 +2563,7 @@
             "canonicalForm": "A String", # Output only. The canonicalized [ITU-T E.164](https://law.resource.org/pub/us/cfr/ibr/004/itu-t.E.164.1.2008.pdf) form of the phone number.
             "formattedType": "A String", # Output only. The type of the phone number translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
             "metadata": { # Metadata about a field. # Metadata about the phone number.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2576,7 +2576,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "type": "A String", # The type of the phone number. The type can be custom or one of these predefined values: * `home` * `work` * `mobile` * `homeFax` * `workFax` * `otherFax` * `pager` * `workMobile` * `workPager` * `main` * `googleVoice` * `other`
@@ -2587,7 +2587,7 @@
           { # A person's photo. A picture shown next to the person's name to help others recognize the person.
             "default": True or False, # True if the photo is a default photo; false if the photo is a user-provided photo.
             "metadata": { # Metadata about a field. # Metadata about the photo.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2600,7 +2600,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "url": "A String", # The URL of the photo. You can change the desired size by appending a query parameter `sz={size}` at the end of the url, where {size} is the size in pixels. Example: https://lh3.googleusercontent.com/-T_wVWLlmg7w/AAAAAAAAAAI/AAAAAAAABa8/00gzXvDBYqw/s100/photo.jpg?sz=50
@@ -2610,7 +2610,7 @@
           { # A person's relation to another person.
             "formattedType": "A String", # Output only. The type of the relation translated and formatted in the viewer's account locale or the locale specified in the Accept-Language HTTP header.
             "metadata": { # Metadata about a field. # Metadata about the relation.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2623,7 +2623,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "person": "A String", # The name of the other person this relation refers to.
@@ -2634,7 +2634,7 @@
           { # **DEPRECATED**: No data will be returned A person's relationship interest .
             "formattedValue": "A String", # Output only. The value of the relationship interest translated and formatted in the viewer's account locale or the locale specified in the Accept-Language HTTP header.
             "metadata": { # Metadata about a field. # Metadata about the relationship interest.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2647,7 +2647,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "value": "A String", # The kind of relationship the person is looking for. The value can be custom or one of these predefined values: * `friend` * `date` * `relationship` * `networking`
@@ -2657,7 +2657,7 @@
           { # **DEPRECATED**: No data will be returned A person's relationship status.
             "formattedValue": "A String", # Output only. The value of the relationship status translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
             "metadata": { # Metadata about a field. # Metadata about the relationship status.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2670,7 +2670,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "value": "A String", # The relationship status. The value can be custom or one of these predefined values: * `single` * `inARelationship` * `engaged` * `married` * `itsComplicated` * `openRelationship` * `widowed` * `inDomesticPartnership` * `inCivilUnion`
@@ -2680,7 +2680,7 @@
           { # **DEPRECATED**: Please use `person.locations` instead. A person's past or current residence.
             "current": True or False, # True if the residence is the person's current residence; false if the residence is a past residence.
             "metadata": { # Metadata about a field. # Metadata about the residence.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2693,7 +2693,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "value": "A String", # The address of the residence.
@@ -2704,7 +2704,7 @@
           { # A person's SIP address. Session Initial Protocol addresses are used for VoIP communications to make voice or video calls over the internet.
             "formattedType": "A String", # Output only. The type of the SIP address translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
             "metadata": { # Metadata about a field. # Metadata about the SIP address.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2717,7 +2717,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "type": "A String", # The type of the SIP address. The type can be custom or or one of these predefined values: * `home` * `work` * `mobile` * `other`
@@ -2727,7 +2727,7 @@
         "skills": [ # The person's skills.
           { # A skill that the person has.
             "metadata": { # Metadata about a field. # Metadata about the skill.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2740,7 +2740,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "value": "A String", # The skill; for example, `underwater basket weaving`.
@@ -2749,7 +2749,7 @@
         "taglines": [ # Output only. **DEPRECATED**: No data will be returned The person's taglines.
           { # **DEPRECATED**: No data will be returned A brief one-line description of the person.
             "metadata": { # Metadata about a field. # Metadata about the tagline.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2762,7 +2762,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "value": "A String", # The tagline.
@@ -2772,7 +2772,7 @@
           { # A person's associated URLs.
             "formattedType": "A String", # Output only. The type of the URL translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
             "metadata": { # Metadata about a field. # Metadata about the URL.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2785,7 +2785,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "type": "A String", # The type of the URL. The type can be custom or one of these predefined values: * `home` * `work` * `blog` * `profile` * `homePage` * `ftp` * `reservations` * `appInstallPage`: website for a Currents application. * `other`
@@ -2796,7 +2796,7 @@
           { # Arbitrary user data that is populated by the end users.
             "key": "A String", # The end user specified key of the user defined data.
             "metadata": { # Metadata about a field. # Metadata about the user defined data.
-              "primary": True or False, # True if the field is the primary field for the person.
+              "primary": True or False, # Output only. True if the field is the primary field for all sources in the person. Each person will have at most one field with `primary` set to true.
               "source": { # The source of a field. # The source of the field.
                 "etag": "A String", # **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
                 "id": "A String", # The unique identifier within the source type generated by the server.
@@ -2809,7 +2809,7 @@
                 "type": "A String", # The source type.
                 "updateTime": "A String", # Output only. **Only populated in `person.metadata.sources`.** Last update timestamp of this source.
               },
-              "sourcePrimary": True or False, # True if the field is the primary field for the source.
+              "sourcePrimary": True or False, # True if the field is the primary field for the source. Each source must have at most one field with `source_primary` set to true.
               "verified": True or False, # Output only. True if the field is verified; false if the field is unverified. A verified field is typically a name, email address, phone number, or website that has been confirmed to be owned by the person.
             },
             "value": "A String", # The end user specified value of the user defined data.