This guide shows the steps needed to set up an Integration project with Google APIs in Claromentis.
Requirements:
- On-premise (self-hosted) system
- With a custom domain (not *.myintranet.com)
- Uses a valid SSL certificate (https://)
- The site is accessible from outside your network/firewall
- Your team creates an account with Google and sets up a payment method for billing
Purpose:
Document Application
Enables the ability to Add Google Drive documents in the Intranet:

Events Application
Allows locations to be added to Events via Google Maps:

Step 1
Create an account and log in to the Google Developer Console:
https://console.developers.google.com/
On-premise clients should register an API key using their own Google credentials.
Step 2
Create a Project for your Intranet, e.g.

Step 3
Enable APIs and Services.
From 'Dashboard', click on 'Enable APIs and Services'.
Here is the list of APIs that need to be enabled:
1. Google Drive API - for accessing and getting file information such as title from Google Drive
2. Google Picker API - for enabling the 'Browse Google Drive' button in the documents application
3. Maps Embed API - for having Google embedded in the Event application and CK Editor
4. Maps Static API - required API to have map integration on Event and CK Editor
5. Geocoding API - required to read locations in the Events application
6. Maps JavaScript API - required to have predictive location search in the Events application
7. Places API - required to read Google Places data in the Events application
Step 4
Set-up Google Map API
- Click on the 'Credentials' menu on the left, click 'Create credentials' and select 'API key':
- An API key will be generated; rename it to
[System Name]Google Map API, e.g. 'MyWorkplace Google Map API', for ease of identification later.
- In Claromentis navigate to
Admin > System Panel > API keys
- Click on 'Add new integration' and enter the following:
API name: google_maps API description: Google Maps API key API help: Displaying Google Maps and Google Places predictive input for the weather component and event app. Entry Key: api_key Entry Value: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (This is the API key obtained from Google earlier)
Step 5
For the Google Document picker, you are going to need both an API key and OAuth Client ID
- Click on the 'Credentials' menu on the left to create credentials, click 'Create credentials' and select 'API key'
- An API key will be generated; rename it to
[System Name]Google Picker API,e.g. 'MyWorkplace Google Picker API' for ease of identification later.
- Click on the 'Credentials' menu on the left to create credentials, click 'Create credentials' and select 'OAuth Client ID':
- Fill out the details as below:
Application type: Web application
Authorised JavaScript Origins: Your intranet URL (eg. https://workplace.myintranet.com)
Authorised redirect URIs: Your intranet URL followed by /intranet/panels/docsadmin_google.php
(eg. https://workplace.myintranet.com/intranet/panels/docsadmin_google.php)

- Upon submission, you may get a warning about limited scope login. Please remember to set up Google Domain Verification after this stage; the guide is here.
- Take note of your Client ID

- Next, configure the Consent Screen and fill out its details:
Email address: The same email to access the developer console
Product Logo URL: https://[yourintranetaddress]/images/favicons/icon-150.png
Privacy policy URL: link to client's privacy policy

- In Claromentis navigate to
Admin > System > API keys
API Name: google_picker API Description: Google Picker key and OAuth details API help: Allowing users to pick a document from Google Docs developer_key: copy value from Google Picker API client_id: is the client ID from OAuth Client IDs app_id: Can be ignored
Step 6
Set up Google OAuth.
- This Integration allows gathering additional information about a document when adding from Google Docs
- Copy & Paste Client ID and Client secret from Google Console into Google OAuth for Documents
API Name: docs_google_auth API Description: Google OAuth for Documents API help: Allows gathering additional information about a document when adding from Google Docs client_id: is the client ID from OAuth Client IDs client_secret: enter client secret from OAuth Client ID
Step 7
Test and verify all the APIs are working correctly.
- Document Admin
Test Google Document Indexing
Navigate to Admin > Documents > Google Authentication
Check API status
- Adding Google Documents
Add a file from Google Drive using the corresponding feature.
(You will be prompted to authorise access to your Google Drive)
- Events application
Create an event and check a location can be added using Google Maps.
Troubleshooting
Events application
'This page can't load Google Maps correctly'

This error is caused by misconfiguration in the Google Maps API or not waiting long enough after creating the API key before testing
Solution:
1. Check Google Maps API Key in Admin / System / API keys / google_maps has been entered correctly
2. Wait for a longer period before testing the key (if it was created as new). Usually 15 - 20 minutes is enough
3. Check if the API key for Events is configured correctly by making a direct call to it using the below:
https://maps.googleapis.com/maps/api/geocode/json?address=brighton,uk&key=<your_unique_api_key_here
Documents application
When trying to add files from Google Drive, 'Error: redirect_uri_mismatch' is encountered:
This error is caused by incorrect 'Authorised Javascript Origins' and 'Authorised redirect URLs' specified in Step 5
Solution:
Ensure your Google API console has been filled out as per the instructions in Step 5





