# People API API

> People API API on Apizie: 23 endpoints (Get a list of contact groups owned by the authenticated user by specifying a list of contact group resource…, List all contact groups owned by the authenticated user. Members of the contact groups are not populated., Create a new contact group owned by the authenticated user. Created contact group names must be unique to…, Provides information about a person by specifying a resource name. Use `people/me` to indicate the…, …) returned as clean JSON through one API key. Send your own provider key in the x-upstream-key header. Call it over REST at https://apizie.tech/v1/analytics:googleapis-people/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `analytics:googleapis-people`
- Category: Analytics
- Status: byok
- Source: https://developers.google.com/people/
- Page: https://apizie.tech/api/analytics/googleapis-people
- OpenAPI: https://apizie.tech/api/analytics/googleapis-people/openapi.json

Provides access to information about profiles and contacts.

## Endpoints

### Get a list of contact groups owned by the authenticated user by specifying a list of contact group resource…
`GET https://apizie.tech/v1/analytics:googleapis-people/people-contact-groups-batch-get` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| groupFields | string | no | Optional. A field mask to restrict which fields on the group are returned. Defaults to `metadata`, `groupType`, `memberCount`, and `name`… |
| maxMembers | integer | no | 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 | no | Required. The resource names of the contact groups to get. There is a maximum of 200 resource names. |

### List all contact groups owned by the authenticated user. Members of the contact groups are not populated.
`GET https://apizie.tech/v1/analytics:googleapis-people/people-contact-groups-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| groupFields | string | no | Optional. A field mask to restrict which fields on the group are returned. Defaults to `metadata`, `groupType`, `memberCount`, and `name`… |
| pageSize | integer | no | 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 | no | Optional. The next_page_token value returned from a previous call to [ListContactGroups](/people/api/rest/v1/contactgroups/list). Requests… |
| syncToken | string | no | Optional. A sync token, returned by a previous call to `contactgroups.list`. Only resources changed since the sync token was created will… |

### Create a new contact group owned by the authenticated user. Created contact group names must be unique to…
`POST https://apizie.tech/v1/analytics:googleapis-people/people-contact-groups-create` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Provides information about a person by specifying a resource name. Use `people/me` to indicate the…
`GET https://apizie.tech/v1/analytics:googleapis-people/people-people-get` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| personFields | string | no | Required. A field mask to restrict which fields on the person are returned. Multiple fields can be specified by separating them with… |
| requestMask.includeField | string | no | Required. Comma-separated list of person fields to be included in the response. Each path should start with `person.`: for example,… |
| resourceName | string | yes | Required. The resource name of the person to provide information about. - To get information about the authenticated user, specify… |
| sources | string | no | Optional. A mask of what source types to return. Defaults to READ_SOURCE_TYPE_PROFILE and READ_SOURCE_TYPE_CONTACT if not set. |

### Update the name of an existing contact group owned by the authenticated user. Updated contact group names…
`POST https://apizie.tech/v1/analytics:googleapis-people/people-contact-groups-update` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| resourceName | string | yes | The resource name for the contact group, assigned by the server. An ASCII string, in the form of `contactGroups/{contact_group_id}`. |
| body | object | yes | JSON request body |

### Delete an existing contact group owned by the authenticated user by specifying a contact group resource…
`POST https://apizie.tech/v1/analytics:googleapis-people/people-contact-groups-delete` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| deleteContacts | boolean | no | Optional. Set to true to also delete the contacts in the specified group. |
| resourceName | string | yes | Required. The resource name of the contact group to delete. |

### Modify the members of a contact group owned by the authenticated user. The only system contact groups that…
`POST https://apizie.tech/v1/analytics:googleapis-people/people-contact-groups-members-modify` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| resourceName | string | yes | Required. The resource name of the contact group to modify. |
| body | object | yes | JSON request body |

### Copies an "Other contact" to a new contact in the user's "myContacts" group Mutate requests for the same…
`POST https://apizie.tech/v1/analytics:googleapis-people/people-other-contacts-copy-other-contact-to-my-contacts-grou` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| resourceName | string | yes | Required. The resource name of the "Other contact" to copy. |
| body | object | yes | JSON request body |

