This guide will help you configure Enboarder to push calendar invites from Enboarder to Google Calendar and Outlook Calendar!
It is important to note that your IT team will be required to set this up. Our scope of support is limited to our own product so please ensure that you have your IT expert ready! 😎
Table of contents
Table of contents
How to push a calendar invite to Google Calendar using the OAuth2 tile and webhook
Note: Steps One and Two are One-time setup tasks
Step 1: Register the Google App and configure the credentials
Create a Google Cloud project and generate OAuth2 application data. Please refer to Google documentation for complete detail.
Note: The calendar event will be initiated using the email id of the User who added the tile and authorized Enboarder to create the App (ie: this User will appear in the From field). A system account can be used for this purpose.
Login in google console https://console.cloud.google.com/
At the top-left, click Menu menu > IAM & Admin > Create a Project.
In the Project Name field, enter a descriptive name for your project.
Optional: To edit the Project ID, click Edit. The project ID can't be changed after the project is created, so choose an ID that meets your needs for the lifetime of the project.In the Location field, click Browse to display potential locations for your project. Then, click Select.
Click Create. The console navigates to the Dashboard page and your project is created within a few minutes.
Open the Google Cloud console.
At the top-left, click Menu menu > APIs & Services > Library.
In the search field, enter the name of the API you want to enable and press Enter.
In the list of search results, click the API you want to enable.
Please select the below google calendar APIs and provide permission to create/update the event.
Click Enable.
To enable more APIs, repeat steps 2–5.
Configure the consent screen to ensure users can understand and approve what access your app has to their data.
Open the Google Cloud console.
At the top-left, click Menu menu > APIs & Services > OAuth consent screen.
Select the user type for your app, then click Create.
Complete the app registration form, then click Save and Continue.
Create access credentials to authenticate your app's end users or service accounts.
Open the Google Cloud console.
At the top-left, click Menu menu > APIs & Services > Credentials.
Click Create Credentials > OAuth client ID.
Click Application type > Web application.
In the "Name" field, type a name for the credential. This name is only shown in the Google Cloud console.
In the authorized redirect URL section, please add https://auth.enboarder.com/oauth
Click Create. The OAuth client-created screen appears, showing your new Client ID and Client secret.
Note the Client ID and Client secrets.
Click OK. The newly created credential appears under "OAuth 2.0 Client IDs."
Step 2: Add a new Custom tile in Enboarder to set up the Integration
Go to Settings → Apps and Integration → App center page
2. Click on the + new tile icon to open the New Tile configuration screen
3. Fill in the information as per below
Field name | Detail |
Application Name | The display name of tile. You can put any name |
Oauth2 Token URL | |
Oauth2 Client ID | The client_idgenerated in google workspace |
Oauth2 Client Secret | The client_secretgenerated in google workspace |
Oauth2 scopes | |
Oauth Flow option | Please select Authorise flow option. |
Oauth2 Authorisation Token URL | |
Oauth2 Refresh Token URL |
For example:
Click on Add Integration button.
The system will redirect the user to the Google site to get his/her consent. Please log in using your credential and provide your consent
Once this is done, the system will redirect the user to Enboarder and show the tile as integrated
Step 3: Import the Google Calendar Webhook from Discover and configure itIn Enboarder, go to Discover and search for the Google Calendar invite
On the Google Calendar webhook page, select Add to My Assets to import the Webhook. Click through the screens until you reach the Success page and the asset is added to your Modules list.
Once the Webhook is added to your account. Configure the Webhook as below and update the details for your event.
Authentication - Please select the tile added in the previous step
Method - POST
Header
Payload - Update the payload with your Event details following the format of the sample below. Make sure the keys are matching as per the mapping table below.
Sample Payload
1{
2 "end": {
3 "dateTime": "2022-08-30T06:00:00-07:00"
4 },
5 "start": {
6 "dateTime": "2022-08-30T05:00:00-07:00"
7 },
8 "attendees": [
9 {
10 "email": "jj@example.com"
11 },
12 {
13 "email": "dd@example.com"
14 }
15 ],
16 "summary": "My first api event from code and postman",
17 "description": "This is using postman to test api",
18 "location": "Sydney room"
Example of a configured Webhook
Note: Dynamic tokens can be used in place of actual values
Step 4: Launch the Workflow to automate the sending of the Google Calendar invite.
Add the Webhook to a sequence in your Workflow. When the Workflow is launched and the sequence triggered, the webhook will create the event in Google Calendar.
Note: The event will be initiated using the email id of the User who added the tile and authorised Enboarder to create the App.
How to push a calendar invite to Outlook Calendar using the OAuth2 tile and webhook
Note: Steps One and Two are One-time setup tasks
Step 1: Register the Outlook App and configure the credentials
Login in the Azure AD portal and register the app with the below permission for Graph API.
The organization must have an admin account in Microsoft Azure and all users are set up in the Microsoft Azure directory.
Set up an application for one or more tenants at https://portal.azure.com and register it to set up OAuth flow.
Login in the Azure portal. Go to Azure Active Directory → App registration → New Registration
Set up the following properties of this app
Name - Enter a meaningful application name that will be displayed to users of the app. Ex- Enboarder-Integration
Supported account types - Select which accounts you would like your application to support based on requirements.
Accounts in this organizational directory only
Accounts in any organizational directory
Accounts in any organizational directory and personal Microsoft accounts
Redirect URI (optional) - Select the type of app - Web or Public client (mobile & desktop), and then enter the redirect URI (or reply URL) for the application.
Please select web as app type
Put value https://auth.enboarder.com/oauth
The following permission should be enabled for Microsoft Graph API and the admin user should provide consent for the same.
Application and Delegate Permission
Calendars.ReadWrite
After the application is registered, generate the client's secret
Note down the below values and keep them handy. These values are required during integration setup in Enboarder.
tenantID
Client_id
Client_credential
Token URL
Step 2: Add a new Custom tile in Enboarder to set up the Integration
Go to Settings → Apps and Integration → App center page
2. Click on the + new tile icon to open the New Tile configuration screen
3. On Next Page, please fill in the information as per below
Field Name | Detail |
Application Name | The display name of tile. You can put any name |
Oauth2 Token URL | |
Oauth2 Client ID | The client_idgenerated in Microsoft Azure AD app. |
Oauth2 Cliex`x`nt Secret | The client_secretgenerated in Microsoft Azure AD app. |
Oauth2 scopes | https://graph.microsoft.com/.default offline_access |
Oauth Flow option | Please select Client Credentials option. |
Oauth2 Authorisation Token URL | |
Oauth2 Refresh Token URL |
Click on Add Integration button.
The system will redirect the user to the Azure portal site to get consent. Please log in using your credential and provide your consent
Once this is done, the system will redirect the user to Enboarder and show the tile as integrated.
Step 3: Import the Outlook Calendar Webhook from Discover and configure it
In Enboarder, go to Discover and search for the Outlook calendar invite
On the Outlook Calendar webhook page, select Add to My Assets to import the Webhook. Click through the screens until you reach the Success page and the asset is added to your Modules list.
Once added to your account. Configure the Webhook as below and update the details for your event.
Refer Microsoft API document for complete payload Create Event - Microsoft Graph v1.0
URL - https://graph.microsoft.com/v1.0/users/{{user ms email or id}}/calendar/events
(where User email is primary email of outlook, id is object id in azure AD) .Authentication - Please select tile which you have added in previous step.
Method - POST
Header Key - Content-type
Header Value - application/json
Payload - Please add payload as below sample and make sure the keys are matching as per mapping table below.
Sample Payload
1{
2 "subject": "Let's read book",
3 "body": {
4 "contentType": "HTML",
5 "content": "Which book you want to read?"
6 },
7 "start": {
8 "dateTime": "2022-09-16T12:00:00",
9 "timeZone": "Pacific Standard Time"
10 },
11 "end": {
12 "dateTime": "2022-09-16T13:00:00",
13 "timeZone": "Pacific Standard Time"
14 },
15 "location":{
16 "displayName":"Nile river"
17 },
18 "attendees": [
19 {
20 "emailAddress": {
21 "address":"ravneet@examp.com",
22 "name": "Samantha Booth"
23 },
24 "type": "required"
25 }
26 ],
27 "allowNewTimeProposals": true,
28 "transactionId":"7E163156-7762-4BEB-A1C6-729EA81755A7"
29}
Step 4: Launch the Workflow to automate the sending of the Outlook Calendar invite.
Add the Webhook to your Workflow. When the Workflow is launched and the sequence triggered, the webhook will create the event in Outlook Calendar.
The event will be initiated using the email id of the User in the URL, (ie: this will appear in the From field)
URL - https://graph.microsoft.com/v1.0/users/{{user ms email or id}}/calendar/events
(where User email is the primary email of Outlook, id is the object id in Azure AD) .
Got questions? Reach out to the Enbaorder support team by clicking the ? button at the top right!