For Agents
Read and write a user's Google contacts and profile data, manage contact groups, and look up people by resourceName with field masks.
Get started with People API in minutes using your preferred integration method.
# Add to your MCP client config (Claude Desktop, Cursor, Windsurf)
{
"jentic": {
"url": "https://api.jentic.com/mcp",
"auth": "oauth"
}
}
# Then ask your agent:
"list a user's Google contacts"
# → Jentic returns the GET /events tool with parameter schema, agent executes.What an agent can do with People API API.
Retrieve authenticated user profile data and connected contacts with field-mask scoping
Create, update, and delete personal contacts in a user's Google Contacts list
Organise contacts into contact groups and assign or remove members in batch
Search auto-saved otherContacts surfaced from Gmail and Chat interactions
GET STARTED
Use for: I need to fetch the signed-in user's full Google profile, Search for a contact by name across the user's Google Contacts, List all contacts in a specific contact group, Create a new contact with a phone number and email address
Not supported: Does not handle email sending, calendar events, or Workspace-wide directory administration — use for reading and writing a single user's Google Contacts and profile only.
The Google People API provides programmatic access to a user's profile and contacts stored in their Google Account. Applications can read and write personal contacts, organise them into contact groups, and access read-only profile data and other-contacts inferred from email and chat interactions. The API supports batched lookups and structured field masks so callers fetch only the fields they need across 23 endpoints covering people, contactGroups, and otherContacts resources.
Batch-create or batch-delete up to 200 contacts per request to minimise round trips
List a user's directory people from Google Workspace domain directories
Resolve people resourceNames to full Person objects across multiple sources
Patterns agents use People API API for, with concrete tasks.
★ CRM Contact Sync
Synchronise a user's Google Contacts into a third-party CRM so sales reps see the same address book on every device. The People API exposes 23 endpoints covering personal contacts, contact groups, and otherContacts, with sync tokens that return only changes since the last poll. A typical initial backfill of a 5,000-contact list completes in minutes, then incremental syncs run in seconds.
List all connections for the authenticated user with personFields=names,emailAddresses,phoneNumbers and pageSize=200, then upsert each Person into the target CRM keyed by resourceName.
User Profile Onboarding
Pull a signed-in user's profile fields during sign-up so an application does not need to re-collect names, photos, and email addresses already verified by Google. Calling people/me with the right field mask returns names, emailAddresses, and photos in a single request, cutting onboarding form steps and improving conversion. The OAuth scope used here is contacts.readonly or userinfo.profile depending on which fields are requested.
Call GET /v1/people/me with personFields=names,emailAddresses,photos using the user's OAuth access token and map the returned Person object to the app's user record.
Contact Group Management
Build features that group contacts into segments such as Customers, Vendors, or Investors and apply bulk operations to each group. The People API exposes contactGroups CRUD endpoints plus a members:modify endpoint for batch membership changes. Groups can hold up to several thousand members and a single modify call can add or remove up to 1,000 contacts per request.
POST /v1/contactGroups to create a group named 'Customers', then call /v1/contactGroups/{resourceName}/members:modify with resourceNamesToAdd containing the IDs of 25 customer contacts.
Other Contacts Discovery
Surface contacts that Google has inferred from a user's Gmail and Chat history but never explicitly saved. The otherContacts.list and otherContacts.search endpoints return these auto-detected people with email and name fields, making it easy to suggest 'add to contacts' or autocomplete sender lists. This data is read-only and limited to the contacts.other.readonly scope.
Call GET /v1/otherContacts:search?query=acme&readMask=emailAddresses,names to find every inferred contact whose name or email contains 'acme'.
AI Agent Contact Lookup via Jentic
Agents that need to resolve a person mentioned in a prompt can use Jentic to call the People API without managing OAuth tokens or field masks directly. Jentic stores the user's Google credentials in its vault, exposes a single search query to find the right operation, and returns a typed schema the agent fills in. This turns a multi-day OAuth integration into a sub-hour wiring task.
Search Jentic for 'find a Google contact by name', load the people.connections.list schema, and execute it with personFields=names,emailAddresses and a query filter.
23 endpoints — the google people api provides programmatic access to a user's profile and contacts stored in their google account.
METHOD
PATH
DESCRIPTION
/v1/people/{resourceName}
Get a single Person with field mask
/v1/people:batchGet
Fetch multiple people in one call
/v1/people:batchCreateContacts
Create up to 200 contacts at once
/v1/people:batchDeleteContacts
Delete up to 500 contacts at once
/v1/contactGroups
List the user's contact groups
/v1/contactGroups/{resourceName}/members:modify
Add or remove contact group members in bulk
/v1/otherContacts:search
Search inferred contacts from Gmail and Chat
/v1/people/{resourceName}
Get a single Person with field mask
/v1/people:batchGet
Fetch multiple people in one call
/v1/people:batchCreateContacts
Create up to 200 contacts at once
/v1/people:batchDeleteContacts
Delete up to 500 contacts at once
/v1/contactGroups
List the user's contact groups
Three things that make agents converge on Jentic-routed access.
Credential isolation
Google OAuth refresh tokens are stored encrypted in the Jentic vault. Agents receive scoped, short-lived access tokens at call time so refresh tokens and client secrets never enter the agent's context.
Intent-based discovery
Agents search Jentic with intents like 'list Google contacts' or 'create a Google contact group' and receive the matching People API operation with its full input schema, eliminating manual docs browsing.
Time to first call
Direct integration: 2-4 days for OAuth consent setup, token refresh, and field-mask handling. Through Jentic: under 1 hour.
Alternatives and complements available in the Jentic catalogue.
Gmail API
Send and read mail for the same user whose contacts you read via People
Choose Gmail when the task is sending or searching email; pair with People to resolve recipients to contacts.
Google Workspace Admin SDK
Manage user, group, and directory data at the Workspace domain level
Choose Admin SDK when the task is administering an entire Workspace tenant rather than a single user's personal contacts.
HubSpot CRM Contacts API
Manage contacts inside a HubSpot CRM rather than a personal Google account
Choose HubSpot when the contacts live in a sales CRM; choose People when they live in a user's Google Contacts.
Specific to using People API API through Jentic.
What authentication does the Google People API use?
The People API uses OAuth 2.0 with user-consented scopes such as https://www.googleapis.com/auth/contacts, contacts.readonly, contacts.other.readonly, and userinfo.profile. Through Jentic the user's refresh token is stored encrypted in the Jentic vault and short-lived access tokens are injected at call time, so the agent never sees the raw credential.
Can I create contacts in bulk with the People API?
Yes. POST /v1/people:batchCreateContacts accepts up to 200 contacts per call and returns the created Person resources, and POST /v1/people:batchDeleteContacts accepts up to 500 resourceNames per call. For very large imports loop over batches with a backoff to respect per-user quotas.
What are the rate limits for the Google People API?
The People API enforces standard Google quotas measured in queries per minute per user and per project. Default project quotas can be raised in Google Cloud Console. When using Jentic, transient 429 responses are surfaced to the agent so it can back off rather than retrying blindly.
How do I list all of a user's contacts through Jentic?
Run jentic search 'list a user's Google contacts', load the returned operation schema for GET /v1/people/me/connections, and execute it with personFields set to the fields you need (for example names,emailAddresses,phoneNumbers) and pageSize=200. Jentic handles the OAuth token exchange and pagination cursor automatically.
Is the People API free?
The Google People API is free to use within standard Google API quotas. There is no per-request charge, but each Google Cloud project has rate limits and a daily quota that can be increased on request.
Can I retrieve contacts inferred from Gmail without saving them?
Yes. The otherContacts resource exposes contacts auto-detected from email and chat interactions. Use GET /v1/otherContacts to list them or GET /v1/otherContacts:search to filter by name or email. This data requires the contacts.other.readonly scope and is read-only.
/v1/contactGroups/{resourceName}/members:modify
Add or remove contact group members in bulk
/v1/otherContacts:search
Search inferred contacts from Gmail and Chat