### List all "Other contacts", that is contacts that are not in a contact group. "Other contacts" are typically…
`GET https://apizie.tech/v1/analytics:googleapis-people/people-other-contacts-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| pageSize | integer | no | Optional. The number of "Other contacts" to include in the response. Valid values are between 1 and 1000, inclusive. Defaults to 100 if… |
| pageToken | string | no | Optional. A page token, received from a previous response `next_page_token`. Provide this to retrieve the subsequent page. When… |
| readMask | string | no | Required. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with… |
| requestSyncToken | boolean | no | Optional. Whether the response should return `next_sync_token` on the last page of results. It can be used to get incremental changes… |
| sources | string | no | Optional. A mask of what source types to return. Defaults to READ_SOURCE_TYPE_CONTACT if not set. Possible values for this field are: *… |
| syncToken | string | no | Optional. A sync token, received from a previous response `next_sync_token` Provide this to retrieve only the resources changed since the… |

### Provides a list of contacts in the authenticated user's other contacts that matches the search query. The…
`GET https://apizie.tech/v1/analytics:googleapis-people/people-other-contacts-search` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| pageSize | integer | no | 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 | no | 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… |
| readMask | string | no | Required. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with… |

### Create a batch of new contacts and return the PersonResponses for the newly Mutate requests for the same…
`POST https://apizie.tech/v1/analytics:googleapis-people/people-people-batch-create-contacts` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Delete a batch of contacts. Any non-contact data will not be deleted. Mutate requests for the same user…
`POST https://apizie.tech/v1/analytics:googleapis-people/people-people-batch-delete-contacts` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Update a batch of contacts and return a map of resource names to PersonResponses for the updated contacts.…
`POST https://apizie.tech/v1/analytics:googleapis-people/people-people-batch-update-contacts` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Create a new contact and return the person resource for that contact. The request returns a 400 error if…
`POST https://apizie.tech/v1/analytics:googleapis-people/people-people-create-contact` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| personFields | string | no | Required. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with… |
| sources | string | no | Optional. A mask of what source types to return. Defaults to READ_SOURCE_TYPE_CONTACT and READ_SOURCE_TYPE_PROFILE if not set. |
| body | object | yes | JSON request body |

### Delete a contact person. Any non-contact data will not be deleted. Mutate requests for the same user should…
`POST https://apizie.tech/v1/analytics:googleapis-people/people-people-delete-contact` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| resourceName | string | yes | Required. The resource name of the contact to delete. |

### Delete a contact's photo. Mutate requests for the same user should be done sequentially to avoid // lock…
`POST https://apizie.tech/v1/analytics:googleapis-people/people-people-delete-contact-photo` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| personFields | string | no | Optional. A field mask to restrict which fields on the person are returned. Multiple fields can be specified by separating them with… |
| resourceName | string | yes | Required. The resource name of the contact whose photo will be deleted. |
| sources | string | no | Optional. A mask of what source types to return. Defaults to READ_SOURCE_TYPE_CONTACT and READ_SOURCE_TYPE_PROFILE if not set. |

### Provides information about a list of specific people by specifying a list of requested resource names. Use…
`GET https://apizie.tech/v1/analytics:googleapis-people/people-people-get-batch-get` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| personFields | string | no | Required. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with… |
| requestMask.includeField | string | no | Required. Comma-separated list of person fields to be included in the response. Each path should start with `person.`: for example,… |
| resourceNames | string | no | Required. The resource names of the people to provide information about. It's repeatable. The URL query parameter should be resourceNames=… |
| sources | string | no | Optional. A mask of what source types to return. Defaults to READ_SOURCE_TYPE_CONTACT and READ_SOURCE_TYPE_PROFILE if not set. |

### Provides a list of domain profiles and domain contacts in the authenticated user's domain directory. When…
`GET https://apizie.tech/v1/analytics:googleapis-people/people-people-list-directory-people` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| mergeSources | string | no | Optional. Additional data to merge into the directory sources if they are connected through verified join keys such as email addresses or… |
| pageSize | integer | no | 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… |
| pageToken | string | no | Optional. A page token, received from a previous response `next_page_token`. Provide this to retrieve the subsequent page. When… |
| readMask | string | no | Required. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with… |
| requestSyncToken | boolean | no | Optional. Whether the response should return `next_sync_token`. It can be used to get incremental changes since the last request by… |
| sources | string | no | Required. Directory sources to return. |
| syncToken | string | no | Optional. A sync token, received from a previous response `next_sync_token` Provide this to retrieve only the resources changed since the… |

