Note: Due to recent changes in Google's data access policy, these features are currently unavailable. We are currently working to regain access to these scopes but we cannot provide a timeline or guarantee that they will be reinstated.
This article is aimed at Administrators and Power users. This guide provides an overview of the administration configuration and requirements for those using CRM.me's G Suite Integration.
Enable the G Suite Integration
In order to enable the G Suite sync you need to enable API access to your G Suite account. Here we will provide precise guide how to do that.
- G Suite for Business account
G Suite Sync Administrator Setup
In the CRM.me administration area (Administration -> Plugins -> G Suite) you will need to configure the following fields:
- Simple API access - You will generate an API Key in the Credentials section of your Google Console project. See below.
- Client ID for web applications - You will get this one when creating an OAuth 2.0 Client ID. See below.
- Client secret for web applications - You will get this one too when creating an OAuth 2.0 Client ID. See below.
- Redirect URI for web applications - Put this url https://yourdomain.crm.me/crm/app/index.php/googleApps/default/googleConnect where you replace 'yourdomain' with your actual crm.me subdomain.
- G Suite batch size - This is 50 by default, currently you can't change it.
- Default Contact status value - This global setting will determine the default status of all new contacts synced to CRM.me from Google.
- Default Contact source value - This global setting will determine the default source of all new contacts synced to CRM.me from Google.
We're going to explain in details how to get the three missing fields. Let's begin by creating a Project in your Google Cloud Console!
Browse to this url https://console.cloud.google.com
Depending on if you have created a project already for other purposes, the Google Could Platform page will show the "Project name" or the "No organization" label:
Click the arrow next to "No organization" / "Project name" and you will get a pop up for Project creation. Click New Project:
At this point it is important that you select your Organization (under your managed domain)! Project created under "No Organization" won't work! Name the Project and click Create.
Once your project created, you need to go to its APIs Overview. Make sure that the created project is selected.
Now we can begin, this is the MAIN PAGE for configuration:
First, we will enable the two APIs that are required for syncing.
- Contacts API
- Google Calendar API
To access API library's page, click either on "Library" in the left side bar or the button "Enable APIs and Services".
Now Search for Contacts API and enable it:
Search for Google Calendar API and enable it:
Next we will configure the Consent Screen. Make sure you're on the Project's APIs Overview page:
In the left side bar, click OAuth consent screen. Select Internal and click Create.
Then simply provide a Name for your App.
These steps were preliminary steps which allow us to go further and create actual G Suite Credentials.
In the left side bar, click "Credentials". Then click Create Credentials -> API Key
The API Key will be generated. Then you need to restrict it, to be used only from CRM.me server. Click Restrict key
Restrict it by IP Address: 188.8.131.52 (CRM.me's server IP Address)
Then you're going to create Client ID. Create Credentials -> OAuth client ID
Select Web application.
For Authorized redirect URIs, add the following url: https://yourdomain.crm.me/crm/app/index.php/googleApps/default/googleConnect
Of course replace "yourdomain" with your actual crm.me subdomain. Click Create.
You're done! You have the three missing values that you need to provide on the G Suite CRM.me configuration page! Congratulations!