Discover: Calendar invites

Learn how to push calendar invites from Enboarder to Google Calendar and Outlook Calendar!

Adam Faludi avatar
Written by Adam Faludi
Updated over a week ago

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! 😎


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.

  1. Login in google console https://console.cloud.google.com/

  2. At the top-left, click Menu menu > IAM & Admin > Create a Project.

  3. 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.

  4. In the Location field, click Browse to display potential locations for your project. Then, click Select.

  5. Click Create. The console navigates to the Dashboard page and your project is created within a few minutes.

  1. At the top-left, click Menu menu > APIs & Services > Library.

  2. In the search field, enter the name of the API you want to enable and press Enter.

  3. In the list of search results, click the API you want to enable.

    1. Please select the below google calendar APIs and provide permission to create/update the event.

  1. Click Enable.

  2. 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.

  1. At the top-left, click Menu menu > APIs & Services > OAuth consent screen.

  2. Select the user type for your app, then click Create.

  3. Complete the app registration form, then click Save and Continue.

Create access credentials to authenticate your app's end users or service accounts.

  1. At the top-left, click Menu menu > APIs & Services > Credentials.

  2. Click Create Credentials > OAuth client ID.

  3. Click Application type > Web application.

  4. In the "Name" field, type a name for the credential. This name is only shown in the Google Cloud console.

  5. In the authorized redirect URL section, please add https://auth.enboarder.com/oauth

  6. Click Create. The OAuth client-created screen appears, showing your new Client ID and Client secret.

  7. Note the Client ID and Client secrets.

  8. 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

  1. 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.

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

  1. Name - Enter a meaningful application name that will be displayed to users of the app. Ex- Enboarder-Integration

  2. 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

  3. 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.

  • 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

  1. 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

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)


Got questions? Reach out to the Enbaorder support team by clicking the ? button at the top right!

Did this answer your question?