It would help if Google Calendar node would support Service Account
My use case:
For personal users @gmail.com google doesn’t allow to use oauth2. There’s problematic process to get app approved. I managed to get google workspace using custom domain to get internal application created however in thise case the google calendar is not avaiable
I second this, I am trying to build a calendar agent for a company and without a service account I can’ t update and view availability for all the users. I am familiar with Javascript but not capable enough to handle this alone, give me a shout if I can help!
I am also working on something that requires domain wide access to the gmail calendar.
I saw something about setting up the service account for domain wide access, and then I “think” you send it the specific email as the user it needs to impersonate.
My issue is trying to inject the users email in the Service account “impersonate user” field. I see you can add expressions, but wasn’t sure how to automate and iterate through all the users.
Using this as the basis:
To use a service account with domain-wide delegation to access the Google Calendar API, a Google Workspace super administrator needs to grant the service account access to user data within the domain, enabling it to impersonate users and manage their calendars.
Here’s a breakdown of the process:
Understanding Domain-Wide Delegation:
Domain-wide delegation allows a service account to access user data on behalf of any user in a Google Workspace domain without requiring individual user consent.
This is necessary when an application needs to manage calendars for multiple users within the domain.
It’s a way to grant a service account broad access to user data, but it’s important to use it judiciously and restrict the scopes of access.
Setting up Domain-Wide Delegation:
Admin Console Access: A Google Workspace super administrator must navigate to the Admin console and go to “Security > Access and data control > API Controls”.
Manage Domain-Wide Delegation: Under “Domain-wide delegation,” select “Manage Domain-Wide Delegation”.
Add New: Click “Add new” and enter the service account’s client ID (the one that’s only numbers).
OAuth Scopes: Enter the necessary OAuth scopes that the service account needs to be granted (e.g., https://www.googleapis.com/auth/calendar and https://www.googleapis.com/auth/calendar.events).
Authorize: Click “Authorize” to grant the service account domain-wide access.