Connect Google

Link your Gmail and Google Calendar to SwarmMarshal

SwarmMarshal uses Google's official APIs to read your mail and calendar. Because Google restricts which apps can request those permissions, the cleanest path today is to create a small Google Cloud project of your own and paste the credentials into SwarmMarshal. It takes about ten minutes and only needs to be done once per Google account.

Why this extra step

Your data, your project, your keys

Google requires a paid annual security audit before an app can ship Gmail or Calendar access to the general public. SwarmMarshal is a local desktop app with no central server, so instead of gating the feature behind that process we let you create a personal Google Cloud project. Your OAuth tokens never leave your computer, Google only ever sees your own project talking to your own mailbox, and SwarmMarshal has no involvement in the transfer.

Step 1

Create a Google Cloud project

Google Cloud New Project form with a project name field and a Create button
Google Cloud · New Project

Sign in at console.cloud.google.com with the Google account you want to connect. In the project picker at the top, click New Project, name it something you'll recognize (for example SwarmMarshal Personal), and click Create. When the notification bell tells you it's ready, switch the project picker to the new project.

Step 2

Enable the Gmail and Calendar APIs

Gmail API library page with a blue Enable button
API Library · Enable

Open APIs & Services → Library, search for Gmail API, and click Enable. Repeat the search for Google Calendar API and enable that one too. These are the two APIs SwarmMarshal talks to — you don't need anything else.

Step 3

Configure the OAuth consent screen

Google Auth Platform overview with the Get started button and setup wizard
Google Auth Platform · Get started

Go to Google Auth Platform → Overview. If the page says Google Auth Platform not configured yet, click Get started. Fill in an app name (SwarmMarshal Personal is fine), choose your email as the user support email, choose External for the audience, then enter your email again as the developer contact. Accept Google's policy checkbox if shown, and finish the wizard. The publishing status lives on a different page; we'll switch that next.

Step 3b

Publish the app for durable tokens

Audience page showing publishing status and test user controls
Audience · Publishing status

Open Google Auth Platform → Audience. Make sure the project picker at the top shows your SwarmMarshal project. Find Publishing status. If it says Testing, click Publish app. Google will open a Push to production? dialog; click Confirm. The publishing status should then become In production. This does not mean you need to complete Google's public verification process for a personal app; it just removes the testing-mode refresh-token limit. Google may still show the unverified-app warning during sign-in, which is expected for your own private project.

Do not leave the app in Testing for normal use. For Gmail, Calendar, and Contacts scopes, Google expires refresh tokens from external testing apps after seven days, so SwarmMarshal would have to ask you to reconnect every week.

Step 4

Create the OAuth client ID

Create OAuth client ID form with Desktop app selected
Credentials · Create OAuth client
OAuth client created dialog showing the Client ID and Client secret
Copy both values before closing

Open APIs & Services → Credentials, click Create Credentials, and choose OAuth client ID. For Application type pick Desktop app and give it any name. Google will show you a Client ID and Client secret — keep that dialog open, you'll paste both into SwarmMarshal in the next step.

Step 5

Paste the credentials into SwarmMarshal

Google hasn't verified this app warning with an Advanced link
Expected warning · click Advanced
Sign-in permissions screen listing Gmail, Calendar, and Contacts access
Permissions · keep all boxes checked

In SwarmMarshal open Settings → Accounts & Channels → Google. Paste the Client ID and Client secret from the Google Cloud dialog, then click Connect Google account. Your browser will open Google's sign-in page — because your project is private and unverified, you'll see a Google hasn't verified this app warning. Click Advanced, then click Go to SwarmMarshal Personal (unsafe).

Google then shows a profile review screen for your name and email. Click Continue. On the access screen, check Select all so the Gmail, Contacts, and Calendar permissions are all selected, then click Continue again. Google will redirect back to SwarmMarshal and show the success page.

Step 6

You're done

SwarmMarshal will pull your inbox and calendar on the normal sync schedule. You can revoke access at any time from your Google account permissions page or by deleting the OAuth client from your Cloud project. Removing the credentials from SwarmMarshal's settings screen also clears every token stored on this machine.

Troubleshooting

The warning screen has no "Advanced" link. Your consent screen is set to Internal — switch it to External in Step 3, or make sure you're signed in with the same Google account you added as a test user.

"Access blocked: SwarmMarshal has not completed the Google verification process". First make sure the OAuth app is In production on the Audience page. If you intentionally keep it in Testing, add your Google address to the Test users list, but expect the refresh token to expire after seven days.

SwarmMarshal asks me to reconnect every week. Your OAuth app is almost certainly still in Testing. Open Google Auth Platform → Audience for the project and publish it to production, then reconnect the account once in SwarmMarshal.

The connection works but nothing syncs. Double-check that both the Gmail API and the Google Calendar API are enabled under your project (Step 2). Enabling them is per-project, not per-account.

Security notes

The Client ID and Client secret identify your project to Google. They're not a password to your mailbox — on their own they can't read any of your data. SwarmMarshal still encrypts them at rest along with the refresh token Google issues after sign-in.

Because the project is yours, only Google accounts you explicitly add as test users can sign in to it while it is in Testing. Once you publish the personal project to production, Google may allow up to 100 unverified users through the warning screen; for SwarmMarshal's normal personal-use path, that should just be you or the few Google accounts you own.