### Provides a list of contacts in the authenticated user's grouped contacts that matches the search query. The…
`GET https://apizie.tech/v1/analytics:googleapis-people/people-people-search-contacts` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| pageSize | integer | no | 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 | no | 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… |
| readMask | string | no | Required. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with… |
| sources | string | no | Optional. A mask of what source types to return. Defaults to READ_SOURCE_TYPE_CONTACT if not set. |

### Provides a list of domain profiles and domain contacts in the authenticated user's domain directory that…
`GET https://apizie.tech/v1/analytics:googleapis-people/people-people-search-directory-people` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| mergeSources | string | no | Optional. Additional data to merge into the directory sources if they are connected through verified join keys such as email addresses or… |
| pageSize | integer | no | 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… |
| pageToken | string | no | Optional. A page token, received from a previous response `next_page_token`. Provide this to retrieve the subsequent page. When… |
| query | string | no | Required. Prefix query that matches fields in the person. Does NOT use the read_mask for determining what fields to match. |
| readMask | string | no | Required. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with… |
| sources | string | no | Required. Directory sources to return. |

### Update contact data for an existing contact person. Any non-contact data will not be modified. Any…
`POST https://apizie.tech/v1/analytics:googleapis-people/people-people-update-contact` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| personFields | string | no | Optional. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with… |
| resourceName | string | yes | The resource name for the person, assigned by the server. An ASCII string in the form of `people/{person_id}`. |
| sources | string | no | Optional. A mask of what source types to return. Defaults to READ_SOURCE_TYPE_CONTACT and READ_SOURCE_TYPE_PROFILE if not set. |
| updatePersonFields | string | no | Required. A field mask to restrict which fields on the person are updated. Multiple fields can be specified by separating them with… |
| body | object | yes | JSON request body |

### Update a contact's photo. Mutate requests for the same user should be sent sequentially to avoid increased…
`POST https://apizie.tech/v1/analytics:googleapis-people/people-people-update-contact-photo` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| resourceName | string | yes | Required. Person resource name |
| body | object | yes | JSON request body |

### Provides a list of the authenticated user's contacts. Sync tokens expire 7 days after the full sync. A…
`GET https://apizie.tech/v1/analytics:googleapis-people/people-people-connections-list` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| pageSize | integer | no | Optional. The number of connections to include in the response. Valid values are between 1 and 1000, inclusive. Defaults to 100 if not set… |
| pageToken | string | no | Optional. A page token, received from a previous response `next_page_token`. Provide this to retrieve the subsequent page. When… |
| personFields | string | no | Required. A field mask to restrict which fields on each person are returned. Multiple fields can be specified by separating them with… |
| requestMask.includeField | string | no | Required. Comma-separated list of person fields to be included in the response. Each path should start with `person.`: for example,… |
| requestSyncToken | boolean | no | Optional. Whether the response should return `next_sync_token` on the last page of results. It can be used to get incremental changes… |
| resourceName | string | yes | Required. The resource name to return connections for. Only `people/me` is valid. |
| sortOrder | string | no | Optional. The order in which the connections should be sorted. Defaults to `LAST_MODIFIED_ASCENDING`. |
| sources | string | no | Optional. A mask of what source types to return. Defaults to READ_SOURCE_TYPE_CONTACT and READ_SOURCE_TYPE_PROFILE if not set. |
| syncToken | string | no | Optional. A sync token, received from a previous response `next_sync_token` Provide this to retrieve only the resources changed since the… |

## Example
```
curl "https://apizie.tech/v1/analytics:googleapis-people/people-contact-groups-batch-get" \
  -H "x-api-key: $APIZIE_KEY" \
  -H "x-upstream-key: $PROVIDER_KEY"
```

## FAQ

### How do I call the People API API?
Create a free Apizie key, then send GET https://apizie.tech/v1/analytics:googleapis-people/people-contact-groups-batch-get with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the People API API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card. People API itself also needs your own key from googleapis.com.

### Can AI agents use the People API API?
Yes. Add the Apizie MCP server (https://apizie.tech/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key analytics:googleapis-people.

### What is the status of the People API API?
Needs your own provider key (bring your own key)
