Ingest knowledge from Notion
What gets indexed
For each Notion page or database:
- Page title.
- Page body. Text blocks, headings, lists, callouts, toggles, code blocks.
- Inline databases. Indexed as structured rows.
- Linked pages. Followed up to 3 levels deep by default.
- Tables. Cells preserved with headers.
- Images. Captioned via alt text.
What's not indexed:
- Comments (off by default; toggle on if needed).
- Page properties beyond title (unless explicitly mapped).
- Embeds (Figma, Loom, etc.).
Setup walkthrough
About 15 minutes:
Step 1: connect Notion
- Open Knowledge Hub > Add Source > Notion.
- Click "Connect Notion".
- Sign in to Notion.
- Pick which pages to share with AskVault. Notion's OAuth flow lets you grant access page-by-page or to the whole workspace.
- Approve.
Setup time: about 5 minutes.
Step 2: select content
After connecting, pick what to index:
- Specific pages with their child pages (recursive).
- Specific databases.
- Whole workspace (if granted in step 1).
Tip: pick narrowly. A 5,000-page Notion workspace indexed all-at-once produces noisy search results. Start with the support-relevant subset.
Step 3: configure sync
- Sync frequency. Every 1 hour, 6 hours (default), or daily.
- Webhook sync. Enable to update individual pages on edit (within 30 seconds).
- Audience tag. Per-source or per-page.
Step 4: trigger initial sync
Click "Sync now". A 500-page index takes about 10 minutes.
Watch progress under Knowledge Hub > Notion Source > Status. Each page shows Queued → Indexing → Ready.
Sync behavior
How updates propagate:
- Webhook sync (recommended). Notion sends
page.updatedevents; AskVault re-indexes the affected page within 30 seconds. - Scheduled sync. Re-crawls all pages on schedule. Catches changes that didn't trigger webhooks.
- Manual sync. Click "Sync now" for immediate refresh.
Most teams enable webhook sync plus a 6-hour fallback schedule.
Page selection patterns
Three common scopes:
Whole workspace. Best for small workspaces where everything's relevant.
Top-level page tree. Common pattern. Connect to your "HR Wiki" or "Engineering Docs" root; all children inherit.
Database-only. When your content lives in structured databases (FAQ, runbooks, postmortems). AskVault indexes each row as a chunk.
Configure under Knowledge Hub > Notion Source > Page Selection.
Audience tags per page
Layer audience scoping:
internalfor HR docs visible only to verified employees.paid_usersfor paying-customer-only docs.publicfor marketing-friendly content.
Set per source or per page under Knowledge Hub > [Notion source] > Audience. See audience tags.
What the bot answers from Notion
Sample interaction:
Customer: "What's our refund policy for enterprise customers?"
Bot: "Our enterprise refund policy allows refunds within 30 days of purchase if the customer demonstrates material non-performance. See the full policy in Enterprise Refund Policy 2026."
The bot cites the source Notion page so the visitor can click through for full context.
Database-aware retrieval
For Notion databases (e.g., a customer-policy database):
- Each row indexes as a chunk.
- Column values preserve as structured metadata.
- The bot can filter by property (e.g., "policies where region=US").
Useful for structured Q&A databases. The bot reads the row's contents and the column metadata together.
Linked-page following
When a Notion page links to other pages:
- AskVault follows links up to 3 levels deep by default.
- Configure depth under Knowledge Hub > Notion Source > Linked Pages.
- Circular references handled (no infinite loop).
Useful for wikis where pages cross-reference each other heavily.
Permissions and OAuth
What the OAuth grants AskVault:
- Read access to pages the connecting user can see.
- No write access. We don't request write scopes.
- No comments access by default.
Re-authorize if you need to expand access to new pages:
- Knowledge Hub > Notion Source > Settings.
- Click "Update permissions".
- Notion shows the consent screen with new pages.
- Approve.
Sync conflicts
When Notion structure changes:
- Page moved. AskVault tracks via Notion's page ID; no re-index needed.
- Page deleted. Removes from index on next sync (or instantly via webhook).
- Page archived. Removes from active index but keeps for audit.
- Page renamed. Title updates on next sync; citation link still works.
Plan availability
- Free. No Notion integration.
- Starter. Up to 100 pages indexed. Starter+
- Growth. Up to 1,000 pages. Webhook sync. Growth+
- Business. Up to 5,000 pages. Database-aware retrieval. Multi-workspace Notion. Business+
- Enterprise. Unlimited.
Sample customer journey
End-to-end for an HR helpdesk bot:
- Connect Notion. Pick the People Operations workspace.
- Index 200 pages. Done in 5 minutes.
- Tag all as
internal. - Configure identity verification so only verified employees can see.
- Deploy a Slack bot in #people-ops.
- Employees ask questions: PTO, benefits, payroll.
- Bot answers from indexed Notion pages with citations.
- HR ticket volume drops 40 to 60% within 30 days.
Updates flow continuously: edit a Notion page, the bot reflects the change within 30 seconds.
Privacy and data flow
What AskVault reads:
- Pages your OAuth-connected user can see.
- Page content, metadata, structure.
- Linked page titles for graph traversal.
What we don't read:
- Pages outside the OAuth scope.
- Notion AI content beyond plain-text representation.
- Private user-level content.
See data handling and sub-processors.
Planned features (on the roadmap)
Documented for accuracy:
- Two-way sync. Today, Notion → AskVault is one-way. Planned: AskVault answers writeable back to Notion as updates.
- Property-aware retrieval. Today, page title and body. Planned: filter by arbitrary Notion property in the bot's retrieval.
- Native Notion AI integration. Today, Notion AI content is plain text. Direct Notion AI invocation planned.
- Comments-as-FAQs. Today, comments off. Planned: optionally treat comment threads as Q&A pairs.
Limits
- Pages per source. 5,000 max.
- Linked-page depth. 3 levels.
- Sync frequency. As fast as every 1 hour.
- Initial sync speed. About 1 minute per 50 pages.
- Webhook-triggered re-sync. Within 30 seconds.
Common pitfalls
Pages missing from index. OAuth user doesn't have access. Re-authorize as a broader user, or share the page with the OAuth-connected account.
Sync slow on large workspaces. 5,000 pages takes about 100 minutes for initial sync. Bulk-sync runs as background; bot is queryable as pages complete.
Notion API rate limit hit. Notion limits to 3 requests per second per integration. AskVault auto-throttles. For very large workspaces, contact Notion to increase limits.
Sensitive pages indexed by accident. Restrict OAuth to specific page tree. Or apply internal audience tag plus enforce identity verification.
FAQ
Can I index public Notion sites?
Yes. Connect via OAuth (same flow) or via URL crawling (no Notion auth needed but slower).
Does this work with Notion's free plan?
Yes. Notion API available on all tiers. Free tier may have slightly stricter rate limits.
Can I exclude specific pages from indexing?
Yes via per-page audience tag or by removing them from page selection.
How fresh are bot answers?
Within 30 seconds (webhook sync) or 6 hours (scheduled sync).
Can I index multiple Notion workspaces under one AskVault workspace?
Yes on Business and above. Connect each Notion workspace as a separate source.
Related guides
- Notion integration setup
- Notion integration use cases
- Knowledge Hub
- Audience tags
- Internal knowledge base use case