Google Calendar + Google Contacts - Using email do get phone number

I want to automatically send a meeting reminder via Whatsapp to meeting participants that are in my Google Contacts.

Using the Google Calendar node, I am able to get the events on my calendar for a given period, along with the emails of participicipants.

I played with the Google Contact node, but haven’t found a way to get the participants’ phone number using email as query parameter: I don know how to get the Contact ID of each participant.

Any advice?

Please share your workflow

Share the output returned by the last node

Information on your n8n setup

  • n8n version: 0.230.3
  • Database (default: SQLite): postgres
  • n8n EXECUTIONS_PROCESS setting (default: own, main): main
  • Running n8n via (Docker, npm, n8n cloud, desktop app): docker
  • Operating system: linux

Hi @fxholl :wave:

It looks like you’d have to use a HTTP request node in order to do this - your request would look something like this:

https://people.googleapis.com/v1/people:searchContacts?pageSize=10&query=person%40example.com&readMask=phoneNumbers&sources=READ_SOURCE_TYPE_CONTACT

Note that the @ needs to be replaced by the %40. :+1: You can select “predefined credential type”, and have n8n take care of authentication for you still - but that’s the basic query structure to search via email and retrieve a phone number!

1 Like

Ah, I’ve also made a mistake, you can do this using “Get Many” and specifying a query:

2 Likes

When I launch the query however I get the following error:

“ERROR: Bad request - please check your parameters
Query length must be less than or equal to 100.”

I tried to remove some query parameters but it did not work. Any suggestions?

I found this article in the Google API doc: Method: people.get  |  People API  |  Google for Developers

It suggests using GET https://people.googleapis.com/v1/{resourceName=people/*} and then to use personFieldsto return the phone number.

Still, I am confused about how to find the resourceName for a given email in my contacts

Hey @fxholl,

If you are using the People API and you want to use the resourceName for a specific user you would first need to work out what the ID is for the user, rather than trying to use the API though did you try using the Get Many option in the node with a filter to see if that works?

I followed @EmeraldHerald sugestion:

here is the query:

Hey @fxholl,

Just under that post there is another suggestion which I would try.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.