Data Connectors

Data connectors keep an AI Employee's Knowledge base current by syncing documents from external sources — SharePoint sites, Google Drive folders, Confluence spaces, and Box folders. Where Tools let an AI Employee act in external systems, connectors let it know about your content: every synced document is extracted, chunked, embedded, and made searchable so the AI Employee can cite it in its answers.

Connectors are different from Tools. A Tool call is a fast, real-time request. A connector sync is a long-running background job — listing files, downloading content, extracting text, embedding — that runs durably with automatic retries and incremental updates. You manage connectors from the Data sources tab of the Integrations page, and credentials are admin-only.

The connection model

Three concepts work together:

  • Connection — holds the credentials and configuration for one external source (admin-only). One connection can feed multiple Knowledge bases scoped to different paths.
  • Knowledge base (KB) — a searchable collection linked to a connection (and a sync schedule). KBs are scoped to a specific AI Employee.
  • Sync — the job that pulls documents from the source into the KB. Syncs run on a schedule or can be triggered manually.

Roles. Creating connections and Knowledge bases is admin-only — builders never see credentials. Builders select from available KBs when configuring a workflow and can narrow results with a folder filter at search time.

Supported connectors

The Data sources tab shows a tile for each source. Local file upload is shown for reference but is handled in the AI Employee's Knowledge bases tab, not here. The external connectors are:

ConnectorAuthWhat you connect atSetup guide
SharePointApp Credentials or App Certificate (Azure AD app); or Sign in with Microsoft (delegated OAuth2)SharePoint sites, libraries, or foldersSharePoint Connector
Google DriveService account, or OAuth2 user consentA Drive folderGoogle Drive Connector
ConfluenceOAuth2 (Atlassian authorization code), or Basic auth (email + API token)A Confluence space or pagesConfluence Connector
BoxOAuth2 (authorization code)A Box folderBox Connector

Each connector connects at the collection level — a site, folder, or space — not the whole instance or tenant. When you connect a collection, Ema ingests its content, including nested folders and attachments, within that scope. A connection on its own syncs nothing — each Knowledge base built from it must name an explicit scope (a folder, site, space, or set of URLs) before its first sync runs, so Ema never crawls an entire source by accident.

Choosing what syncs. For Google Drive and Confluence, a visual picker ("Choose files & folders to sync") lets you check the exact files and folders to ingest — checking a folder ingests everything inside it. SharePoint and Box are scoped by pasting URLs.

How documents flow in

Every connector feeds the same pipeline, so mixing sources never requires re-indexing:

  1. List — the connector enumerates the files in scope.
  2. Download — it fetches each file's content.
  3. Extract — text is extracted from PDFs, Office documents (.docx, .xlsx, .pptx), HTML, and images (via a vision model).
  4. Chunk and embed — text is split and embedded into vectors.
  5. Store — the processed content is indexed and becomes searchable to the AI Employee.

Syncs are incremental: Ema detects changes with the source's ETag, falling back to a content hash, so unchanged files are skipped. Due syncs run automatically on their schedule, and you can also trigger a sync on demand.

Setting up a connector

From the Data sources tab, select a connector tile and complete its setup form. Every connector asks for a name and description; the rest depends on the source. Each connector has a dedicated setup page with the full field list, scopes, sync configuration, and limits — the summaries below link to them.

SharePoint

SharePoint Online offers three authentication modes: App Credentials (an Azure AD app registration with a client secret — the default), App Certificate (the same app proving itself with an uploaded X.509 certificate), and Sign in with Microsoft (delegated OAuth2). The app modes collect your Azure tenant ID, client ID, and either a client secret or a certificate; a connection stores only credentials — you choose sites, libraries, and folders per Knowledge base. Full setup, scopes, and limits: SharePoint Connector.

Google Drive

Google Drive supports two modes — full setup, scopes, and limits: Google Drive Connector.

  • Service account — paste the full service-account JSON; share the folders or Shared Drive with the service account.
  • OAuth2 user consent — sign in and approve access; Ema uses platform OAuth credentials.

Confluence

Confluence Cloud supports the Atlassian OAuth2 authorization-code flow (default when configured) and Basic auth (account email + scoped API token). You scope a sync by Confluence space keys and/or root page IDs. Full setup, scopes, and limits: Confluence Connector.

Box

Box uses the OAuth2 authorization-code flow with platform-level Box app credentials (one Box app serves all tenants). Connecting opens Box's consent screen; each tenant's access and refresh tokens are stored encrypted per connection and refreshed at sync time. Full setup and limits: Box Connector.

OAuth2 connectors validate the connection during setup — the success banner confirms the account that authorized it. API-key and client-credential connectors run a live test call against the source before the connection is stored, so wrong credentials fail immediately rather than at first sync.

Connecting from the OAuth flow

OAuth2 connectors follow a consistent browser flow regardless of source:

  1. You enter a connection name and select Connect.
  2. Ema redirects you to the provider's sign-in and consent screen, carrying a signed state parameter for CSRF protection.
  3. You approve the requested scopes.
  4. The provider redirects back to Ema's callback, which exchanges the one-time code for tokens and stores them encrypted.
  5. The Data sources tab shows a success banner; the new connection appears in the connector's list.

If something goes wrong — an expired state, a token-exchange failure, or a failed test — the tab shows a specific error banner so you can correct it.

Grounding an AI Employee in connected content

Once a connection exists, an admin creates a Knowledge base from it (scoped to an AI Employee) and the documents in scope sync into that KB. A builder then references the KB from the relevant workflow node — for example a search-and-respond agent — and can apply a folder filter to narrow what that node searches. From then on, the AI Employee retrieves and cites the synced content in its answers.

What's next

Last updated: Aug 27, 2026