Notion
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.
Set up the Notion source
Add the source under Retrieval → Sources in the environment your agents run in. Each environment keeps its own sources.
Create an internal integration at notion.so/my-integrations and pick the workspace to sync.
Keep "Read content" enabled (this sync is read-only) and copy the integration secret (it starts with ntn_).
Paste the secret into the Integration secret field below.
In Notion, open each page or database, use the three-dot menu, choose Connections, and add the integration. Subpages follow automatically.
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.
from connic.tools import retrieval_query
async def search_notion(question: str) -> dict:
return await retrieval_query(
question, namespace="sources.notion"
)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_notionNotion retrieval source FAQ
More retrieval sources
Confluence
By connicSync Confluence spaces on a configured schedule. Pages are chunked and embedded so agents can answer from the wiki instead of guessing.
Auto-syncWebsite Crawler
By connicPoint the crawler at documentation, a help center, or a blog. Pages are converted to clean markdown and re-crawled on the configured schedule.
Auto-syncZendesk Help Center
By connicSync published Help Center articles through the Zendesk API, so agents answer from the same articles customers read.
Auto-sync