Informus AI
Informus Flow · Setup guide
Release 0.10

Set up Gmail tracking.

About 15 minutes, once for the whole firm. Steps 1 to 8 are done once by the Google Workspace admin. Step 9 is done by each person who wants their email tracked.

Who Flow tracks
  • Anyone in a client workspace

    Found automatically from the people in each workspace.

  • Evangelists without a workspace

    Found from the calls filed with them, or marked by hand.

  • Anyone you have emailed before

    Exact address only. Newsletters and no-reply senders are skipped.

Email from anyone else is never opened or stored. Nothing is sent until you approve it.

  1. 1

    Sign in to Google Cloud as the Workspace admin

    console.cloud.google.com

    Use your @informus.ai account, not a personal Gmail. The app has to belong to the informus.ai organization so it can be Internal, which means Google does not need to review it.

    Signed in to more than one Google account? Use a Chrome window where only your @informus.ai account is signed in (a separate profile or an incognito window). Otherwise Google Cloud keeps switching back to your personal account and shows “No organization”.

  2. 2

    Create a project

    Project picker (top left) → New project

    • Project name: Informus Flow
    • Organization: informus.ai
    • Create, then make sure the new project is selected in the picker.
  3. 3

    Turn on the Gmail API

    APIs & Services → Library

    Search Gmail API, open it, and click Enable.

  4. 4

    Set up the consent screen as Internal

    APIs & Services → OAuth consent screen (Google Auth Platform) → Get started

    • App name: Informus Flow. User support email: jlee@informus.ai.
    • Audience: Internal. Only people with an @informus.ai account can connect.
    • Contact email: your address. Agree to the policy and click Create.
  5. 5

    Add the two Gmail permissions

    Google Auth Platform → Data Access → Add or remove scopes

    Paste each scope under Manually add scopes, click Add to table, then Update and Save.

    • https://www.googleapis.com/auth/gmail.readonlyRead email from tracked people, and find files you sent before.
    • https://www.googleapis.com/auth/gmail.sendSend the reply you approved, in the same thread, so it lands in your Sent folder.
  6. 6

    Create the sign-in client

    Google Auth Platform → Clients → Create client

    • Application type: Web application. Name: Informus Flow Gmail.
    • Under Authorized redirect URIs, add both, exactly:https://informus-flow.vercel.app/api/integrations/gmail/callbackhttp://localhost:3000/api/integrations/gmail/callback
    • Click Create. Google shows a Client ID and a Client secret.

    Download the JSON or keep the dialog open: newer projects show the secret only once. Paste it straight into Vercel in the next step. Never send it in email, chat, or a document.

  7. 7

    Give Flow the Client ID and secret

    vercel.com → informus-flow → Settings → Environment Variables

    • GOOGLE_GMAIL_CLIENT_ID = the Client ID
    • GOOGLE_GMAIL_CLIENT_SECRET = the Client secret (mark it Sensitive)
    • Environments: Production and Preview. Save.
    • Deployments → the latest Production deployment → Redeploy, so Flow picks them up.

    Running Flow on your Mac too? Add the same two lines to .env.local in the informus-flow folder.

  8. 8

    Start the 5-minute check

    Terminal, in the informus-flow folder

    Flow’s database (Supabase) prompts Flow to check Gmail every 5 minutes. It is built in, so there is nothing to sign up for and no extra cost. Run this once in the informus-flow folder. It reads .env.local:

    pnpm gmail:schedule

    • The last line shows a test result. 200 means it is on.
    • 401 means CRON_SECRET in .env.local differs from Vercel Production. Copy Production’s value into .env.local and run it again.
    • To stop it: pnpm gmail:schedule --off.
  9. 9

    Connect your Gmail in Flow

    informus-flow.vercel.app → Keep Moving → Email

    • Click Connect Gmail, choose jlee@informus.ai, and Allow.
    • Check Who is tracked. Add anyone Flow cannot find on its own: for example bdcontractors.com for Renfrow.
    • Everyone else at Informus repeats only this step, with their own account.
If something goes wrong
  • “No organization” in Google Cloud: you are on your personal account. Switch the avatar (top right) to your @informus.ai account, or see the note in step 1.
  • “redirect_uri_mismatch”: the redirect URI in step 6 differs by a character. Copy it again exactly, including https:// and no trailing slash.
  • “Access blocked: this app is restricted to users within its organization”: you chose a personal Gmail. Sign in with your @informus.ai account.
  • “This app is blocked”: in admin.google.com → Security → Access and data control → API controls, allow internal apps to access Google services.
  • Connected, but no tasks: the first check looks back two days. Confirm the sender is in Who is tracked, and run pnpm gmail:schedule --check to see that the 5-minute check is on.

When a tracked client asks for something, the reply is already drafted in Keep Moving. You look, approve, and it goes.