---
title: "Example: OAuth Configuration for Google Calendar"
slug: "example-oauth-configuration-for-google-calendar"
updated: 2026-06-09T16:07:55Z
published: 2026-06-09T16:07:55Z
canonical: "docs.algosolutions.com/example-oauth-configuration-for-google-calendar"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://docs.algosolutions.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Example: OAuth Configuration for Google Calendar

This guide explains how to:

- Integrate an Algo device with Google Calendar using OAuth
- Verify the configuration by creating a test schedule in Google Calendar
- Use the OAuth profile to create a test schedule in Google Calendar from an Algo 8450

> [!NOTE]
> Note
> 
> This document includes third-party configuration procedures that are subject to change. It is provided for reference purposes only, and Algo cannot guarantee that the screenshots or procedures will always be current or up to date.

### **Before you start**

Ensure you have a Google account.

### Procedure Overview

This procedure includes the following steps:

1. [Creating a Google Cloud OAuth Project](/docs/example-oauth-configuration-for-google-calendar#creating-a-google-cloud-oauth-project)
2. [Creating an OAuth Authorization Profile](/docs/example-oauth-configuration-for-google-calendar#creating-an-oauth-authorization-profile)
3. [Creating a Test Schedule](/docs/example-oauth-configuration-for-google-calendar#creating-a-test-document)
4. (Optional): [Configuring an 8450 Button to Create a Google Calendar Schedule](/docs/example-oauth-configuration-for-google-calendar#configuring-an-8450-button-to-create-a-google-drive-file)

---

### Creating a Google Cloud OAuth Project

Create a Google Cloud OAuth project and obtain the required credentials for OAuth.

1. Sign in to the [**Google Cloud Console**](https://console.cloud.google.com/).
2. Click **Select a project**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-08 103834 (1) (1) (1).png)
3. Select **New project**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-08 104004 (1)(1) (1).png)
4. Enter a name for your project, then select **Create**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-05-04 130858 (1).png)
5. In the notification window, click **Select Project**below your project name.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-05-04 131050 (1).png)
6. Select **APIs & Services** → **Enabled APIs & services**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-09 133602 (2).png)
7. Select **Enable APIs and services** from the navigation menu.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-09 134927 (1).png)
8. Search **Google Calendar API** to locate it.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/image(849).png)
9. Select **Google Calendar API**

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-08 110527 (1).png)
10. Select **Enable**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-08 110929 (1).png)
11. Go to **Data Access**→ **Add or remove scopes**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-05-04 131747 (1).png)
12. Search and add “[calendar.events](http://calendar.events)”.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-05-04 132020 (1).png)
13. Select **Credentials**→**+ Create credentials**→ **OAuth client ID**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-08 111510 (2).png)
14. Select **Configure consent screen**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-08 111736 (1).png)
15. Select **Get started**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-08 112311 (1).png)
16. Follow the on-screen instructions to configure your project, then select **Create**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-08 112815 (1).png)
  - **App Information**
    - **App name:** Enter a name for your application.
    - **User support email**: Enter an email for users to contact you with questions about their consent.
  - **Audience**: Set to **External**.

This makes the application available to any test user with a Google Account.
  - **Contact Information**: Enter your email for Google to notify you about any changes to this project.
  - **Finish**: Accept the **Google API services user data policy**.
17. Select **Create OAuth client**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-08 113111 (1).png)
18. Configure the following, then select **Create**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-09 145422 (1)(1).png)
  - **Application type**: Set to **TVs and Limited Input devices**.
  - **Name**: Enter a name.
19. Copy the **Client ID**and **Client secret**.

You need this information to configure OAuth later.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-09 145941 (1).png)
20. Go to **Audience**→ **+ Add users**.

