Skip to main content
Google Contacts logo

Overview

Add Google Contacts to any ModuleX agent or workflow. Manage Google Contacts (People API v1) — create, list, get, update, and delete the authenticated user’s contacts, plus list Google Workspace directory people. All calls go to https://people.googleapis.com/v1.
Categories: Productivity & Collaboration · CRM · Auth: Google OAuth2 · Actions: 6

Authentication

Google OAuth2

Connect using Google OAuth (recommended) — Contacts + Directory scopes.

Required Credentials

OAuth Configuration

  • Authorization URL: https://accounts.google.com/o/oauth2/v2/auth
  • Token URL: https://oauth2.googleapis.com/token
  • Scopes: https://www.googleapis.com/auth/contacts, https://www.googleapis.com/auth/directory.readonly

Available Actions

Parameters

array
required
Contact fields to populate and return — any of: names, emailAddresses, phoneNumbers, addresses, biographies, birthdays, calendarUrls, genders, urls.
string
Contact’s first name (used when person_fields includes ‘names’).
string
Contact’s middle name (used when person_fields includes ‘names’).
string
Contact’s last name (used when person_fields includes ‘names’).
string
Contact’s email address (used when person_fields includes ‘emailAddresses’).
string
Contact’s phone number (used when person_fields includes ‘phoneNumbers’).
string
Street address (used when person_fields includes ‘addresses’).
string
City (used when person_fields includes ‘addresses’).
string
State / region (used when person_fields includes ‘addresses’).
string
Postal / zip code (used when person_fields includes ‘addresses’).
string
Country (used when person_fields includes ‘addresses’).
string
Biography text (used when person_fields includes ‘biographies’).
string
Birthday in YYYY-MM-DD format (used when person_fields includes ‘birthdays’).
string
Calendar URL (used when person_fields includes ‘calendarUrls’).
string
Gender: male, female, or unspecified (used when person_fields includes ‘genders’).
array
List of associated URLs (used when person_fields includes ‘urls’).
object
Optional extra fields merged into the Person request body. See https://developers.google.com/people/api/rest/v1/people for the full schema.

Response

Parameters

string
required
The People API resource name identifying the contact, e.g. ‘people/c123456789’.

Response

Parameters

string
required
The People API resource name identifying the contact, e.g. ‘people/c123456789’.
array
required
Contact fields to return — any of: addresses, ageRanges, biographies, birthdays, calendarUrls, clientData, coverPhotos, emailAddresses, events, externalIds, genders, imClients, interests, locales, locations, memberships, metadata, miscKeywords, names, nicknames, occupations, organizations, phoneNumbers, photos, relations, sipAddresses, skills, urls, userDefined.

Response

Parameters

array
required
Contact fields to return on every result — same enum as get_contact’s fields.
integer
Maximum number of pages to fetch (1-500). Prevents runaway pagination. (Default: 50)

Response

Parameters

array
required
Contact fields to return — same enum as get_contact’s fields.
string
required
Directory source to return: ‘DIRECTORY_SOURCE_TYPE_DOMAIN_CONTACT’ or ‘DIRECTORY_SOURCE_TYPE_DOMAIN_PROFILE’.
array
Optional. Additional sources to merge in via verified join keys. Any of: ‘DIRECTORY_MERGE_SOURCE_TYPE_UNSPECIFIED’, ‘DIRECTORY_MERGE_SOURCE_TYPE_CONTACT’.
integer
Number of people per response page (1-1000). Defaults to 100. (Default: 100)
string
Page token returned from a previous response’s nextPageToken.
boolean
Whether the response should include a nextSyncToken for incremental sync. (Default: false)
string
Sync token from a previous response — fetch only resources changed since then.

Response

Parameters

string
required
The People API resource name identifying the contact to update.
array
required
Contact sections to update — any of: names, emailAddresses, phoneNumbers, addresses, biographies, birthdays, calendarUrls, genders, urls.
string
Updated first name (used when update_person_fields includes ‘names’).
string
Updated middle name (used when update_person_fields includes ‘names’).
string
Updated last name (used when update_person_fields includes ‘names’).
string
Updated email (used when update_person_fields includes ‘emailAddresses’).
string
Updated phone (used when update_person_fields includes ‘phoneNumbers’).
string
Updated street address (used when update_person_fields includes ‘addresses’).
string
Updated city.
string
Updated state / region.
string
Updated postal / zip code.
string
Updated country.
string
Updated biography.
string
Updated birthday in YYYY-MM-DD format.
string
Updated calendar URL.
string
Updated gender: male, female, or unspecified.
array
Updated list of associated URLs.
object
Optional extra fields merged into the Person request body. See https://developers.google.com/people/api/rest/v1/people for the full schema.

Response

Limits & Quotas

  • Google People API default quota: 90 reads/minute and 60 writes/minute per user, 1,200 reads/minute per project. Higher limits available via Google Cloud quota request.
  • list_contacts auto-paginates through people/me/connections — beware large contact directories (each page is 100 contacts by default; the implementation fetches every page in sequence).
  • list_directory_contacts returns one page per call; supply page_token / sync_token from a previous response for pagination or incremental sync.
  • update_contact performs an extra GET to refresh the etag before the PATCH. Stale-etag updates are rejected by Google with HTTP 400.
  • Error model: non-2xx responses raise httpx.HTTPStatusError. The modulex runtime surfaces these as failed tool calls — plan for retries on the agent side if a transient 5xx is possible.

Insightly

Microsoft Dynamics 365 Sales

Bloomerang