Skip to main content
connic

Notion

By connic
Auto-sync

Sync Notion pages and databases for agent retrieval

Publisher
By connic
Syncs
Pages, Databases, Subpages
Set up in
Retrieval → Sources
Documentation
Retrieval Docs

How the Notion source works

Most teams document how their business runs in Notion: product specs, support runbooks, onboarding guides, decision logs. The Notion source keeps that content flowing into connic retrieval automatically, so agents answer from the same pages their teams maintain.

Connect a Notion internal integration, choose which pages and databases are in scope, and pick a sync schedule. connic pulls the content, splits it into chunks, embeds it for semantic search, and files it under the configured namespace. When a page changes in Notion, the next sync updates its chunks. Deletion behavior is configurable as well.

What gets synced

Pages
Full page content including nested blocks, converted to clean text before chunking.
Databases
Each row becomes its own retrieval entry with the database properties preserved.
Subpages
Child pages follow their parents automatically when subpage sync is enabled.
NotionActiveWorkspace app
Configuration
Content scope
What to syncEverything shared with the integration
Include subpagesYes
Include databasesYes
Sync behavior
Target namespacesources.notion
Sync intervalDaily
When content is deleted at the sourceRemove it from the retrieval
Recent syncsSync now
  • Completed13 Oct, 09:00
    4 new · 11 updated · 1 removed
  • CompletedManual12 Oct, 21:00
    0 new · 2 updated · 0 removed
  • Completed12 Oct, 09:00
    0 new · 6 updated · 0 removed

Set up the Notion source

Add the source under Retrieval → Sources in the environment your agents run in. Each environment keeps its own sources.

  1. Create an internal integration at notion.so/my-integrations and pick the workspace to sync.

  2. Keep "Read content" enabled (this sync is read-only) and copy the integration secret (it starts with ntn_).

  3. Paste the secret into the Integration secret field below.

  4. In Notion, open each page or database, use the three-dot menu, choose Connections, and add the integration. Subpages follow automatically.

  5. For specific pages, paste their links below. The ID is the 32-character code at the end of the URL.

Configuration, in depth

Every available control for connecting Notion to a project.

Connection

Integration secret*
Secret of the Notion internal integration. The integration only sees pages that have been shared with it.

Content scope

What to sync
Sync everything the integration can see, or pin the sync to specific pages and databases.
Pages and databases*
Notion page or database links, one per line.
Include subpages
Also sync child pages nested under the selected pages.
Include databases
Sync database rows as individual retrieval entries.

Sync behavior

Where synced content lands and how often it refreshes.

Target namespace
Retrieval namespace the synced entries are filed under. Use dots to nest, e.g. sources.notion.
Sync interval
How often the source is checked for changes. Each run only reprocesses content that changed.
When content is deleted at the source
Pages removed or unshared in Notion can be removed from the retrieval on the next sync, or kept as they were last synced.

Search it from an agent

Agents search synced content with the retrieval_query tool. A small tool that pins the namespace keeps an agent to this source.

tools/knowledge.py
from connic.tools import retrieval_query


async def search_notion(question: str) -> dict:
    return await retrieval_query(
        question, namespace="sources.notion"
    )
agents/support-agent.yaml
version: "1.0"

name: support-agent
type: llm
model: connic/gemini-3.7-flash
system_prompt: |
  Answer only from what search_notion returns.
tools:
  - knowledge.search_notion

Notion retrieval source FAQ

It syncs the pages and databases shared with the Notion integration. Page content is converted to clean text, database rows become individual retrieval entries, and child pages nested under selected pages can follow along automatically.

No. Notion internal integrations only see pages that are explicitly shared with them. connic cannot read a page that has not been shared with the integration.

The schedule can be set to every 15 minutes, hourly, every 6 hours, daily, or weekly. Each run only reprocesses pages that changed since the last sync.

Deletion behavior is configurable. The default removes the matching entries from retrieval on the next sync, while the last synced version can be kept as an archive.