Configure a service account in Google Workspace for the Zivver chrome extension

Introduction

A Google Workspace Service Account is required to work with the Zivver Chrome Extension. The service account key is stored encrypted in the Zivver organisation settings, to protect it against unauthorized access.

Requirements

Configure a service account

Create a project

  1. Go to the Google Cloud Platform Console.
  2. Click CREATE PROJECT in the top right corner.

    If you are already in an existing project, you can create a new project by clicking the dropdown menu in the top left corner next to Google Cloud Platform.
  3. Give the project a name.
    For example Zivver.

  4. Click CREATE.
    You have created a project. You should get redirected to the project dashboard.

Enable Gmail API for the project

  1. Go to the Zivver project dashboard.
  2. Click APIs & Services.
  3. Select Library from the left side pane.
  4. Enter gmail api in the search bar.
  5. Select Gmail API from the list.
    You are redirected to the Gmail API landing page.
  6. Click ENABLE. You have now enabled the Gmail API for your project.

Create the service account

  1. Go back to the Zivver project dashboard by clicking APIs & Services Gmail API in the top left corner.
  2. Select Credentials from the left side pane.
  3. Click add CREATE CREDENTIALS.
  4. Select Service account.
  5. Fill in a name.
    For example Zivver service account.
  6. Click CREATE.
  7. Skip “step 2: Grant this service account access to project (optional)” by clicking CONTINUE.
  8. Skip “step 3: Grant users access to this service account (optional)” by clicking DONE.
    You should now see the service account under Service Accounts.
  9. Click the service account.
    This opens the service account details page.
  10. Go to tab Keys.
  11. Click ADD KEY.
  12. Select Create new key.
    A popup shows up to select the key type.
  13. Select JSON.
  14. Click CREATE.
    You will be prompted to save the private key in a .json file. Save the file, you will need it in the next section.
  15. Still at the service account details page, click Advanced Settings.
  16. Copy the Client ID under OAuth 2.0 Client IDs.
    You will need the Client ID in the next section.

Set API permissions for the service account

  1. Go to the Google Admin Console.
  2. Click on the Security tile.
  3. Click API controls at the bottom of the page.
  4. Click MANAGE DOMAIN WIDE DELEGATION.
  5. Click Add new.
  6. At Client ID fill in the client ID that you have copied at when creating a service account.
  7. At OAuth scopes (comma-delimited) fill in https://www.googleapis.com/auth/gmail.insert.
  8. Click AUTHORIZE.
    You have now set API permissions for the service account.
If an error occurs the client ID might be wrong, there is a duplicate service account or the scope is unsupported.

Set up the service account key in Zivver

  1. Go to the External Services page.
    Use the link above because the external services page is hidden in the left side pane from the admin panel.
  2. Open the .json file from the service account section in Notepad.
  3. Paste the entire content of the file in the text box at G-Suite Service Account Key.
  4. Click SAVE. You have now set up the service account key in Zivver.

  5. Under Google Workspace Service Account Key, insert the content of the JSON file you generated in step 3.8.

  6. Click Save.

  7. If the card for Users without access is shown on the page, click Grant Access so all users can be authenticated with the Service Account key.

Grant access to the chrome extension

Every user created in different way than by the Zivver SyncTool will need to be granted access to the chrome extension on the External Services page. Users that have not been granted access will see the following message in the Zivver pane in Gmail:

Zivver is not set up correctly, please contact your admin

  1. Go to the External Services page.
  2. Click GRANT ACCESS under Users without access.
    Users should be able to use the Zivver chrome extension after a page refresh.

Was this article helpful?

thumb_up thumb_down