Skip to content
GitHub

Custom OAuth Apps

Gatelet ships with built-in OAuth credentials that work out of the box but show an “unverified app” warning during sign-in. Registering your own OAuth app removes this warning and gives you full control over the credentials.

  1. Go to the Google Cloud Console — Credentials
  2. Create a project (or select an existing one)
  3. Click Create Credentials → OAuth client ID
  4. Set Application type to Desktop app
  5. Give it a name (e.g. “Gatelet”) and click Create
  6. Copy the Client ID and Client Secret

In the same Google Cloud project, enable the APIs for the providers you plan to use:

  1. Go to APIs & Services → Library
  2. Search for and enable:
    • Google Calendar API — required for the Google Calendar provider
    • Gmail API — required for the Gmail provider

You don’t need to configure scopes — Gatelet requests them automatically during the OAuth flow. For reference, the scopes requested are:

Google Calendar:

  • https://www.googleapis.com/auth/calendar.readonly
  • https://www.googleapis.com/auth/calendar.events

Gmail:

  • https://www.googleapis.com/auth/gmail.readonly
  • https://www.googleapis.com/auth/gmail.compose
  • https://www.googleapis.com/auth/gmail.modify

Microsoft (Outlook Calendar + Outlook Mail)

Section titled “Microsoft (Outlook Calendar + Outlook Mail)”
  1. Go to Azure Portal → App registrations
  2. Click New registration
  3. Set a name (e.g. “Gatelet”)
  4. Under Supported account types, select Accounts in any organizational directory and personal Microsoft accounts
  5. Click Register
  6. Copy the Application (client) ID from the overview page
  1. Go to Authentication in the sidebar
  2. Click Add a platform → Mobile and desktop applications
  3. Add the following redirect URI:
    http://localhost:4001/api/connections/oauth/callback
    If you changed GATELET_ADMIN_PORT, replace 4001 with your custom port. This single URI is shared by all Microsoft providers (Outlook Calendar, Outlook Mail, etc.).
  4. Under Advanced settings, set Allow public client flows to Yes
  5. Click Save
  1. Go to API permissions in the sidebar

  2. Click Add a permission → Microsoft Graph → Delegated permissions

  3. Add permissions for the providers you plan to use:

    Outlook Calendar:

    • Calendars.ReadWrite

    Outlook Mail:

    • Mail.ReadWrite
    • Mail.Send

    Both providers also need:

    • User.Read
    • offline_access
  4. Click Add permissions

Once you have your credentials, configure them in Gatelet using either method:

Dashboard (recommended): Go to Settings → Integrations and enter your Client ID and Client Secret.

Environment variables:

VariableProvider
GOOGLE_CLIENT_IDGoogle (Calendar + Gmail)
GOOGLE_CLIENT_SECRETGoogle (Calendar + Gmail)
MICROSOFT_CLIENT_IDMicrosoft (Outlook Calendar + Mail)
MICROSOFT_CLIENT_SECRETMicrosoft (Outlook Calendar + Mail) — optional

Dashboard-configured credentials take precedence over environment variables.

After updating credentials, you’ll need to re-create existing connections (disconnect and reconnect) since their refresh tokens are tied to the original OAuth client.