Authorization
1
Create Google Cloud Project
2
Enable Gmail API
- On the left panel, open APIs & services
- Go to Enabled APIs and services
- On the top click +ENABLE APIS AND SERVICES
- Search for Gmail API and click ENABLE
- Alternatively visit this link, select your project and enable the Gmail API
3
Set up OAuth consent screen
- Under APIs & services, select the OAuth consent screen tab
- If you don’t have a Google Organization select External for User Type
- Call the app Onyx (or whatever you want)
- For the required emails, use any email of your choice or
founders@onyx.appif you wish for the Onyx team to help handle issues. - Click SAVE AND CONTINUE
4
Set up scopes
- Add the scope
.../auth/gmail.readonlyforGmail API
To enable permission syncing for this connector:
- Enable the Admin SDK API (visit this link: https://console.cloud.google.com/flows/enableapi?apiid=admin.googleapis.com) and enable it for your project.
- Add the scope
.../auth/admin.directory.user.readonlyforAdmin SDK API. - Add the scope
.../auth/admin.directory.group.readonlyforAdmin SDK API. - The account performing the OAuth flow must have an Admin role in the Google Workspace that has access to the “Groups > Read” privilege. This can be set in the Google Admin Console under Account > Admin roles.
- Note: Service Account support for Gmail is in development and will be available soon.

5
Set up test users
- This is only applicable for users without a Google Organization.
- Add at least one test user email. Only the email accounts added here will be allowed to run the OAuth flow to index new emails.
- Click SAVE AND CONTINUE, review the changes and click BACK TO DASHBOARD
6
Create OAuth credentials
- Go to the Credentials tab and select + CREATE CREDENTIALS -> OAuth client ID

- Choose Web application and give it some name like
OnyxConnector - Add an Authorized JavaScript origins
http://localhost:3000if self-hostinghttps://<INTERNAL_DEPLOYMENT_URL>if you have setup Onyx for production usehttps://cloud.onyx.appif you are using the Onyx Cloud service- Add an Authorized redirect URIs
http://localhost:3000/admin/connectors/gmail/auth/callbackif self-hostinghttps://<INTERNAL_DEPLOYMENT_URL>/admin/connectors/gmail/auth/callbackif you have setup Onyx for production usehttps://cloud.onyx.app/admin/connectors/gmail/auth/callbackif you are using the Onyx Cloud service

- Click create and on the right hand side next to Client secret, there is an option to download the credentials as a JSON. Download the JSON for use in the next step.
