All 24 methods of the People (Contacts) API, rendered at build time from the committed Discovery index the grr binary embeds — the same data grr api describe reads at runtime. Flags are kebab-cased parameter names: userId is --user-id.
24 methods · v1 · revision 20260923
people.contactGroups
6 methods
people.contactGroups.batchGet
GET
grr people contactGroups batchGetv1/contactGroups:batchGet
Get a list of contact groups owned by the authenticated user by specifying a list of contact group resource names.
Parameter
Type
Required
Repeated
Location
Description
Enum values
groupFields
string
—
—
query
Optional. A field mask to restrict which fields on the group are returned. Defaults to `metadata`, `groupType`, `memberCount`, and `name` if not set or set to e
—
maxMembers
integer
—
—
query
Optional. Specifies the maximum number of members to return for each group. Defaults to 0 if not set, which will return zero members.
—
resourceNames
string
—
yes
query
Required. The resource names of the contact groups to get. There is a maximum of 200 resource names.
Create a new contact group owned by the authenticated user. Created contact group names must be unique to the users contact groups. Attempting to create a group with a duplicate name will return a HTTP 409 error. Mutate requests for the same user should be sent sequentially to avoid increased latenc
grr people contactGroups create --body-file ./body.json
people.contactGroups.delete
DELETE
grr people contactGroups deletev1/{+resourceName}
Delete an existing contact group owned by the authenticated user by specifying a contact group resource name. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.
Parameter
Type
Required
Repeated
Location
Description
Enum values
deleteContacts
boolean
—
—
query
Optional. Set to true to also delete the contacts in the specified group.
—
resourceName
string
yes
—
path
Required. The resource name of the contact group to delete.
grr people contactGroups delete --resource-name <resource-name>
people.contactGroups.get
GET
grr people contactGroups getv1/{+resourceName}
Get a specific contact group owned by the authenticated user by specifying a contact group resource name.
Parameter
Type
Required
Repeated
Location
Description
Enum values
groupFields
string
—
—
query
Optional. A field mask to restrict which fields on the group are returned. Defaults to `metadata`, `groupType`, `memberCount`, and `name` if not set or set to e
—
maxMembers
integer
—
—
query
Optional. Specifies the maximum number of members to return. Defaults to 0 if not set, which will return zero members.
—
resourceName
string
yes
—
path
Required. The resource name of the contact group to get.
grr people contactGroups get --resource-name <resource-name>
people.contactGroups.list
GET
grr people contactGroups listv1/contactGroups
List all contact groups owned by the authenticated user. Members of the contact groups are not populated.
Parameter
Type
Required
Repeated
Location
Description
Enum values
groupFields
string
—
—
query
Optional. A field mask to restrict which fields on the group are returned. Defaults to `metadata`, `groupType`, `memberCount`, and `name` if not set or set to e
—
pageSize
integer
—
—
query
Optional. The maximum number of resources to return. Valid values are between 1 and 1000, inclusive. Defaults to 30 if not set or set to 0.
—
pageToken
string
—
—
query
Optional. The next_page_token value returned from a previous call to ListContactGroups. Requests the next page of reso
—
syncToken
string
—
—
query
Optional. A sync token, returned by a previous call to `contactgroups.list`. Only resources changed since the sync token was created will be returned.
Update the name of an existing contact group owned by the authenticated user. Updated contact group names must be unique to the users contact groups. Attempting to create a group with a duplicate name will return a HTTP 409 error. Mutate requests for the same user should be sent sequentially to avoi
Parameter
Type
Required
Repeated
Location
Description
Enum values
resourceName
string
yes
—
path
The resource name for the contact group, assigned by the server. An ASCII string, in the form of `contactGroups/{contact_group_id}`.
grr people contactGroups update --resource-name <resource-name> --body-file ./body.json
people.contactGroups.members
1 method
people.contactGroups.members.modify
POST
grr people contactGroups members modifyv1/{+resourceName}/members:modify
Modify the members of a contact group owned by the authenticated user. The only system contact groups that can have members added are `contactGroups/myContacts` and `contactGroups/starred`. Other system contact groups are deprecated and can only have contacts removed.
Parameter
Type
Required
Repeated
Location
Description
Enum values
resourceName
string
yes
—
path
Required. The resource name of the contact group to modify.
grr people otherContacts copyOtherContactToMyContactsGroupv1/{+resourceName}:copyOtherContactToMyContactsGroup
Copies an "Other contact" to a new contact in the user's "myContacts" group Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.
Parameter
Type
Required
Repeated
Location
Description
Enum values
resourceName
string
yes
—
path
Required. The resource name of the "Other contact" to copy.
grr people otherContacts copyOtherContactToMyContactsGroup
grr people otherContacts copyOtherContactToMyContactsGroup --resource-name <resource-name> --body-file ./body.json
people.otherContacts.list
GET
grr people otherContacts listv1/otherContacts
List all "Other contacts", that is contacts that are not in a contact group. "Other contacts" are typically auto created contacts from interactions. Sync tokens expire 7 days after the full sync. A request with an expired sync token will get an error with an [google.rpc.ErrorInfo](https://cloud.goog
Parameter
Type
Required
Repeated
Location
Description
Enum values
pageSize
integer
—
—
query
Optional. The number of "Other contacts" to include in the response. Valid values are between 1 and 1000, inclusive. Defaults to 100 if not set or set to 0.
—
pageToken
string
—
—
query
Optional. A page token, received from a previous response `next_page_token`. Provide this to retrieve the subsequent page. When paginating, all other parameters
—
readMask
string
—
—
query
Required. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with commas. What values are va
—
requestSyncToken
boolean
—
—
query
Optional. Whether the response should return `next_sync_token` on the last page of results. It can be used to get incremental changes since the last request by
—
sources
string
—
yes
query
Optional. A mask of what source types to return. Defaults to READ_SOURCE_TYPE_CONTACT if not set. Possible values for this field are: * READ_SOURCE_TYPE_CONTACT
Optional. A sync token, received from a previous response `next_sync_token` Provide this to retrieve only the resources changed since the last request. When syn
grr people otherContacts searchv1/otherContacts:search
Provides a list of contacts in the authenticated user's other contacts that matches the search query. The query matches on a contact's `names`, `emailAddresses`, and `phoneNumbers` fields that are from the OTHER_CONTACT source. **IMPORTANT**: Before searching, clients should send a warmup request wi
Parameter
Type
Required
Repeated
Location
Description
Enum values
pageSize
integer
—
—
query
Optional. The number of results to return. Defaults to 10 if field is not set, or set to 0. Values greater than 30 will be capped to 30.
—
query
string
—
—
query
Required. The plain-text query for the request. The query is used to match prefix phrases of the fields on a person. For example, a person with name "foo name"
—
readMask
string
—
—
query
Required. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with commas. Valid values are:
grr people people batchCreateContactsv1/people:batchCreateContacts
Create a batch of new contacts and return the PersonResponses for the newly Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.
grr people people batchCreateContacts --body-file ./body.json
people.people.batchDeleteContacts
POST
grr people people batchDeleteContactsv1/people:batchDeleteContacts
Delete a batch of contacts. Any non-contact data will not be deleted. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.
grr people people batchDeleteContacts --body-file ./body.json
people.people.batchUpdateContacts
POST
grr people people batchUpdateContactsv1/people:batchUpdateContacts
Update a batch of contacts and return a map of resource names to PersonResponses for the updated contacts. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.
grr people people batchUpdateContacts --body-file ./body.json
people.people.createContact
POST
grr people people createContactv1/people:createContact
Create a new contact and return the person resource for that contact. The request returns a 400 error if more than one field is specified on a field that is a singleton for contact sources: * biographies * birthdays * genders * names Mutate requests for the same user should be sent sequentially to a
Parameter
Type
Required
Repeated
Location
Description
Enum values
personFields
string
—
—
query
Required. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with commas. Defaults to all fi
—
sources
string
—
yes
query
Optional. A mask of what source types to return. Defaults to READ_SOURCE_TYPE_CONTACT and READ_SOURCE_TYPE_PROFILE if not set.
grr people people createContact --body-file ./body.json
people.people.deleteContact
DELETE
grr people people deleteContactv1/{+resourceName}:deleteContact
Delete a contact person. Any non-contact data will not be deleted. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures.
Parameter
Type
Required
Repeated
Location
Description
Enum values
resourceName
string
yes
—
path
Required. The resource name of the contact to delete.
grr people people deleteContact --resource-name <resource-name>
people.people.deleteContactPhoto
DELETE
grr people people deleteContactPhotov1/{+resourceName}:deleteContactPhoto
Delete a contact's photo. Mutate requests for the same user should be done sequentially to avoid // lock contention.
Parameter
Type
Required
Repeated
Location
Description
Enum values
personFields
string
—
—
query
Optional. A field mask to restrict which fields on the person are returned. Multiple fields can be specified by separating them with commas. Defaults to empty i
—
resourceName
string
yes
—
path
Required. The resource name of the contact whose photo will be deleted.
—
sources
string
—
yes
query
Optional. A mask of what source types to return. Defaults to READ_SOURCE_TYPE_CONTACT and READ_SOURCE_TYPE_PROFILE if not set.
grr people people deleteContactPhoto --resource-name <resource-name>
people.people.get
GET
grr people people getv1/{+resourceName}
Provides information about a person by specifying a resource name. Use `people/me` to indicate the authenticated user. The request returns a 400 error if 'personFields' is not specified.
Parameter
Type
Required
Repeated
Location
Description
Enum values
personFields
string
—
—
query
Required. A field mask to restrict which fields on the person are returned. Multiple fields can be specified by separating them with commas. Valid values are: *
—
requestMask.includeField
string
—
—
query
Required. Comma-separated list of person fields to be included in the response. Each path should start with `person.`: for example, `person.names` or `person.ph
—
resourceName
string
yes
—
path
Required. The resource name of the person to provide information about. - To get information about the authenticated user, specify `people/me`. - To get informa
—
sources
string
—
yes
query
Optional. A mask of what source types to return. Defaults to READ_SOURCE_TYPE_PROFILE and READ_SOURCE_TYPE_CONTACT if not set.
grr people people get --resource-name <resource-name>
people.people.getBatchGet
GET
grr people people getBatchGetv1/people:batchGet
Provides information about a list of specific people by specifying a list of requested resource names. Use `people/me` to indicate the authenticated user. The request returns a 400 error if 'personFields' is not specified.
Parameter
Type
Required
Repeated
Location
Description
Enum values
personFields
string
—
—
query
Required. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with commas. Valid values are:
—
requestMask.includeField
string
—
—
query
Required. Comma-separated list of person fields to be included in the response. Each path should start with `person.`: for example, `person.names` or `person.ph
—
resourceNames
string
—
yes
query
Required. The resource names of the people to provide information about. It's repeatable. The URL query parameter should be resourceNames=<name1>&resourceNames=
—
sources
string
—
yes
query
Optional. A mask of what source types to return. Defaults to READ_SOURCE_TYPE_CONTACT and READ_SOURCE_TYPE_PROFILE if not set.
grr people people listDirectoryPeoplev1/people:listDirectoryPeople
Provides a list of domain profiles and domain contacts in the authenticated user's domain directory. When the `sync_token` is specified, resources deleted since the last sync will be returned as a person with `PersonMetadata.deleted` set to true. When the `page_token` or `sync_token` is specified, a
Parameter
Type
Required
Repeated
Location
Description
Enum values
mergeSources
string
—
yes
query
Optional. Additional data to merge into the directory sources if they are connected through verified join keys such as email addresses or phone numbers.
Optional. The number of people to include in the response. Valid values are between 1 and 1000, inclusive. Defaults to 100 if not set or set to 0.
—
pageToken
string
—
—
query
Optional. A page token, received from a previous response `next_page_token`. Provide this to retrieve the subsequent page. When paginating, all other parameters
—
readMask
string
—
—
query
Required. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with commas. Valid values are:
—
requestSyncToken
boolean
—
—
query
Optional. Whether the response should return `next_sync_token`. It can be used to get incremental changes since the last request by setting it on the request `s
Optional. A sync token, received from a previous response `next_sync_token` Provide this to retrieve only the resources changed since the last request. When syn
grr people people searchContactsv1/people:searchContacts
Provides a list of contacts in the authenticated user's grouped contacts that matches the search query. The query matches on a contact's `names`, `nickNames`, `emailAddresses`, `phoneNumbers`, and `organizations` fields that are from the CONTACT source. **IMPORTANT**: Before searching, clients shoul
Parameter
Type
Required
Repeated
Location
Description
Enum values
pageSize
integer
—
—
query
Optional. The number of results to return. Defaults to 10 if field is not set, or set to 0. Values greater than 30 will be capped to 30.
—
query
string
—
—
query
Required. The plain-text query for the request. The query is used to match prefix phrases of the fields on a person. For example, a person with name "foo name"
—
readMask
string
—
—
query
Required. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with commas. Valid values are:
—
sources
string
—
yes
query
Optional. A mask of what source types to return. Defaults to READ_SOURCE_TYPE_CONTACT if not set.
grr people people searchDirectoryPeoplev1/people:searchDirectoryPeople
Provides a list of domain profiles and domain contacts in the authenticated user's domain directory that match the search query.
Parameter
Type
Required
Repeated
Location
Description
Enum values
mergeSources
string
—
yes
query
Optional. Additional data to merge into the directory sources if they are connected through verified join keys such as email addresses or phone numbers.
Optional. The number of people to include in the response. Valid values are between 1 and 500, inclusive. Defaults to 100 if not set or set to 0.
—
pageToken
string
—
—
query
Optional. A page token, received from a previous response `next_page_token`. Provide this to retrieve the subsequent page. When paginating, all other parameters
—
query
string
—
—
query
Required. Prefix query that matches fields in the person. Does NOT use the read_mask for determining what fields to match.
—
readMask
string
—
—
query
Required. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with commas. Valid values are:
grr people people updateContactv1/{+resourceName}:updateContact
Update contact data for an existing contact person. Any non-contact data will not be modified. Any non-contact data in the person to update will be ignored. All fields specified in the `update_mask` will be replaced. The server returns a 400 error if `person.metadata.sources` is not specified for th
Parameter
Type
Required
Repeated
Location
Description
Enum values
personFields
string
—
—
query
Optional. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with commas. Defaults to all fi
—
resourceName
string
yes
—
path
The resource name for the person, assigned by the server. An ASCII string in the form of `people/{person_id}`.
—
sources
string
—
yes
query
Optional. A mask of what source types to return. Defaults to READ_SOURCE_TYPE_CONTACT and READ_SOURCE_TYPE_PROFILE if not set.
Required. A field mask to restrict which fields on the person are updated. Multiple fields can be specified by separating them with commas. All updated fields w
grr people people updateContactPhoto --resource-name <resource-name> --body-file ./body.json
people.people.connections
1 method
people.people.connections.list
GET
grr people people connections listv1/{+resourceName}/connections
Provides a list of the authenticated user's contacts. Sync tokens expire 7 days after the full sync. A request with an expired sync token will get an error with an google.rpc.ErrorInfo with reason "EXPIRED_SYNC_TOKEN". In the case of such an
Parameter
Type
Required
Repeated
Location
Description
Enum values
pageSize
integer
—
—
query
Optional. The number of connections to include in the response. Valid values are between 1 and 1000, inclusive. Defaults to 100 if not set or set to 0.
—
pageToken
string
—
—
query
Optional. A page token, received from a previous response `next_page_token`. Provide this to retrieve the subsequent page. When paginating, all other parameters
—
personFields
string
—
—
query
Required. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with commas. Valid values are:
—
requestMask.includeField
string
—
—
query
Required. Comma-separated list of person fields to be included in the response. Each path should start with `person.`: for example, `person.names` or `person.ph
—
requestSyncToken
boolean
—
—
query
Optional. Whether the response should return `next_sync_token` on the last page of results. It can be used to get incremental changes since the last request by
—
resourceName
string
yes
—
path
Required. The resource name to return connections for. Only `people/me` is valid.
—
sortOrder
string
—
—
query
Optional. The order in which the connections should be sorted. Defaults to `LAST_MODIFIED_ASCENDING`.
Optional. A sync token, received from a previous response `next_sync_token` Provide this to retrieve only the resources changed since the last request. When syn