Overview
Enable your agents to manage contacts and directory information through Google Contacts. Access personal contacts, search directory people, create and update contact information, and manage contact groups with AI-powered automation.Prerequisites
Before using the Google Contacts integration, ensure you have:- A CrewAI AMP account with an active subscription
- A Google account with Google Contacts access
- Connected your Google account through the Integrations page
Setting Up Google Contacts Integration
1. Connect Your Google Account
- Navigate to CrewAI AMP Integrations
- Find Google Contacts in the Authentication Integrations section
- Click Connect and complete the OAuth flow
- Grant the necessary permissions for contacts and directory access
- Copy your Enterprise Token from Integration Settings
2. Install Required Package
Available Actions
google_contacts/get_contacts
google_contacts/get_contacts
Description: Retrieve user’s contacts from Google Contacts.Parameters:
pageSize
(integer, optional): Number of contacts to return (max 1000). Minimum: 1, Maximum: 1000pageToken
(string, optional): The token of the page to retrieve.personFields
(string, optional): Fields to include (e.g., ‘names,emailAddresses,phoneNumbers’). Default: names,emailAddresses,phoneNumbersrequestSyncToken
(boolean, optional): Whether the response should include a sync token. Default: falsesortOrder
(string, optional): The order in which the connections should be sorted. Options: LAST_MODIFIED_ASCENDING, LAST_MODIFIED_DESCENDING, FIRST_NAME_ASCENDING, LAST_NAME_ASCENDING
google_contacts/search_contacts
google_contacts/search_contacts
Description: Search for contacts using a query string.Parameters:
query
(string, required): Search query stringreadMask
(string, required): Fields to read (e.g., ‘names,emailAddresses,phoneNumbers’)pageSize
(integer, optional): Number of results to return. Minimum: 1, Maximum: 30pageToken
(string, optional): Token specifying which result page to return.sources
(array, optional): The sources to search in. Options: READ_SOURCE_TYPE_CONTACT, READ_SOURCE_TYPE_PROFILE. Default: READ_SOURCE_TYPE_CONTACT
google_contacts/list_directory_people
google_contacts/list_directory_people
Description: List people in the authenticated user’s directory.Parameters:
sources
(array, required): Directory sources to search within. Options: DIRECTORY_SOURCE_TYPE_DOMAIN_PROFILE, DIRECTORY_SOURCE_TYPE_DOMAIN_CONTACT. Default: DIRECTORY_SOURCE_TYPE_DOMAIN_PROFILEpageSize
(integer, optional): Number of people to return. Minimum: 1, Maximum: 1000pageToken
(string, optional): Token specifying which result page to return.readMask
(string, optional): Fields to read (e.g., ‘names,emailAddresses’)requestSyncToken
(boolean, optional): Whether the response should include a sync token. Default: falsemergeSources
(array, optional): Additional data to merge into the directory people responses. Options: CONTACT
google_contacts/search_directory_people
google_contacts/search_directory_people
Description: Search for people in the directory.Parameters:
query
(string, required): Search querysources
(string, required): Directory sources (use ‘DIRECTORY_SOURCE_TYPE_DOMAIN_PROFILE’)pageSize
(integer, optional): Number of results to returnreadMask
(string, optional): Fields to read
google_contacts/list_other_contacts
google_contacts/list_other_contacts
Description: List other contacts (not in user’s personal contacts).Parameters:
pageSize
(integer, optional): Number of contacts to return. Minimum: 1, Maximum: 1000pageToken
(string, optional): Token specifying which result page to return.readMask
(string, optional): Fields to readrequestSyncToken
(boolean, optional): Whether the response should include a sync token. Default: false
google_contacts/search_other_contacts
google_contacts/search_other_contacts
Description: Search other contacts.Parameters:
query
(string, required): Search queryreadMask
(string, required): Fields to read (e.g., ‘names,emailAddresses’)pageSize
(integer, optional): Number of results
google_contacts/get_person
google_contacts/get_person
Description: Get a single person’s contact information by resource name.Parameters:
resourceName
(string, required): The resource name of the person to get (e.g., ‘people/c123456789’)personFields
(string, optional): Fields to include (e.g., ‘names,emailAddresses,phoneNumbers’). Default: names,emailAddresses,phoneNumbers
google_contacts/create_contact
google_contacts/create_contact
Description: Create a new contact in the user’s address book.Parameters:
names
(array, optional): Person’s namesemailAddresses
(array, optional): Email addressesphoneNumbers
(array, optional): Phone numbersaddresses
(array, optional): Postal addressesorganizations
(array, optional): Organizations/companies
google_contacts/update_contact
google_contacts/update_contact
Description: Update an existing contact’s information.Parameters:
resourceName
(string, required): The resource name of the person to update (e.g., ‘people/c123456789’)updatePersonFields
(string, required): Fields to update (e.g., ‘names,emailAddresses,phoneNumbers’)names
(array, optional): Person’s namesemailAddresses
(array, optional): Email addressesphoneNumbers
(array, optional): Phone numbers
google_contacts/delete_contact
google_contacts/delete_contact
Description: Delete a contact from the user’s address book.Parameters:
resourceName
(string, required): The resource name of the person to delete (e.g., ‘people/c123456789’)
google_contacts/batch_get_people
google_contacts/batch_get_people
Description: Get information about multiple people in a single request.Parameters:
resourceNames
(array, required): Resource names of people to get. Maximum: 200 itemspersonFields
(string, optional): Fields to include (e.g., ‘names,emailAddresses,phoneNumbers’). Default: names,emailAddresses,phoneNumbers
google_contacts/list_contact_groups
google_contacts/list_contact_groups
Description: List the user’s contact groups (labels).Parameters:
pageSize
(integer, optional): Number of contact groups to return. Minimum: 1, Maximum: 1000pageToken
(string, optional): Token specifying which result page to return.groupFields
(string, optional): Fields to include (e.g., ‘name,memberCount,clientData’). Default: name,memberCount
Usage Examples
Basic Google Contacts Agent Setup
Directory Search and Management
Contact Creation and Updates
Contact Group Management
Comprehensive Contact Management
Troubleshooting
Common Issues
Permission Errors- Ensure your Google account has appropriate permissions for contacts access
- Verify that the OAuth connection includes required scopes for Google Contacts API
- Check that directory access permissions are granted for organization contacts
- Ensure resource names follow the correct format (e.g., ‘people/c123456789’ for contacts)
- Verify that contact group resource names use the format ‘contactGroups/groupId’
- Check that resource names exist and are accessible
- Ensure search queries are properly formatted and not empty
- Use appropriate readMask fields for the data you need
- Verify that search sources are correctly specified (contacts vs profiles)
- Ensure required fields are provided when creating contacts
- Verify that email addresses and phone numbers are properly formatted
- Check that updatePersonFields parameter includes all fields being updated
- Ensure you have appropriate permissions to access organization directory
- Verify that directory sources are correctly specified
- Check that your organization allows API access to directory information
- Be mindful of page size limits (varies by endpoint)
- Use pageToken for pagination through large result sets
- Respect API rate limits and implement appropriate delays
- Ensure contact group names are unique when creating new groups
- Verify that contacts exist before adding them to groups
- Check that you have permissions to modify contact groups
Getting Help
Need Help?
Contact our support team for assistance with Google Contacts integration setup or troubleshooting.