--About this integration--
This integration allows you to instantly update employee's Google calendars to show all employee events logged within their People® planner. This includes Holidays, Other Events and Sickness, although the sickness reason is not displayed.
This works slightly different to the iCal feed that we have available for you to link the company planner view to any external calendar, where the ical calendar goes on top of your personal calendar. Also with iCal feeds, it is dependent on the external calendar as to when or how often it refreshes.
With this integration, all events are embedded into your Google calendar, making it easier for you to invite others to an event and flagging up if they are 'busy'. This displays the People® events in 'real time', updating around every minute. Holiday requests will be shown in a pending state, and declined requests will be removed almost instantly.
1. Create Google Service Account
To configure this integration, you'll first need to set up a Google Service Account. You'll need to create a 'Private Key/Secret Key' as this is required for later.
As this is external from People®, here is Google's help article on how to do this: https://developers.google.com/admin-sdk/directory/v1/guides/delegation
You'll then need to manage your service account to provide access to Read-Write to the calendar. We have linked Google's help documentation below on how to manage your API access area. https://developers.google.com/identity/protocols/OAuth2ServiceAccount#delegatingauthority
Once there, you will be required to add the following URL as one of the scopes: https://www.googleapis.com/auth/calendar
2. Log into People®
3. Click the 'Settings' tab
4. Click the 'API' tab
5. Click the + icon to create a new API key. This will need to include all Employee endpoints - video below:
6. Click the copy icon to copy the key to your clipboard.
7. Go into PeopleHR integration site - https://www.peoplehrint.com
8. Log in or register with a new account. The email address will have to be your admin email address.
9. Click the 'PeopleHR Settings' tab
10. Paste the API key in the box provided
11. Click 'Authorise'
12. To get the Webhook URL, click on the 'here' option shown in the screenshot below:
13. You will be directed to a blank webpage - highlight and copy the URL (link) at the top of your web-bar
14. Now return to the API section in your People Site and paste the URL into the 'Webhook URL' section
15. Go back into the integration site and click the 'GoogleCalendar Settings' tab
This is mandatory but is not displayed anywhere other than this page.
Enter the email address you wish to receive audits/notifications for if there is an error in the setup process (e.g. employee email address in People is invalid, Secret Key is incorrect).
When you retrieve your /Private Key (generated on the first step), please ensure you copy the entire raw json text provided. You can then paste this into the 'Secret key' field.
Here you can specify certain Other Event reasons that will be shown as 'Free' on their calendar (using a comma to separate each reason).
By default, if an employee is away on an Other Event, this will show as 'Busy' on their calendar. This prevents them from booking over this time, for example if they out of work for a dentist appointment. So you may want this area for the reason 'working from home' so they will still be able to book out meetings for example.
16. Click 'Activate Sync'
Once set up, you can disconnect this sync at any time: