In this document:
- 1. Open the Google Developer APIs and Services Dashboard
- 2. Name your project
- 3. Select the project you just created
- 4. Head back to the API dashboard
- 5. Google API Library
- 6. Select the Google Calendar API
- 7. Enable the Google Calendar API
- 8. Create a Credential
- 9. Select to create a Client ID
- 9. OAuth Consent Screen
- 10. Configure OAuth Consent Screen
- 11. Create OAuth client ID
- 12. OAuth Application
- 13. Get your Client ID and Client Secret
- My app isn’t approved
- Help! I closed the box with the Client ID and Secret without copying them.
In order to connect to your Google calendar, you have to set up the Google Calendar API for your Google account and get a Client ID and Client Secret from Google that you can then paste into the fields inside your Simply Schedule Appointments Google Calendar settings to enable the connection. Here are the steps for getting this set up on your Google account and getting the Client ID and Client Secret that you need.
Please note: Google changes this process all the time. We do our best to keep this up to date with the latest thing Google is doing, but there’s usually no warning or notification that the process has changed. If you need help, please contact support and we’ll help you get it sorted out.
1. Open the Google Developer APIs and Services Dashboard
Go to the Google Developer APIs and Services Dashboard. If you’re not logged into your Google account, you’ll be prompted to log in. You may also be asked to accept the Google Cloud Platform Terms of Service. Once you’re on the dashboard, you can create a new project or choose an existing one. If you have no idea what this is, you most likely want to Create a new one.
2. Name your project
If you chose to create a new project in step 1, then enter a project name then click Create. You may leave the Location set to No Organization. (Skip this step if you selected an existing project in Step 1)
3. Select the project you just created
(Skip this step if you selected an existing project in Step 1.)
As of July 2019, when you create a new project, Google might send you to the project dashboard for the Google Cloud Platform. You’ll see a notification appear that shows a progress indicator while Google creates your new project. If this is your first project, then you’ll likely be forwarded to the dashboard for your project. Be sure your new project is shown as the selected project on the toolbar at the top of the screen, as shown below.
However, if you have other projects, you may find yourself dashboard for one of your other projects. Wait until the progress indicator stops spinning so that you know your new project is set up for sure. Then, select your project from from the project selector on the top toolbar. You may have to refresh the page to see your new project.
4. Head back to the API dashboard
After creating or selecting a project, you might be taken to a simple screen with links to enable APIs like this:
Or you might land on a more complex dashboard. If you do, look for the Getting Started card. It will likely be at the bottom left. Click Explore and enable APIs. That should take you to the simple screen shown above where you’ll click to Enable APIs and services.
5. Google API Library
In the Google API Library, search for
6. Select the Google Calendar API
Select the Google Calendar API from the list of search results.
7. Enable the Google Calendar API
You’ll be taken to the Google Calendar API page. Click the Enable button to add the Google Calendar API to your project.
8. Create a Credential
As of July 2019, you’ll be taken to an API overview page where you’ll be prompted in a banner across the top of the page to Create Credentials.
9. Select to create a Client ID
Now we can skip some steps and fast forward to creating the Client ID needed. Instead of stepping through the wizard, click the Client ID link to skip right to creating a Client ID.
9. OAuth Consent Screen
You’ll be shown a message that you first need to configure your consent screen. Go ahead and click the Configure consent screen button to proceed.
If you are using a regular gmail address (@gmail.com), you’ll need to select External as the app type and your app will be submitted to Google for review. Please see the section on app approval.
If you are using a GSuite gmail address (@yourdomain.com), we highly recommend selecting Internal as the app type, which allows you to set up without having your app submitted to Google for review.
10. Configure OAuth Consent Screen
Enter an Application name, and select an email address for Support email. Under Scopes for Google APIs, click Add scope and select the Google Calendar API with the scope of
../auth/calendar. Finally, under Authorized domains, add two:
- Your site domain – it should be just your domain name – no subdomains or subfolders
All other fields are optional and can be skipped. Click Save.
Please note: As of July 2019, Google considers the
../auth/calendar scope to be sensitive as it requires read and write access to your Google Calendar data. Since the ‘app’ you’re creating isn’t a verified, app, Google will want to review to make sure it’s okay. This review process can take several days, but you should be able to connect SSA before your review process is complete. If you are using GSuite, you can avoid this review requirement by setting your Application Type to Internal.
11. Create OAuth client ID
As of February 2020, two different things may happen after completing Step 10:
- You will be taken to the Create OAuth client ID screen and be prompted to select an Application type
- You will not be taken to this screen.
For your reference, the screen looks something like this:
If you land here, please skip to Step 12 to continue.
If you do not, please select Credentials from the left-side gray menu:
Near the top of the page, click the CREATE CREDENTIAL button next to the Credentials page title:
A dropdown will open where you’ll want to select OAuth client ID. Now you can proceed to Step 12 and continue.
12. OAuth Application
Select Web application as the application type and enter a name. Under Restrictions, look for Authorized redirect URLs and enter
https://auth.simplyscheduleappointments.com. Click Create. (You may need to click Create twice)
13. Get your Client ID and Client Secret
After completing the steps above, you should see a box with your client ID and client secret.
Copy your client ID and client secret to Simply Schedule Appointments and click Save and Authorize. Google will ask permission for Simply Schedule Appointments to access your calendar. Follow the prompts and you’ll be taken back to Simply Schedule Appointments with Google Calendar connected. You’re done. Hooray!
My app isn’t approved
Because the calendar/auth scope is now sensitive, Google will put your app in review, but it can still be connected to SSA. You will see warnings throughout the Google interface that your app is held for approval while you’re working through the steps above.
After you finish Step 13 and click Save an Authorize, Google will ask you to log into your Google account to verify that you want to give Simply Schedule Appointments access to read and write calendar events. You may see a screen during this process that looks like you cannot proceed – a gray screen with a caution icon that alerts you that the app is not approved. Click the link at the lower left, and more information will open, including a link you can click to proceed anyway with the unapproved app.
We have no control over Google’s app review process. We’ve had several customers report it taking several days, but we haven’t had anyone report it taking longer.
Help! I closed the box with the Client ID and Secret without copying them.
No worries – you can head back to the Credentials page. You should see a section on the page titled OAuth 2.0 client IDs. Just click on the client you set up there, either by clicking the Name or by clicking the edit pencil on the right.
You’ll see your Client ID and Client secret right at the top to copy.
If you don’t see your client, double check the project on the toolbar to make sure you have the correct one.