Skip to main content
Connect external platforms to automatically sync documents into supermemory. Supported connectors include Google Drive, Gmail, Notion, OneDrive, GitHub, Granola and Web Crawler with real-time synchronization and intelligent content processing. New v5 connectors belong to one namespace. The namespace goes in the URL (/ns/{namespace}/connectors) and is the first argument of namespace-scoped SDK calls. Organization-wide listing uses connectors.listAll() in TypeScript or connectors.list_all() in Python without a namespace argument. Legacy connectors can span multiple namespaces or have no namespace.

Supported connectors

Google Drive

Google Docs, Slides, SheetsReal-time sync via webhooks. Supports shared drives, nested folders, and collaborative documents.

Gmail

Email ThreadsReal-time sync via Pub/Sub webhooks. Syncs threads with full conversation history and metadata.

Notion

Pages, Databases, BlocksInstant sync of workspace content. Handles rich formatting, embeds, and database properties.

OneDrive

Word, Excel, PowerPointReal-time updates via webhooks. Supports personal and business accounts with file versioning.

GitHub

GitHub RepositoriesReal-time incremental sync via webhooks. Supports documentation files in repositories.

Granola

Meeting notes and transcriptsSyncs AI meeting notes, summaries, attendees, and transcripts from your Granola workspace.

Web Crawler

Web Pages, DocumentationCrawl websites automatically with robots.txt compliance. Scheduled recrawling keeps content up to date.

Quick start

1. Create a Connector

2. Handle OAuth callback

Send the user to authorization.url before authorization.expiresAt. When the user authorizes, the provider returns them to your redirectUrl and the first sync starts. GitHub and Gmail, and Google Drive and OneDrive with the default syncScope: "selected", first send the user through Supermemory’s hosted picker to choose what to sync. A pending OAuth connector is not returned by list until the user finishes authorization; get returns it with system.status: "pending_authorization". Config providers (Web Crawler, S3, Granola) return authorization: null and start syncing immediately.

3. Monitor sync status

How connectors work

Authentication flow

  1. Create Connector: Call POST /ns/{namespace}/connectors with a provider. OAuth providers return an authorization link; config providers (Web Crawler, S3, Granola) take a config object and return authorization: null
  2. User Authorization: Send the user to authorization.url when the provider requires it
  3. Automatic Setup: The connector is established. Save any required label, repository, or file selection before content sync can proceed; providers without a selection step start their initial sync after setup
  4. Continuous Sync: Real-time updates via webhooks (or scheduled recrawling for Web Crawler), plus manual sync on demand

Document processing pipeline

Sync mechanisms

Connector Management

List Connectors

Trigger a Sync

A connector syncs on its own schedule. Start one now with connectors.sync. The call returns 409 while a sync for that connector is already running.

Update a Connector

Change the document limit, or the selection for providers that support one, with connectors.update. A new selection replaces the old one. See Managing Connector Selection.

Delete Connectors

DELETE /ns/{namespace}/connectors/{id} accepts an optional deleteDocuments query parameter:
Setting deleteDocuments=false is useful when you want to disconnect an integration without losing the memories that were already imported.
There is no delete-by-provider route in v5. Find the connector with connectors.list(namespace) and delete it by id.

Custom OAuth applications

By default, Supermemory uses its own OAuth applications to connect to third-party providers. You can use your own OAuth app credentials for tighter control over data access, which is useful for enterprise customers. Custom OAuth credentials are an organization setting and are not part of the v5 connector routes.
  1. Create the OAuth application on the provider’s developer console:
  2. For Google Drive specifically: choose application type Web application, and enable the Google Drive API under “APIs and Services” in the Cloud Console. Google also requires verification/approval before custom keys work in production.
  3. Set the redirect URL to https://api.supermemory.ai/v3/connections/auth/callback/{provider} (for example, .../auth/callback/google-drive).
Enabling custom keys for a provider applies to all new connectors for that provider. Existing connectors will need to be re-authorized.