Regen docs (#364)

diff --git a/docs/dyn/people_v1.people.html b/docs/dyn/people_v1.people.html
index 4ed3fa2..4eaa5e0 100644
--- a/docs/dyn/people_v1.people.html
+++ b/docs/dyn/people_v1.people.html
@@ -80,61 +80,106 @@
 <p class="firstline">Returns the connections Resource.</p>
 
 <p class="toc_element">
-  <code><a href="#get">get(resourceName, x__xgafv=None, requestMask_includeField=None)</a></code></p>
-<p class="firstline">Provides information about a person resource for a resource name. Use `people/me` to indicate the authenticated user.</p>
+  <code><a href="#get">get(resourceName=None, x__xgafv=None, requestMask_includeField=None)</a></code></p>
+<p class="firstline">Provides information about a person resource for a resource name. Use</p>
 <p class="toc_element">
   <code><a href="#getBatchGet">getBatchGet(resourceNames=None, x__xgafv=None, requestMask_includeField=None)</a></code></p>
-<p class="firstline">Provides information about a list of specific people by specifying a list of requested resource names. Use `people/me` to indicate the authenticated user.</p>
+<p class="firstline">Provides information about a list of specific people by specifying a list</p>
 <h3>Method Details</h3>
 <div class="method">
-    <code class="details" id="get">get(resourceName, x__xgafv=None, requestMask_includeField=None)</code>
-  <pre>Provides information about a person resource for a resource name. Use `people/me` to indicate the authenticated user.
+    <code class="details" id="get">get(resourceName=None, x__xgafv=None, requestMask_includeField=None)</code>
+  <pre>Provides information about a person resource for a resource name. Use
+`people/me` to indicate the authenticated user.
 
 Args:
-  resourceName: string, The resource name of the person to provide information about. - To get information about the authenticated user, specify `people/me`. - To get information about any user, specify the resource name that identifies the user, such as the resource names returned by [`people.connections.list`](/people/api/rest/v1/people.connections/list). (required)
+  resourceName: string, The resource name of the person to provide information about.
+
+- To get information about the authenticated user, specify `people/me`.
+- To get information about any user, specify the resource name that
+  identifies the user, such as the resource names returned by
+  [`people.connections.list`](/people/api/rest/v1/people.connections/list). (required)
   x__xgafv: string, V1 error format.
-  requestMask_includeField: string, Comma-separated list of fields to be included in the response. Omitting this field will include all fields. Each path should start with `person.`: for example, `person.names` or `person.photos`.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+  requestMask_includeField: string, Comma-separated list of fields to be included in the response. Omitting
+this field will include all fields except for connections.list requests,
+which have a default mask that includes common fields like metadata, name,
+photo, and profile url.
+Each path should start with `person.`: for example, `person.names` or
+`person.photos`.
 
 Returns:
   An object of the form:
 
-    { # Information about a person merged from various data sources such as the authenticated user's contacts and profile data. Fields other than IDs, metadata, and group memberships are user-edited. Most fields can have multiple items. The items in a field have no guaranteed order, but each non-empty field is guaranteed to have exactly one field with `metadata.primary` set to true.
-    "phoneNumbers": [ # The person's phone numbers.
-      { # A person's phone number.
-        "canonicalForm": "A String", # The read-only 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", # The read-only type of the phone number translated and formatted in the viewer's account locale or the the `Accept-Language` HTTP header locale.
-        "type": "A String", # The type of the phone number. The type can be custom or predefined. Possible values include, but are not limited to, the following: * `home` * `work` * `mobile` * `homeFax` * `workFax` * `otherFax` * `pager` * `workMobile` * `workPager` * `main` * `googleVoice` * `other`
-        "value": "A String", # The phone number.
-        "metadata": { # Metadata about a field. # Metadata about the phone number.
+    { # Information about a person merged from various data sources such as the
+      # authenticated user's contacts and profile data. Fields other than IDs,
+      # metadata, and group memberships are user-edited.
+      #
+      # Most fields can have multiple items. The items in a field have no guaranteed
+      # order, but each non-empty field is guaranteed to have exactly one field with
+      # `metadata.primary` set to true.
+      # NEXT_ID: 31
+    "braggingRights": [ # The person's bragging rights.
+      { # A person's bragging rights.
+        "value": "A String", # The bragging rights; for example, `climbed mount everest`.
+        "metadata": { # Metadata about a field. # Metadata about the bragging rights.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
     "addresses": [ # The person's street addresses.
-      { # A person's physical address. May be a P.O. box or street address. All fields are optional.
-        "formattedType": "A String", # The read-only type of the address translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
-        "countryCode": "A String", # The [ISO 3166-1 alpha-2](http://www.iso.org/iso/country_codes.htm) country code of the address.
+      { # A person's physical address. May be a P.O. box or street address. All fields
+          # are optional.
+        "formattedType": "A String", # The read-only type of the address translated and formatted in the viewer's
+            # account locale or the `Accept-Language` HTTP header locale.
+        "countryCode": "A String", # The [ISO 3166-1 alpha-2](http://www.iso.org/iso/country_codes.htm) country
+            # code of the address.
         "city": "A String", # The city of the address.
-        "formattedValue": "A String", # The read-only value of the address 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.
         "region": "A String", # The region of the address; for example, the state or province.
         "poBox": "A String", # The P.O. box of the address.
         "streetAddress": "A String", # The street address.
         "country": "A String", # The country of the address.
         "postalCode": "A String", # The postal code of the address.
         "extendedAddress": "A String", # The extended address of the address; for example, the apartment number.
-        "type": "A String", # The type of the address. The type can be custom or predefined. Possible values include, but are not limited to, the following: * `home` * `work` * `other`
+        "type": "A String", # The type of the address. The type can be custom or predefined.
+            # Possible values include, but are not limited to, the following:
+            #
+            # * `home`
+            # * `work`
+            # * `other`
         "metadata": { # Metadata about a field. # Metadata about the address.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
@@ -144,11 +189,20 @@
         "value": "A String", # The nickname.
         "metadata": { # Metadata about a field. # Metadata about the nickname.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
@@ -157,25 +211,62 @@
         "value": "A String", # The occupation; for example, `carpenter`.
         "metadata": { # Metadata about a field. # Metadata about the occupation.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
-    "braggingRights": [ # The person's bragging rights.
-      { # A person's bragging rights.
-        "value": "A String", # The bragging rights; for example, `climbed mount everest`.
-        "metadata": { # Metadata about a field. # Metadata about the bragging rights.
+    "phoneNumbers": [ # The person's phone numbers.
+      { # A person's phone number.
+        "formattedType": "A String", # The read-only type of the phone number translated and formatted in the
+            # viewer's account locale or the the `Accept-Language` HTTP header locale.
+        "metadata": { # Metadata about a field. # Metadata about the phone number.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
+        "type": "A String", # The type of the phone number. The type can be custom or predefined.
+            # Possible values include, but are not limited to, the following:
+            #
+            # * `home`
+            # * `work`
+            # * `mobile`
+            # * `homeFax`
+            # * `workFax`
+            # * `otherFax`
+            # * `pager`
+            # * `workMobile`
+            # * `workPager`
+            # * `main`
+            # * `googleVoice`
+            # * `other`
+        "value": "A String", # The phone number.
+        "canonicalForm": "A String", # The read-only 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.
       },
     ],
     "names": [ # The person's names.
@@ -183,70 +274,174 @@
         "phoneticMiddleName": "A String", # The middle name(s) spelled as they sound.
         "honorificPrefix": "A String", # The honorific prefixes, such as `Mrs.` or `Dr.`
         "phoneticFamilyName": "A String", # The family name spelled as it sounds.
-        "displayName": "A String", # The display name formatted according to the locale specified by the viewer's account or the Accept-Language HTTP header.
+        "displayName": "A String", # The read-only display name formatted according to the locale specified by
+            # the viewer's account or the <code>Accept-Language</code> HTTP header.
+        "displayNameLastFirst": "A String", # The read-only display name with the last name first formatted according to
+            # the locale specified by the viewer's account or the
+            # <code>Accept-Language</code> HTTP header.
         "middleName": "A String", # The middle name(s).
         "phoneticHonorificPrefix": "A String", # The honorific prefixes spelled as they sound.
         "familyName": "A String", # The family name.
+        "phoneticFullName": "A String", # The full name spelled as it sounds.
         "phoneticGivenName": "A String", # The given name spelled as it sounds.
         "phoneticHonorificSuffix": "A String", # The honorific suffixes spelled as they sound.
         "givenName": "A String", # The given name.
         "honorificSuffix": "A String", # The honorific suffixes, such as `Jr.`
         "metadata": { # Metadata about a field. # Metadata about the name.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
-    "resourceName": "A String", # The resource name for the person, assigned by the server. An ASCII string with a max length of 27 characters. Always starts with `people/`.
+    "resourceName": "A String", # The resource name for the person, assigned by the server. An ASCII string
+        # with a max length of 27 characters. Always starts with `people/`.
+    "ageRanges": [ # The person's age ranges.
+      { # A person's age range.
+        "ageRange": "A String", # The age range.
+        "metadata": { # Metadata about a field. # Metadata about the age range.
+          "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
+            "type": "A String", # The source type.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
+          },
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
+        },
+      },
+    ],
     "birthdays": [ # The person's birthdays.
-      { # A person's birthday. At least one of the `date` and `text` fields are specified. The `date` and `text` fields typically represent the same date, but are not guaranteed to.
-        "date": { # Represents a whole calendar date, for example a date of birth. The time of day and time zone are either specified elsewhere or are not significant. The date is relative to the [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar). The day may be 0 to represent a year and month where the day is not significant. The year may be 0 to represent a month and day independent of year; for example, anniversary date. # The date of the birthday.
+      { # A person's birthday. At least one of the `date` and `text` fields are
+          # specified. The `date` and `text` fields typically represent the same
+          # date, but are not guaranteed to.
+        "date": { # Represents a whole calendar date, for example a date of birth. The time # The date of the birthday.
+            # of day and time zone are either specified elsewhere or are not
+            # significant. The date is relative to the
+            # [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar).
+            # The day may be 0 to represent a year and month where the day is not
+            # significant. The year may be 0 to represent a month and day independent
+            # of year; for example, anniversary date.
+          "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
+              # a year.
+          "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
+              # if specifying a year/month where the day is not significant.
           "month": 42, # Month of year. Must be from 1 to 12.
-          "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if specifying a year/month where the day is not significant.
-          "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without a year.
         },
         "text": "A String", # A free-form string representing the user's birthday.
         "metadata": { # Metadata about a field. # Metadata about the birthday.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
     "relations": [ # The person's relations.
       { # A person's relation to another person.
         "person": "A String", # The name of the other person this relation refers to.
-        "formattedType": "A String", # The type of the relation translated and formatted in the viewer's account locale or the locale specified in the Accept-Language HTTP header.
-        "type": "A String", # The person's relation to the other person. The type can be custom or predefined. Possible values include, but are not limited to, the following values: * `spouse` * `child` * `mother` * `father` * `parent` * `brother` * `sister` * `friend` * `relative` * `domesticPartner` * `manager` * `assistant` * `referredBy` * `partner`
         "metadata": { # Metadata about a field. # Metadata about the relation.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
+        "type": "A String", # The person's relation to the other person. The type can be custom or predefined.
+            # Possible values include, but are not limited to, the following values:
+            #
+            # * `spouse`
+            # * `child`
+            # * `mother`
+            # * `father`
+            # * `parent`
+            # * `brother`
+            # * `sister`
+            # * `friend`
+            # * `relative`
+            # * `domesticPartner`
+            # * `manager`
+            # * `assistant`
+            # * `referredBy`
+            # * `partner`
+        "formattedType": "A String", # The type of the relation translated and formatted in the viewer's account
+            # locale or the locale specified in the Accept-Language HTTP header.
       },
     ],
-    "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the resource. Used for web cache validation.
+    "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+        # resource. Used for web cache validation.
     "relationshipStatuses": [ # The person's relationship statuses.
-      { # A person's relationship status.
-        "formattedValue": "A String", # The read-only value of the relationship status translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
-        "value": "A String", # The relationship status. The value can be custom or predefined. Possible values include, but are not limited to, the following: * `single` * `inARelationship` * `engaged` * `married` * `itsComplicated` * `openRelationship` * `widowed` * `inDomesticPartnership` * `inCivilUnion`
+      { # A person's read-only relationship status.
+        "formattedValue": "A String", # The read-only value of the relationship status translated and formatted in
+            # the viewer's account locale or the `Accept-Language` HTTP header locale.
+        "value": "A String", # The relationship status. The value can be custom or predefined.
+            # Possible values include, but are not limited to, the following:
+            #
+            # * `single`
+            # * `inARelationship`
+            # * `engaged`
+            # * `married`
+            # * `itsComplicated`
+            # * `openRelationship`
+            # * `widowed`
+            # * `inDomesticPartnership`
+            # * `inCivilUnion`
         "metadata": { # Metadata about a field. # Metadata about the relationship status.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
@@ -255,263 +450,528 @@
         "value": "A String", # The skill; for example, `underwater basket weaving`.
         "metadata": { # Metadata about a field. # Metadata about the skill.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
     "imClients": [ # The person's instant messaging clients.
       { # A person's instant messaging client.
         "username": "A String", # The user name used in the IM client.
-        "formattedType": "A String", # The read-only type of the IM client translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
-        "protocol": "A String", # The protocol of the IM client. The protocol can be custom or predefined. Possible values include, but are not limited to, the following: * `aim` * `msn` * `yahoo` * `skype` * `qq` * `googleTalk` * `icq` * `jabber` * `netMeeting`
-        "formattedProtocol": "A String", # The read-only protocol of the IM client formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
-        "type": "A String", # The type of the IM client. The type can be custom or predefined. Possible values include, but are not limited to, the following: * `home` * `work` * `other`
+        "formattedType": "A String", # The read-only type of the IM client translated and formatted in the
+            # viewer's account locale or the `Accept-Language` HTTP header locale.
+        "protocol": "A String", # The protocol of the IM client. The protocol can be custom or predefined.
+            # Possible values include, but are not limited to, the following:
+            #
+            # * `aim`
+            # * `msn`
+            # * `yahoo`
+            # * `skype`
+            # * `qq`
+            # * `googleTalk`
+            # * `icq`
+            # * `jabber`
+            # * `netMeeting`
+        "formattedProtocol": "A String", # The read-only protocol of the IM client formatted in the viewer's account
+            # locale or the `Accept-Language` HTTP header locale.
+        "type": "A String", # The type of the IM client. The type can be custom or predefined.
+            # Possible values include, but are not limited to, the following:
+            #
+            # * `home`
+            # * `work`
+            # * `other`
         "metadata": { # Metadata about a field. # Metadata about the IM client.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
     "events": [ # The person's events.
       { # An event related to the person.
-        "date": { # Represents a whole calendar date, for example a date of birth. The time of day and time zone are either specified elsewhere or are not significant. The date is relative to the [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar). The day may be 0 to represent a year and month where the day is not significant. The year may be 0 to represent a month and day independent of year; for example, anniversary date. # The date of the event.
+        "date": { # Represents a whole calendar date, for example a date of birth. The time # The date of the event.
+            # of day and time zone are either specified elsewhere or are not
+            # significant. The date is relative to the
+            # [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar).
+            # The day may be 0 to represent a year and month where the day is not
+            # significant. The year may be 0 to represent a month and day independent
+            # of year; for example, anniversary date.
+          "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
+              # a year.
+          "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
+              # if specifying a year/month where the day is not significant.
           "month": 42, # Month of year. Must be from 1 to 12.
-          "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if specifying a year/month where the day is not significant.
-          "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without a year.
         },
-        "formattedType": "A String", # The read-only type of the event translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
-        "type": "A String", # The type of the event. The type can be custom or predefined. Possible values include, but are not limited to, the following: * `anniversary` * `other`
+        "formattedType": "A String", # The read-only type of the event translated and formatted in the
+            # viewer's account locale or the `Accept-Language` HTTP header locale.
+        "type": "A String", # The type of the event. The type can be custom or predefined.
+            # Possible values include, but are not limited to, the following:
+            #
+            # * `anniversary`
+            # * `other`
         "metadata": { # Metadata about a field. # Metadata about the event.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
-    "metadata": { # Metadata about a person. # Metadata about the person.
-      "previousResourceNames": [ # Any former resource names this person has had. Populated only for [`connections.list`](/people/api/rest/v1/people.connections/list) requests that include a sync token. The resource name may change when adding or removing fields that link a contact and profile such as a verified email, verified phone number, or profile URL.
+    "metadata": { # The read-only metadata about a person. # Metadata about the person.
+      "previousResourceNames": [ # Any former resource names this person has had. Populated only for
+          # [`connections.list`](/people/api/rest/v1/people.connections/list) requests
+          # that include a sync token.
+          #
+          # The resource name may change when adding or removing fields that link a
+          # contact and profile such as a verified email, verified phone number, or
+          # profile URL.
         "A String",
       ],
       "sources": [ # The sources of data for the person.
         { # The source of a field.
+          "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+              # source. Used for web cache validation. Only populated in
+              # person.metadata.sources.
           "type": "A String", # The source type.
-          "id": "A String", # A unique identifier within the source type generated by the server.
+          "id": "A String", # The unique identifier within the source type generated by the server.
+          "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+            "objectType": "A String", # The profile object type.
+          },
         },
       ],
-      "deleted": True or False, # True if the person resource has been deleted. Populated only for [`connections.list`](/people/api/rest/v1/people.connections/list) requests that include a sync token.
-      "objectType": "A String", # The type of the person object.
+      "linkedPeopleResourceNames": [ # Resource names of people linked to this resource.
+        "A String",
+      ],
+      "deleted": True or False, # True if the person resource has been deleted. Populated only for
+          # [`connections.list`](/people/api/rest/v1/people.connections/list) requests
+          # that include a sync token.
+      "objectType": "A String", # DEPRECATED(Please read person.metadata.sources.profile_metadata instead).
+          # The type of the person object.
     },
     "interests": [ # The person's interests.
       { # One of the person's interests.
         "value": "A String", # The interest; for example, `stargazing`.
         "metadata": { # Metadata about a field. # Metadata about the interest.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
     "photos": [ # The person's photos.
-      { # A person's photo. A picture shown next to the person's name to help others recognize the person.
+      { # A person's read-only photo. A picture shown next to the person's name to
+          # help others recognize the person.
         "url": "A String", # The URL of the photo.
         "metadata": { # Metadata about a field. # Metadata about the photo.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
     "residences": [ # The person's residences.
       { # 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.
+        "current": True or False, # True if the residence is the person's current residence;
+            # false if the residence is a past residence.
         "value": "A String", # The address of the residence.
         "metadata": { # Metadata about a field. # Metadata about the residence.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
     "relationshipInterests": [ # The kind of relationship the person is looking for.
-      { # The kind of relationship the person is looking for.
-        "formattedValue": "A String", # 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.
-        "value": "A String", # The kind of relationship the person is looking for. The value can be custom or predefined. Possible values include, but are not limited to, the following values: * `friend` * `date` * `relationship` * `networking`
+      { # A person's read-only relationship interest .
+        "formattedValue": "A String", # 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.
+        "value": "A String", # The kind of relationship the person is looking for. The value can be custom
+            # or predefined. Possible values include, but are not limited to, the
+            # following values:
+            #
+            # * `friend`
+            # * `date`
+            # * `relationship`
+            # * `networking`
         "metadata": { # Metadata about a field. # Metadata about the relationship interest.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
     "coverPhotos": [ # The person's cover photos.
-      { # 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.
+      { # A person's read-only 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.
         "url": "A String", # The URL of the cover photo.
-        "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.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
     "locales": [ # The person's locale preferences.
       { # A person's locale preference.
-        "value": "A String", # The well-formed [IETF BCP 47](https://tools.ietf.org/html/bcp47) language tag representing the locale.
+        "value": "A String", # The well-formed [IETF BCP 47](https://tools.ietf.org/html/bcp47)
+            # language tag representing the locale.
         "metadata": { # Metadata about a field. # Metadata about the locale.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
     "organizations": [ # The person's past or current organizations.
-      { # A person's past or current organization. Overlapping date ranges are permitted.
-        "formattedType": "A String", # The read-only type of the organization translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
+      { # A person's past or current organization. Overlapping date ranges are
+          # permitted.
+        "formattedType": "A String", # The read-only type of the organization translated and formatted in the
+            # viewer's account locale or the `Accept-Language` HTTP header locale.
         "domain": "A String", # The domain name associated with the organization; for example, `google.com`.
-        "endDate": { # Represents a whole calendar date, for example a date of birth. The time of day and time zone are either specified elsewhere or are not significant. The date is relative to the [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar). The day may be 0 to represent a year and month where the day is not significant. The year may be 0 to represent a month and day independent of year; for example, anniversary date. # The end date when the person left the organization.
+        "endDate": { # Represents a whole calendar date, for example a date of birth. The time # The end date when the person left the organization.
+            # of day and time zone are either specified elsewhere or are not
+            # significant. The date is relative to the
+            # [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar).
+            # The day may be 0 to represent a year and month where the day is not
+            # significant. The year may be 0 to represent a month and day independent
+            # of year; for example, anniversary date.
+          "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
+              # a year.
+          "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
+              # if specifying a year/month where the day is not significant.
           "month": 42, # Month of year. Must be from 1 to 12.
-          "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if specifying a year/month where the day is not significant.
-          "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without a year.
         },
         "name": "A String", # The name of the organization.
-        "startDate": { # Represents a whole calendar date, for example a date of birth. The time of day and time zone are either specified elsewhere or are not significant. The date is relative to the [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar). The day may be 0 to represent a year and month where the day is not significant. The year may be 0 to represent a month and day independent of year; for example, anniversary date. # The start date when the person joined the organization.
-          "month": 42, # Month of year. Must be from 1 to 12.
-          "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if specifying a year/month where the day is not significant.
-          "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without a year.
-        },
-        "symbol": "A String", # The symbol associated with the organization; for example, a stock ticker symbol, abbreviation, or acronym.
         "title": "A String", # The person's job title at the organization.
-        "current": True or False, # True if the organization is the person's current organization; false if the organization is a past organization.
+        "type": "A String", # The type of the organization. The type can be custom or predefined.
+            # Possible values include, but are not limited to, the following:
+            #
+            # * `work`
+            # * `school`
+        "symbol": "A String", # The symbol associated with the organization; for example, a stock ticker
+            # symbol, abbreviation, or acronym.
+        "current": True or False, # True if the organization is the person's current organization;
+            # false if the organization is a past organization.
         "jobDescription": "A String", # The person's job description at the organization.
         "location": "A String", # The location of the organization office the person works at.
         "department": "A String", # The person's department at the organization.
-        "type": "A String", # The type of the organization. The type can be custom or predefined. Possible values include, but are not limited to, the following: * `work` * `school`
+        "startDate": { # Represents a whole calendar date, for example a date of birth. The time # The start date when the person joined the organization.
+            # of day and time zone are either specified elsewhere or are not
+            # significant. The date is relative to the
+            # [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar).
+            # The day may be 0 to represent a year and month where the day is not
+            # significant. The year may be 0 to represent a month and day independent
+            # of year; for example, anniversary date.
+          "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
+              # a year.
+          "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
+              # if specifying a year/month where the day is not significant.
+          "month": 42, # Month of year. Must be from 1 to 12.
+        },
         "phoneticName": "A String", # The phonetic name of the organization.
         "metadata": { # Metadata about a field. # Metadata about the organization.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
     "biographies": [ # The person's biographies.
       { # A person's short biography.
+        "contentType": "A String", # The content type of the biography.
         "value": "A String", # The short biography.
         "metadata": { # Metadata about a field. # Metadata about the biography.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
     "memberships": [ # The person's group memberships.
-      { # A person's membership in a group.
+      { # A person's read-only membership in a group.
         "contactGroupMembership": { # A Google contact group membership. # The contact group membership.
-          "contactGroupId": "A String", # The contact group ID for the contact group membership. The contact group ID can be custom or predefined. Possible values include, but are not limited to, the following: * `myContacts` * `starred` * A numerical ID for user-created groups.
+          "contactGroupId": "A String", # The contact group ID for the contact group membership. The contact group
+              # ID can be custom or predefined. Possible values include, but are not
+              # limited to, the following:
+              #
+              # *  `myContacts`
+              # *  `starred`
+              # *  A numerical ID for user-created groups.
         },
         "domainMembership": { # A Google Apps Domain membership. # The domain membership.
           "inViewerDomain": True or False, # True if the person is in the viewer's Google Apps domain.
         },
         "metadata": { # Metadata about a field. # Metadata about the membership.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
     "taglines": [ # The person's taglines.
-      { # A brief one-line description of the person.
+      { # A read-only brief one-line description of the person.
         "value": "A String", # The tagline.
         "metadata": { # Metadata about a field. # Metadata about the tagline.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
     "urls": [ # The person's associated URLs.
       { # A person's associated URLs.
-        "formattedType": "A String", # The read-only type of the URL translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
-        "type": "A String", # The type of the URL. The type can be custom or predefined. Possible values include, but are not limited to, the following: * `home` * `work` * `blog` * `profile` * `homePage` * `ftp` * `reservations` * `appInstallPage`: website for a Google+ application. * `other`
+        "formattedType": "A String", # The read-only type of the URL translated and formatted in the viewer's
+            # account locale or the `Accept-Language` HTTP header locale.
+        "type": "A String", # The type of the URL. The type can be custom or predefined.
+            # Possible values include, but are not limited to, the following:
+            #
+            # * `home`
+            # * `work`
+            # * `blog`
+            # * `profile`
+            # * `homePage`
+            # * `ftp`
+            # * `reservations`
+            # * `appInstallPage`: website for a Google+ application.
+            # * `other`
         "value": "A String", # The URL.
         "metadata": { # Metadata about a field. # Metadata about the URL.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
-    "ageRange": "A String", # The person's age range.
+    "ageRange": "A String", # DEPRECATED(Please read person.age_ranges instead). The person's age range.
     "genders": [ # The person's genders.
       { # A person's gender.
-        "formattedValue": "A String", # The read-only value of the gender translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
-        "value": "A String", # The gender for the person. The gender can be custom or predefined. Possible values include, but are not limited to, the following: * `male` * `female` * `other` * `unknown`
+        "formattedValue": "A String", # The read-only value of the gender translated and formatted in the viewer's
+            # account locale or the `Accept-Language` HTTP header locale.
+        "value": "A String", # The gender for the person. The gender can be custom or predefined.
+            # Possible values include, but are not limited to, the
+            # following:
+            #
+            # * `male`
+            # * `female`
+            # * `other`
+            # * `unknown`
         "metadata": { # Metadata about a field. # Metadata about the gender.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
     "emailAddresses": [ # The person's email addresses.
       { # A person's email address.
-        "formattedType": "A String", # The read-only type of the email address translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
-        "type": "A String", # The type of the email address. The type can be custom or predefined. Possible values include, but are not limited to, the following: * `home` * `work` * `other`
+        "type": "A String", # The type of the email address. The type can be custom or predefined.
+            # Possible values include, but are not limited to, the following:
+            #
+            # * `home`
+            # * `work`
+            # * `other`
+        "formattedType": "A String", # The read-only type of the email address translated and formatted in the
+            # viewer's account locale or the `Accept-Language` HTTP header locale.
+        "displayName": "A String", # The display name of the email.
         "value": "A String", # The email address.
         "metadata": { # Metadata about a field. # Metadata about the email address.
           "source": { # The source of a field. # The source of the field.
+            "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                # source. Used for web cache validation. Only populated in
+                # person.metadata.sources.
             "type": "A String", # The source type.
-            "id": "A String", # A unique identifier within the source type generated by the server.
+            "id": "A String", # The unique identifier within the source type generated by the server.
+            "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+              "objectType": "A String", # The profile object type.
+            },
           },
-          "verified": True or False, # 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.
-          "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+          "verified": True or False, # 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.
+          "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+              # field.
         },
       },
     ],
@@ -520,12 +980,25 @@
 
 <div class="method">
     <code class="details" id="getBatchGet">getBatchGet(resourceNames=None, x__xgafv=None, requestMask_includeField=None)</code>
-  <pre>Provides information about a list of specific people by specifying a list of requested resource names. Use `people/me` to indicate the authenticated user.
+  <pre>Provides information about a list of specific people by specifying a list
+of requested resource names. Use `people/me` to indicate the authenticated
+user.
 
 Args:
-  resourceNames: string, The resource name, such as one returned by [`people.connections.list`](/people/api/rest/v1/people.connections/list), of one of the people to provide information about. You can include this parameter up to 50 times in one request. (repeated)
+  resourceNames: string, The resource name, such as one returned by
+[`people.connections.list`](/people/api/rest/v1/people.connections/list),
+of one of the people to provide information about. You can include this
+parameter up to 50 times in one request. (repeated)
   x__xgafv: string, V1 error format.
-  requestMask_includeField: string, Comma-separated list of fields to be included in the response. Omitting this field will include all fields. Each path should start with `person.`: for example, `person.names` or `person.photos`.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+  requestMask_includeField: string, Comma-separated list of fields to be included in the response. Omitting
+this field will include all fields except for connections.list requests,
+which have a default mask that includes common fields like metadata, name,
+photo, and profile url.
+Each path should start with `person.`: for example, `person.names` or
+`person.photos`.
 
 Returns:
   An object of the form:
@@ -533,44 +1006,80 @@
     {
     "responses": [ # The response for each requested resource name.
       { # The response for a single person
-        "requestedResourceName": "A String", # The original requested resource name. May be different than the resource name on the returned person. The resource name can change when adding or removing fields that link a contact and profile such as a verified email, verified phone number, or a profile URL.
-        "person": { # Information about a person merged from various data sources such as the authenticated user's contacts and profile data. Fields other than IDs, metadata, and group memberships are user-edited. Most fields can have multiple items. The items in a field have no guaranteed order, but each non-empty field is guaranteed to have exactly one field with `metadata.primary` set to true. # The person.
-          "phoneNumbers": [ # The person's phone numbers.
-            { # A person's phone number.
-              "canonicalForm": "A String", # The read-only 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", # The read-only type of the phone number translated and formatted in the viewer's account locale or the the `Accept-Language` HTTP header locale.
-              "type": "A String", # The type of the phone number. The type can be custom or predefined. Possible values include, but are not limited to, the following: * `home` * `work` * `mobile` * `homeFax` * `workFax` * `otherFax` * `pager` * `workMobile` * `workPager` * `main` * `googleVoice` * `other`
-              "value": "A String", # The phone number.
-              "metadata": { # Metadata about a field. # Metadata about the phone number.
+        "requestedResourceName": "A String", # The original requested resource name. May be different than the resource
+            # name on the returned person.
+            #
+            # The resource name can change when adding or removing fields that link a
+            # contact and profile such as a verified email, verified phone number, or a
+            # profile URL.
+        "person": { # Information about a person merged from various data sources such as the # The person.
+            # authenticated user's contacts and profile data. Fields other than IDs,
+            # metadata, and group memberships are user-edited.
+            #
+            # Most fields can have multiple items. The items in a field have no guaranteed
+            # order, but each non-empty field is guaranteed to have exactly one field with
+            # `metadata.primary` set to true.
+            # NEXT_ID: 31
+          "braggingRights": [ # The person's bragging rights.
+            { # A person's bragging rights.
+              "value": "A String", # The bragging rights; for example, `climbed mount everest`.
+              "metadata": { # Metadata about a field. # Metadata about the bragging rights.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
           "addresses": [ # The person's street addresses.
-            { # A person's physical address. May be a P.O. box or street address. All fields are optional.
-              "formattedType": "A String", # The read-only type of the address translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
-              "countryCode": "A String", # The [ISO 3166-1 alpha-2](http://www.iso.org/iso/country_codes.htm) country code of the address.
+            { # A person's physical address. May be a P.O. box or street address. All fields
+                # are optional.
+              "formattedType": "A String", # The read-only type of the address translated and formatted in the viewer's
+                  # account locale or the `Accept-Language` HTTP header locale.
+              "countryCode": "A String", # The [ISO 3166-1 alpha-2](http://www.iso.org/iso/country_codes.htm) country
+                  # code of the address.
               "city": "A String", # The city of the address.
-              "formattedValue": "A String", # The read-only value of the address 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.
               "region": "A String", # The region of the address; for example, the state or province.
               "poBox": "A String", # The P.O. box of the address.
               "streetAddress": "A String", # The street address.
               "country": "A String", # The country of the address.
               "postalCode": "A String", # The postal code of the address.
               "extendedAddress": "A String", # The extended address of the address; for example, the apartment number.
-              "type": "A String", # The type of the address. The type can be custom or predefined. Possible values include, but are not limited to, the following: * `home` * `work` * `other`
+              "type": "A String", # The type of the address. The type can be custom or predefined.
+                  # Possible values include, but are not limited to, the following:
+                  #
+                  # * `home`
+                  # * `work`
+                  # * `other`
               "metadata": { # Metadata about a field. # Metadata about the address.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
@@ -580,11 +1089,20 @@
               "value": "A String", # The nickname.
               "metadata": { # Metadata about a field. # Metadata about the nickname.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
@@ -593,25 +1111,62 @@
               "value": "A String", # The occupation; for example, `carpenter`.
               "metadata": { # Metadata about a field. # Metadata about the occupation.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
-          "braggingRights": [ # The person's bragging rights.
-            { # A person's bragging rights.
-              "value": "A String", # The bragging rights; for example, `climbed mount everest`.
-              "metadata": { # Metadata about a field. # Metadata about the bragging rights.
+          "phoneNumbers": [ # The person's phone numbers.
+            { # A person's phone number.
+              "formattedType": "A String", # The read-only type of the phone number translated and formatted in the
+                  # viewer's account locale or the the `Accept-Language` HTTP header locale.
+              "metadata": { # Metadata about a field. # Metadata about the phone number.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
+              "type": "A String", # The type of the phone number. The type can be custom or predefined.
+                  # Possible values include, but are not limited to, the following:
+                  #
+                  # * `home`
+                  # * `work`
+                  # * `mobile`
+                  # * `homeFax`
+                  # * `workFax`
+                  # * `otherFax`
+                  # * `pager`
+                  # * `workMobile`
+                  # * `workPager`
+                  # * `main`
+                  # * `googleVoice`
+                  # * `other`
+              "value": "A String", # The phone number.
+              "canonicalForm": "A String", # The read-only 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.
             },
           ],
           "names": [ # The person's names.
@@ -619,70 +1174,174 @@
               "phoneticMiddleName": "A String", # The middle name(s) spelled as they sound.
               "honorificPrefix": "A String", # The honorific prefixes, such as `Mrs.` or `Dr.`
               "phoneticFamilyName": "A String", # The family name spelled as it sounds.
-              "displayName": "A String", # The display name formatted according to the locale specified by the viewer's account or the Accept-Language HTTP header.
+              "displayName": "A String", # The read-only display name formatted according to the locale specified by
+                  # the viewer's account or the <code>Accept-Language</code> HTTP header.
+              "displayNameLastFirst": "A String", # The read-only display name with the last name first formatted according to
+                  # the locale specified by the viewer's account or the
+                  # <code>Accept-Language</code> HTTP header.
               "middleName": "A String", # The middle name(s).
               "phoneticHonorificPrefix": "A String", # The honorific prefixes spelled as they sound.
               "familyName": "A String", # The family name.
+              "phoneticFullName": "A String", # The full name spelled as it sounds.
               "phoneticGivenName": "A String", # The given name spelled as it sounds.
               "phoneticHonorificSuffix": "A String", # The honorific suffixes spelled as they sound.
               "givenName": "A String", # The given name.
               "honorificSuffix": "A String", # The honorific suffixes, such as `Jr.`
               "metadata": { # Metadata about a field. # Metadata about the name.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
-          "resourceName": "A String", # The resource name for the person, assigned by the server. An ASCII string with a max length of 27 characters. Always starts with `people/`.
+          "resourceName": "A String", # The resource name for the person, assigned by the server. An ASCII string
+              # with a max length of 27 characters. Always starts with `people/`.
+          "ageRanges": [ # The person's age ranges.
+            { # A person's age range.
+              "ageRange": "A String", # The age range.
+              "metadata": { # Metadata about a field. # Metadata about the age range.
+                "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
+                  "type": "A String", # The source type.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
+                },
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
+              },
+            },
+          ],
           "birthdays": [ # The person's birthdays.
-            { # A person's birthday. At least one of the `date` and `text` fields are specified. The `date` and `text` fields typically represent the same date, but are not guaranteed to.
-              "date": { # Represents a whole calendar date, for example a date of birth. The time of day and time zone are either specified elsewhere or are not significant. The date is relative to the [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar). The day may be 0 to represent a year and month where the day is not significant. The year may be 0 to represent a month and day independent of year; for example, anniversary date. # The date of the birthday.
+            { # A person's birthday. At least one of the `date` and `text` fields are
+                # specified. The `date` and `text` fields typically represent the same
+                # date, but are not guaranteed to.
+              "date": { # Represents a whole calendar date, for example a date of birth. The time # The date of the birthday.
+                  # of day and time zone are either specified elsewhere or are not
+                  # significant. The date is relative to the
+                  # [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar).
+                  # The day may be 0 to represent a year and month where the day is not
+                  # significant. The year may be 0 to represent a month and day independent
+                  # of year; for example, anniversary date.
+                "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
+                    # a year.
+                "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
+                    # if specifying a year/month where the day is not significant.
                 "month": 42, # Month of year. Must be from 1 to 12.
-                "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if specifying a year/month where the day is not significant.
-                "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without a year.
               },
               "text": "A String", # A free-form string representing the user's birthday.
               "metadata": { # Metadata about a field. # Metadata about the birthday.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
           "relations": [ # The person's relations.
             { # A person's relation to another person.
               "person": "A String", # The name of the other person this relation refers to.
-              "formattedType": "A String", # The type of the relation translated and formatted in the viewer's account locale or the locale specified in the Accept-Language HTTP header.
-              "type": "A String", # The person's relation to the other person. The type can be custom or predefined. Possible values include, but are not limited to, the following values: * `spouse` * `child` * `mother` * `father` * `parent` * `brother` * `sister` * `friend` * `relative` * `domesticPartner` * `manager` * `assistant` * `referredBy` * `partner`
               "metadata": { # Metadata about a field. # Metadata about the relation.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
+              "type": "A String", # The person's relation to the other person. The type can be custom or predefined.
+                  # Possible values include, but are not limited to, the following values:
+                  #
+                  # * `spouse`
+                  # * `child`
+                  # * `mother`
+                  # * `father`
+                  # * `parent`
+                  # * `brother`
+                  # * `sister`
+                  # * `friend`
+                  # * `relative`
+                  # * `domesticPartner`
+                  # * `manager`
+                  # * `assistant`
+                  # * `referredBy`
+                  # * `partner`
+              "formattedType": "A String", # The type of the relation translated and formatted in the viewer's account
+                  # locale or the locale specified in the Accept-Language HTTP header.
             },
           ],
-          "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the resource. Used for web cache validation.
+          "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+              # resource. Used for web cache validation.
           "relationshipStatuses": [ # The person's relationship statuses.
-            { # A person's relationship status.
-              "formattedValue": "A String", # The read-only value of the relationship status translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
-              "value": "A String", # The relationship status. The value can be custom or predefined. Possible values include, but are not limited to, the following: * `single` * `inARelationship` * `engaged` * `married` * `itsComplicated` * `openRelationship` * `widowed` * `inDomesticPartnership` * `inCivilUnion`
+            { # A person's read-only relationship status.
+              "formattedValue": "A String", # The read-only value of the relationship status translated and formatted in
+                  # the viewer's account locale or the `Accept-Language` HTTP header locale.
+              "value": "A String", # The relationship status. The value can be custom or predefined.
+                  # Possible values include, but are not limited to, the following:
+                  #
+                  # * `single`
+                  # * `inARelationship`
+                  # * `engaged`
+                  # * `married`
+                  # * `itsComplicated`
+                  # * `openRelationship`
+                  # * `widowed`
+                  # * `inDomesticPartnership`
+                  # * `inCivilUnion`
               "metadata": { # Metadata about a field. # Metadata about the relationship status.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
@@ -691,263 +1350,528 @@
               "value": "A String", # The skill; for example, `underwater basket weaving`.
               "metadata": { # Metadata about a field. # Metadata about the skill.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
           "imClients": [ # The person's instant messaging clients.
             { # A person's instant messaging client.
               "username": "A String", # The user name used in the IM client.
-              "formattedType": "A String", # The read-only type of the IM client translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
-              "protocol": "A String", # The protocol of the IM client. The protocol can be custom or predefined. Possible values include, but are not limited to, the following: * `aim` * `msn` * `yahoo` * `skype` * `qq` * `googleTalk` * `icq` * `jabber` * `netMeeting`
-              "formattedProtocol": "A String", # The read-only protocol of the IM client formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
-              "type": "A String", # The type of the IM client. The type can be custom or predefined. Possible values include, but are not limited to, the following: * `home` * `work` * `other`
+              "formattedType": "A String", # The read-only type of the IM client translated and formatted in the
+                  # viewer's account locale or the `Accept-Language` HTTP header locale.
+              "protocol": "A String", # The protocol of the IM client. The protocol can be custom or predefined.
+                  # Possible values include, but are not limited to, the following:
+                  #
+                  # * `aim`
+                  # * `msn`
+                  # * `yahoo`
+                  # * `skype`
+                  # * `qq`
+                  # * `googleTalk`
+                  # * `icq`
+                  # * `jabber`
+                  # * `netMeeting`
+              "formattedProtocol": "A String", # The read-only protocol of the IM client formatted in the viewer's account
+                  # locale or the `Accept-Language` HTTP header locale.
+              "type": "A String", # The type of the IM client. The type can be custom or predefined.
+                  # Possible values include, but are not limited to, the following:
+                  #
+                  # * `home`
+                  # * `work`
+                  # * `other`
               "metadata": { # Metadata about a field. # Metadata about the IM client.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
           "events": [ # The person's events.
             { # An event related to the person.
-              "date": { # Represents a whole calendar date, for example a date of birth. The time of day and time zone are either specified elsewhere or are not significant. The date is relative to the [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar). The day may be 0 to represent a year and month where the day is not significant. The year may be 0 to represent a month and day independent of year; for example, anniversary date. # The date of the event.
+              "date": { # Represents a whole calendar date, for example a date of birth. The time # The date of the event.
+                  # of day and time zone are either specified elsewhere or are not
+                  # significant. The date is relative to the
+                  # [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar).
+                  # The day may be 0 to represent a year and month where the day is not
+                  # significant. The year may be 0 to represent a month and day independent
+                  # of year; for example, anniversary date.
+                "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
+                    # a year.
+                "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
+                    # if specifying a year/month where the day is not significant.
                 "month": 42, # Month of year. Must be from 1 to 12.
-                "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if specifying a year/month where the day is not significant.
-                "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without a year.
               },
-              "formattedType": "A String", # The read-only type of the event translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
-              "type": "A String", # The type of the event. The type can be custom or predefined. Possible values include, but are not limited to, the following: * `anniversary` * `other`
+              "formattedType": "A String", # The read-only type of the event translated and formatted in the
+                  # viewer's account locale or the `Accept-Language` HTTP header locale.
+              "type": "A String", # The type of the event. The type can be custom or predefined.
+                  # Possible values include, but are not limited to, the following:
+                  #
+                  # * `anniversary`
+                  # * `other`
               "metadata": { # Metadata about a field. # Metadata about the event.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
-          "metadata": { # Metadata about a person. # Metadata about the person.
-            "previousResourceNames": [ # Any former resource names this person has had. Populated only for [`connections.list`](/people/api/rest/v1/people.connections/list) requests that include a sync token. The resource name may change when adding or removing fields that link a contact and profile such as a verified email, verified phone number, or profile URL.
+          "metadata": { # The read-only metadata about a person. # Metadata about the person.
+            "previousResourceNames": [ # Any former resource names this person has had. Populated only for
+                # [`connections.list`](/people/api/rest/v1/people.connections/list) requests
+                # that include a sync token.
+                #
+                # The resource name may change when adding or removing fields that link a
+                # contact and profile such as a verified email, verified phone number, or
+                # profile URL.
               "A String",
             ],
             "sources": [ # The sources of data for the person.
               { # The source of a field.
+                "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                    # source. Used for web cache validation. Only populated in
+                    # person.metadata.sources.
                 "type": "A String", # The source type.
-                "id": "A String", # A unique identifier within the source type generated by the server.
+                "id": "A String", # The unique identifier within the source type generated by the server.
+                "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                  "objectType": "A String", # The profile object type.
+                },
               },
             ],
-            "deleted": True or False, # True if the person resource has been deleted. Populated only for [`connections.list`](/people/api/rest/v1/people.connections/list) requests that include a sync token.
-            "objectType": "A String", # The type of the person object.
+            "linkedPeopleResourceNames": [ # Resource names of people linked to this resource.
+              "A String",
+            ],
+            "deleted": True or False, # True if the person resource has been deleted. Populated only for
+                # [`connections.list`](/people/api/rest/v1/people.connections/list) requests
+                # that include a sync token.
+            "objectType": "A String", # DEPRECATED(Please read person.metadata.sources.profile_metadata instead).
+                # The type of the person object.
           },
           "interests": [ # The person's interests.
             { # One of the person's interests.
               "value": "A String", # The interest; for example, `stargazing`.
               "metadata": { # Metadata about a field. # Metadata about the interest.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
           "photos": [ # The person's photos.
-            { # A person's photo. A picture shown next to the person's name to help others recognize the person.
+            { # A person's read-only photo. A picture shown next to the person's name to
+                # help others recognize the person.
               "url": "A String", # The URL of the photo.
               "metadata": { # Metadata about a field. # Metadata about the photo.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
           "residences": [ # The person's residences.
             { # 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.
+              "current": True or False, # True if the residence is the person's current residence;
+                  # false if the residence is a past residence.
               "value": "A String", # The address of the residence.
               "metadata": { # Metadata about a field. # Metadata about the residence.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
           "relationshipInterests": [ # The kind of relationship the person is looking for.
-            { # The kind of relationship the person is looking for.
-              "formattedValue": "A String", # 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.
-              "value": "A String", # The kind of relationship the person is looking for. The value can be custom or predefined. Possible values include, but are not limited to, the following values: * `friend` * `date` * `relationship` * `networking`
+            { # A person's read-only relationship interest .
+              "formattedValue": "A String", # 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.
+              "value": "A String", # The kind of relationship the person is looking for. The value can be custom
+                  # or predefined. Possible values include, but are not limited to, the
+                  # following values:
+                  #
+                  # * `friend`
+                  # * `date`
+                  # * `relationship`
+                  # * `networking`
               "metadata": { # Metadata about a field. # Metadata about the relationship interest.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
           "coverPhotos": [ # The person's cover photos.
-            { # 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.
+            { # A person's read-only 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.
               "url": "A String", # The URL of the cover photo.
-              "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.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
           "locales": [ # The person's locale preferences.
             { # A person's locale preference.
-              "value": "A String", # The well-formed [IETF BCP 47](https://tools.ietf.org/html/bcp47) language tag representing the locale.
+              "value": "A String", # The well-formed [IETF BCP 47](https://tools.ietf.org/html/bcp47)
+                  # language tag representing the locale.
               "metadata": { # Metadata about a field. # Metadata about the locale.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
           "organizations": [ # The person's past or current organizations.
-            { # A person's past or current organization. Overlapping date ranges are permitted.
-              "formattedType": "A String", # The read-only type of the organization translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
+            { # A person's past or current organization. Overlapping date ranges are
+                # permitted.
+              "formattedType": "A String", # The read-only type of the organization translated and formatted in the
+                  # viewer's account locale or the `Accept-Language` HTTP header locale.
               "domain": "A String", # The domain name associated with the organization; for example, `google.com`.
-              "endDate": { # Represents a whole calendar date, for example a date of birth. The time of day and time zone are either specified elsewhere or are not significant. The date is relative to the [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar). The day may be 0 to represent a year and month where the day is not significant. The year may be 0 to represent a month and day independent of year; for example, anniversary date. # The end date when the person left the organization.
+              "endDate": { # Represents a whole calendar date, for example a date of birth. The time # The end date when the person left the organization.
+                  # of day and time zone are either specified elsewhere or are not
+                  # significant. The date is relative to the
+                  # [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar).
+                  # The day may be 0 to represent a year and month where the day is not
+                  # significant. The year may be 0 to represent a month and day independent
+                  # of year; for example, anniversary date.
+                "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
+                    # a year.
+                "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
+                    # if specifying a year/month where the day is not significant.
                 "month": 42, # Month of year. Must be from 1 to 12.
-                "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if specifying a year/month where the day is not significant.
-                "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without a year.
               },
               "name": "A String", # The name of the organization.
-              "startDate": { # Represents a whole calendar date, for example a date of birth. The time of day and time zone are either specified elsewhere or are not significant. The date is relative to the [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar). The day may be 0 to represent a year and month where the day is not significant. The year may be 0 to represent a month and day independent of year; for example, anniversary date. # The start date when the person joined the organization.
-                "month": 42, # Month of year. Must be from 1 to 12.
-                "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if specifying a year/month where the day is not significant.
-                "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without a year.
-              },
-              "symbol": "A String", # The symbol associated with the organization; for example, a stock ticker symbol, abbreviation, or acronym.
               "title": "A String", # The person's job title at the organization.
-              "current": True or False, # True if the organization is the person's current organization; false if the organization is a past organization.
+              "type": "A String", # The type of the organization. The type can be custom or predefined.
+                  # Possible values include, but are not limited to, the following:
+                  #
+                  # * `work`
+                  # * `school`
+              "symbol": "A String", # The symbol associated with the organization; for example, a stock ticker
+                  # symbol, abbreviation, or acronym.
+              "current": True or False, # True if the organization is the person's current organization;
+                  # false if the organization is a past organization.
               "jobDescription": "A String", # The person's job description at the organization.
               "location": "A String", # The location of the organization office the person works at.
               "department": "A String", # The person's department at the organization.
-              "type": "A String", # The type of the organization. The type can be custom or predefined. Possible values include, but are not limited to, the following: * `work` * `school`
+              "startDate": { # Represents a whole calendar date, for example a date of birth. The time # The start date when the person joined the organization.
+                  # of day and time zone are either specified elsewhere or are not
+                  # significant. The date is relative to the
+                  # [Proleptic Gregorian Calendar](https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar).
+                  # The day may be 0 to represent a year and month where the day is not
+                  # significant. The year may be 0 to represent a month and day independent
+                  # of year; for example, anniversary date.
+                "year": 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
+                    # a year.
+                "day": 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
+                    # if specifying a year/month where the day is not significant.
+                "month": 42, # Month of year. Must be from 1 to 12.
+              },
               "phoneticName": "A String", # The phonetic name of the organization.
               "metadata": { # Metadata about a field. # Metadata about the organization.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
           "biographies": [ # The person's biographies.
             { # A person's short biography.
+              "contentType": "A String", # The content type of the biography.
               "value": "A String", # The short biography.
               "metadata": { # Metadata about a field. # Metadata about the biography.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
           "memberships": [ # The person's group memberships.
-            { # A person's membership in a group.
+            { # A person's read-only membership in a group.
               "contactGroupMembership": { # A Google contact group membership. # The contact group membership.
-                "contactGroupId": "A String", # The contact group ID for the contact group membership. The contact group ID can be custom or predefined. Possible values include, but are not limited to, the following: * `myContacts` * `starred` * A numerical ID for user-created groups.
+                "contactGroupId": "A String", # The contact group ID for the contact group membership. The contact group
+                    # ID can be custom or predefined. Possible values include, but are not
+                    # limited to, the following:
+                    #
+                    # *  `myContacts`
+                    # *  `starred`
+                    # *  A numerical ID for user-created groups.
               },
               "domainMembership": { # A Google Apps Domain membership. # The domain membership.
                 "inViewerDomain": True or False, # True if the person is in the viewer's Google Apps domain.
               },
               "metadata": { # Metadata about a field. # Metadata about the membership.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
           "taglines": [ # The person's taglines.
-            { # A brief one-line description of the person.
+            { # A read-only brief one-line description of the person.
               "value": "A String", # The tagline.
               "metadata": { # Metadata about a field. # Metadata about the tagline.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
           "urls": [ # The person's associated URLs.
             { # A person's associated URLs.
-              "formattedType": "A String", # The read-only type of the URL translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
-              "type": "A String", # The type of the URL. The type can be custom or predefined. Possible values include, but are not limited to, the following: * `home` * `work` * `blog` * `profile` * `homePage` * `ftp` * `reservations` * `appInstallPage`: website for a Google+ application. * `other`
+              "formattedType": "A String", # The read-only type of the URL translated and formatted in the viewer's
+                  # account locale or the `Accept-Language` HTTP header locale.
+              "type": "A String", # The type of the URL. The type can be custom or predefined.
+                  # Possible values include, but are not limited to, the following:
+                  #
+                  # * `home`
+                  # * `work`
+                  # * `blog`
+                  # * `profile`
+                  # * `homePage`
+                  # * `ftp`
+                  # * `reservations`
+                  # * `appInstallPage`: website for a Google+ application.
+                  # * `other`
               "value": "A String", # The URL.
               "metadata": { # Metadata about a field. # Metadata about the URL.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
-          "ageRange": "A String", # The person's age range.
+          "ageRange": "A String", # DEPRECATED(Please read person.age_ranges instead). The person's age range.
           "genders": [ # The person's genders.
             { # A person's gender.
-              "formattedValue": "A String", # The read-only value of the gender translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
-              "value": "A String", # The gender for the person. The gender can be custom or predefined. Possible values include, but are not limited to, the following: * `male` * `female` * `other` * `unknown`
+              "formattedValue": "A String", # The read-only value of the gender translated and formatted in the viewer's
+                  # account locale or the `Accept-Language` HTTP header locale.
+              "value": "A String", # The gender for the person. The gender can be custom or predefined.
+                  # Possible values include, but are not limited to, the
+                  # following:
+                  #
+                  # * `male`
+                  # * `female`
+                  # * `other`
+                  # * `unknown`
               "metadata": { # Metadata about a field. # Metadata about the gender.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],
           "emailAddresses": [ # The person's email addresses.
             { # A person's email address.
-              "formattedType": "A String", # The read-only type of the email address translated and formatted in the viewer's account locale or the `Accept-Language` HTTP header locale.
-              "type": "A String", # The type of the email address. The type can be custom or predefined. Possible values include, but are not limited to, the following: * `home` * `work` * `other`
+              "type": "A String", # The type of the email address. The type can be custom or predefined.
+                  # Possible values include, but are not limited to, the following:
+                  #
+                  # * `home`
+                  # * `work`
+                  # * `other`
+              "formattedType": "A String", # The read-only type of the email address translated and formatted in the
+                  # viewer's account locale or the `Accept-Language` HTTP header locale.
+              "displayName": "A String", # The display name of the email.
               "value": "A String", # The email address.
               "metadata": { # Metadata about a field. # Metadata about the email address.
                 "source": { # The source of a field. # The source of the field.
+                  "etag": "A String", # The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the
+                      # source. Used for web cache validation. Only populated in
+                      # person.metadata.sources.
                   "type": "A String", # The source type.
-                  "id": "A String", # A unique identifier within the source type generated by the server.
+                  "id": "A String", # The unique identifier within the source type generated by the server.
+                  "profileMetadata": { # The read-only metadata about a profile. # Metadata about a source of type PROFILE.
+                    "objectType": "A String", # The profile object type.
+                  },
                 },
-                "verified": True or False, # 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.
-                "primary": True or False, # True if the field is the primary field; false if the field is a secondary field.
+                "verified": True or False, # 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.
+                "primary": True or False, # True if the field is the primary field; false if the field is a secondary
+                    # field.
               },
             },
           ],