Connectors keep your knowledge bases up to date by automatically pulling documents from external sources on a schedule. Once a connector is set up, new and updated content flows into your KB without any manual re-uploading. Each connector uses incremental sync where possible, fetching only changed documents to minimize API usage.

Supported sources

You can connect any of the following sources to a knowledge base:
SourceNotes
Web crawlerCrawls public web pages; no auth required
Amazon S3Any S3-compatible storage endpoint
ConfluenceAtlassian Cloud and Server
Google DriveFolder-level sync
SlackBot must be invited to channels
NotionVia Notion integration API
SharePointMicrosoft Graph API
GmailOne document per email thread
JiraJira Cloud issues
LinearIssues via GraphQL
GitHubIssues and optionally pull requests
GitLabIssues and optionally merge requests
ZendeskSupport tickets
Microsoft TeamsVia Graph API
DiscordMessages via REST API
SalesforceCRM records
HubSpotHubSpot CRM
DropboxFiles via Dropbox API
AsanaTasks and projects
ClickUpTasks
BookStackPages via REST API
OutlineDocuments via REST API
Generic RESTAny custom REST API you configure

Adding a connector

1

Open your knowledge base

Navigate to Knowledge Bases, select the KB you want to sync, and open the Connectors tab.
2

Add a connector

Click Add Connector and choose the source type from the list.
3

Authenticate

Depending on the source, you’ll either:
  • Complete an OAuth flow (Confluence, Google Drive, SharePoint, etc.)
  • Paste an API key or token (Notion, GitHub, Jira, etc.)
  • Enter a base URL (SearXNG, generic REST)
Credentials are encrypted at rest with AES-256-GCM and stored separately from the connector configuration.
4

Configure and save

Set any source-specific options (e.g. which Confluence spaces to sync, which GitHub repos to include) and save. ManyLayers runs an initial sync immediately, then keeps the KB up to date on the configured schedule.

Triggering a manual sync

If you want to pull in changes right away without waiting for the next scheduled sync, open the connector’s detail view and click Sync Now.

Viewing sync history

Each connector shows a log of past sync runs — when they ran, how many documents were added or updated, and any errors encountered. Open the connector and go to the Sync History tab.

Generic REST connector

Use the generic REST connector to sync content from any REST API that isn’t in the supported list. Configure it in the connector settings:
type: generic_rest
config:
  base_url: "https://api.example.com/v1/articles"
  auth_type: bearer          # bearer, basic, or header
  auth_token: "..."
  pagination: cursor
  cursor_path: "$.meta.next_cursor"
  items_path: "$.data"
  content_path: "$.body"
  title_path: "$.title"
  since_param: updated_since  # enables incremental sync

External group sync

Connectors that integrate with an identity provider — Confluence, SharePoint, Slack, and Google Drive — can also sync group memberships. Enable this in the connector’s settings by turning on Sync Groups. Groups sync every 30 minutes and become available as extgroup: principals for document ACLs, so document access follows your existing IdP groups automatically.
The connectors.encryption_key must be set in gateway.yaml for credential storage to work. Without it, only credential-free connectors (like the web crawler) are available. Admins can also pause and resume any connector’s sync schedule from Admin → Connectors without deleting the connector.