Add your Google account as a test user to access the project.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-09 150627 (1).png)
21. Enter the same email you used to sign in to [**Google Cloud Console**](https://console.cloud.google.com/). Then select **Save**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-09 150825 (1).png)

### Creating an OAuth Authorization Profile

Create an OAuth profile to store your Google Calendar authentication settings.

Ensure you have the following:

- **Client ID**
- **Client Secret**

**To create a Google Calendar OAuth Profile:**

1. Log in to your device’s web interface using HTTPS.

HTTPS is required by the Google Calendar OAuth process.
2. Go to the **Advanced Settings** → **OAuth**.
3. Set a **Name**for your OAuth profile.
4. Select **GOOGLE_CALENDAR** as the **Provider Type.**
5. Accept the following automatically populated values:
  - **Grant Type**: DEVICE_CODE
  - **Token URL**: [https://oauth2.googleapis.com/token](https://oauth2.googleapis.com/token)
  - **Auth URL**:****[https://oauth2.googleapis.com/device/code](https://oauth2.googleapis.com/device/code)
  - **Client Auth Mode**: CLIENT_SECRET_POST
  - **Scope Mode**: SCOPES_LIST
  - **Scope**: [https://www.googleapis.com/auth/calendar](https://www.googleapis.com/auth/calendar)
  - **Extra Params (JSON)**:

```bash
{
  "issuer": "https://accounts.google.com",
  "jwks_uri": "https://www.googleapis.com/oauth2/v3/certs",
  "revocation_endpoint": "https://oauth2.googleapis.com/revoke"
}
```
    1. 
6. Set the following:
  - **Client ID**: Enter your OAuth**Client ID**.
  - **Client Secret**: Enter your **OAuth****Client Secret**.
7. Select **START AUTHORIZATION**.
8. Copy the**User code** that appears on the right of the **START AUTHORIZATION**button.

You need this code to connect your device to Google Calendar.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-06-09 090352 (1).png)
9. Go to [https://www.google.com/device](https://www.google.com/device).
10. Enter your user code and select **Continue**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/image(860).png)
11. Select your Google account.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-09 155934 (1).png)
12. Select **Continue**to verify the application.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/image(857) (1).png)
13. Select **Continue**.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-09 160311 (1).png)

Upon success, the following screen appears:

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/image(859).png)
14. Go back to your Algo device’s web interface and select **Create Profile**.****

Your profile appears under the **OAuth Profiles** list.

### Creating a Test Schedule

You can create a test schedule to verify that the configuration is working correctly.

**To create a meeting in Google Calendar:**

1. Log in to your device’s web interface using HTTPS.

HTTPS is required by Google Calendar OAuth process.
2. Go to the **Advanced Settings** → **OAuth**.
3. Select your Google Calendar profile from the **Test OAuth Profile** dropdown list.
4. Select **GOOGLE_CALENDAR******as the **Provider Type Template.**
5. Accept the default **Custom Header**:

```plaintext
Content-Type: application/json; charset=utf-8
```
6. Leave the **Data Payload** blank.
7. Set the **Target URL and Path**to [https://www.googleapis.com/calendar/v3/calendars/primary/events/quickAdd?text=Meeting%20now%20for%2030%20minutes](https://www.googleapis.com/calendar/v3/calendars/primary/events/quickAdd?text=Meeting%20now%20for%2030%20minutes)

This creates a test meeting starting from now that lasts 20 minutes.
8. Select **RUN OAuth Test**.

Upon success:
  - The schedule appears in your Google Calendar.

  

A successful response is displayed.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/image(930) (1).png)

### Configuring an 8450 Button to Create a Google Calendar Schedule

You can configure a button on the Algo 8450 to create a Google Calendar schedule.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/image(934).png)

**To configure an 8450 button to create a Google Calendar meeting:**

1. Create a button on an 8450 screen.
2. Set the **Button Status** to **Enabled.**
3. Configure the following:
  - **Text**: Enter the button display text.
  - **Action**: Set to **Send API Request**.
  - **Number of API Requests**: Set to **1**.
  - **Request 1 - Command**: Set to **Other**.
  - **Request 1 - Method**: Set to **POST**.
  - **Request 1 - Custom Path**: Set to `calendar/v3/calendars/primary/events/quickAdd?text=Meeting%20now%20for%2030%20minutes`

This creates a test meeting starting from now that lasts 20 minutes.
  - **Request 1 - Targets**: Set to `www.googleapis.com`
  - **Request 1 - OAuth Profile**: Select your Google Calendar profile.
  - **Request 1 - Headers**: Set to **Custom Headers**.
  - **Request 1 - Custom Headers**: Set to `Content-Type: application/json; charset=utf-8`
  - **Request 1 - Data Payload**: None
4. Select**Save.**

Press the button and verify that the schedule is created in your Google Calendar.

#### Troubleshooting

**I get a 502 error when I run the OAuth Test**

You may be logged out of the device’s web interface. Log in again and retry.

**After I run the “Start Authorization” again, my OAuth Test fails**

Each time you run **Start Authorization** again, select **Update Profile** to save the new credentials before running the test.

![](https://cdn.document360.io/f6f5e62d-d280-487f-9da7-5926ffd53b5f/Images/Documentation/Screenshot 2026-04-06 151132 (1).png)

**My OAuth profile stops working**

An OAuth profile can stop working if the OAuth provider rejects or invalidates the access or refresh token. Refer to the OAuth provider’s documentation for more information. If this occurs, the OAuth profile must be reauthorized.
