Connect Gmail

Gmail uses OAuth through a small app you register in your own Google Cloud project (see BYOC, explained for why). This takes about five minutes, once.

1. Create a Google Cloud project

  1. Go to Google Cloud Console and sign in with the Google account you want to send from (or any account — the project owner doesn't have to be the sending inbox)
  2. Click the project dropdown at the top → New Project
  3. Give it any name (e.g. "SubsiMail") and create it
Google Cloud Console New Project dialog
Creating a new Google Cloud project

2. Configure the OAuth consent screen

  1. In the left sidebar: APIs & Services → OAuth consent screen
  2. Choose External user type, fill in the required app name/support email fields
  3. Leave publishing status as Testing — do not click "Publish App"
  4. Under Test users, add the Gmail address you're going to connect

Staying in Testing mode is deliberate, not a shortcut. Google's strict app-review process (CASA) only applies to Published apps. A Testing-mode app with test users added works indefinitely for those users without ever needing review — exactly the BYOC model this is built around.

OAuth consent screen configuration with Testing publish status
OAuth consent screen set to Testing, with your Gmail address added as a test user

3. Create OAuth credentials

  1. APIs & Services → Credentials → Create Credentials → OAuth client ID
  2. Application type: Web application
  3. Under Authorized redirect URIs, add:
    https://your-domain.com/oauth/google/callback
    (use your actual SubsiMail domain, matching what's in your license)
  4. Create it, then copy the Client ID and Client secret shown
OAuth client ID created, showing Client ID and Client secret
Client ID and secret after creating the OAuth client

4. Enable the Gmail API

  1. APIs & Services → Library, search for Gmail API, and click Enable

Skipping this step is the single most common way this breaks. If you connect successfully but sending fails with accessNotConfigured or SERVICE_DISABLED, this is the fix — see Gmail OAuth errors.

5. Connect in SubsiMail

  1. In SubsiMail, go to Accounts
  2. Under Google / Gmail, paste your Client ID and Client Secret and save
  3. Click Connect Gmail account — you'll be sent to Google's consent screen, then back to SubsiMail once approved
SubsiMail Accounts page Gmail configuration form
Pasting the Client ID/Secret on the Accounts page

SubsiMail requests three scopes: reading your email address (to identify the inbox), sending mail, and read-only inbox access (used only for stop-on-reply detection).