Skip to content

Google Integration

The Google Integration module links AutoCRM with Google Calendar, Google Contacts, and Gmail. It provides two-way event sync, controlled contacts sync, and OAuth2-based access to mailboxes without storing passwords inside CRM.


Module Overview

flowchart LR
    CRM["AutoCRM<br/>Meetings/Calls<br/>Contacts/Leads"] <--> GCal["Google Calendar"]
    CRM <--> GCon["Google Contacts"]
    CRM --> GGmail["Gmail IMAP/SMTP<br/>OAuth2"]

    classDef crm fill:#f7f7f7,stroke:#111;
    classDef g fill:#fff,stroke:#4285F4;
    class CRM crm;
    class GCal,GCon,GGmail g;

When to use

  • you need business calendars and contacts available in Google/mobile apps,
  • you want Gmail connectivity without "less secure apps",
  • you need auditable and manageable data flows between CRM and the Google ecosystem.

Key capabilities

  • Calendar: two-way sync of meetings/calls (direction control, calendar selection, duplicate control via googleCalendarEventId).
  • Contacts: sync of a selected Google group; manual push from record or mass action.
  • Gmail: OAuth2 IMAP/SMTP with a dedicated panel on email account details.

Core objects

Entity Description API
External Google account OAuth tokens and per-user settings for calendar, contacts, Gmail. ExternalAccount
Google calendar Local catalog of Google calendars and their IDs. GoogleCalendar
Calendar assignment Type (main/monitored), role, and sync tokens per user. GoogleCalendarUser
Google contact pairing Link between a CRM Contact/Lead and the Google card (resourceName, etag). GoogleContactsPair

Sync flows

flowchart TD
    A["User connects account (OAuth2)"] --> B["External Google account"]
    B --> C["Job \"SynchronizeEventsWithGoogleCalendar\"<br/>*/10 min"]
    C <--> D["Meetings / Calls"]
    C <--> E["Google Calendar"]
    B --> F["Push to Google contacts"]
    F <--> G["Google People API"]
  1. The user connects the account in External Accounts → Google.
  2. The scheduled job syncs meetings/calls every 10 minutes based on direction and calendar choices.
  3. Contacts/Leads can be pushed to Google manually ("Push to Google") into the chosen group.
  4. Gmail uses OAuth2 for IMAP/SMTP; the panel appears only for Gmail hosts.

Quick start

  1. Admin: create an OAuth client in Google Cloud Console and enter clientId/clientSecret under Admin → Integrations → Google.
  2. Admin: verify the SynchronizeEventsWithGoogleCalendar job is scheduled (*/10 min).
  3. User: connect the account via External Accounts → Google, enable products (Calendar/Contacts/Gmail), and pick the main calendar/group.
  4. Check: create a meeting in CRM and confirm it appears in Google Calendar; optionally trigger a manual contact push.

More sections

  • Usage – connecting the account and configuring sync.
  • Administration – Google Cloud app registration and global settings.
  • Reference – data model, fields, jobs, and panel visibility rules.