How to connect Notion to AskVault
What gets indexed
Notion's content model has three relevant primitives. All three are supported.
- Pages. Standard Notion pages with rich text, headings, lists, code blocks, tables, and embedded media. The bot retrieves chunks from the page body and uses the page title as the source citation.
- Databases. Notion databases (tables, boards, calendars, galleries). Each row in the database becomes a separately-indexable page. Database properties (Status, Owner, Tags, etc.) become metadata you can filter on.
- Sub-pages. Nested pages under a parent. Walked automatically when the parent is shared.
What doesn't get indexed: embedded files (PDFs, images) other than as alt text, comments, version history, and synced blocks that point to inaccessible content.
Setup
Three minutes end-to-end.
- Open Knowledge > Add Source > Notion in AskVault. Click Connect with Notion.
- OAuth consent screen. Notion asks you to pick which workspace to grant access to. Pick the one with the content you want indexed.
- Select pages. Notion shows a page picker. Choose top-level pages or databases. AskVault crawls everything underneath. You can grant access to specific pages or to the whole workspace.
- Configure re-sync cadence. Daily for active teams, weekly for stable knowledge bases. Configurable later.
- Click Save. Indexing starts. 50 pages takes about 90 seconds; 500 pages takes about 12 minutes.
Test the integration by asking the bot a question whose answer is in Notion. You should get a response with a source citation linking back to the Notion page.
Sync behavior
Notion content updates frequently. AskVault re-syncs on the cadence you picked:
- Daily sync (recommended for most teams). Runs at midnight UTC. Captures all changes from the previous 24 hours.
- Weekly sync. Runs Sunday at midnight UTC. Lower index cost, suitable when content rarely changes.
- Manual sync. Click Resync now under Knowledge Hub > Notion. Useful when you've just made a big update and want it indexed immediately.
Re-sync is incremental. Only pages that changed since the last sync are re-indexed. New pages are picked up. Deleted pages are removed from the vector index within one sync cycle.
Permissions and access control
The OAuth scope is read-only. AskVault can read pages and databases you've granted access to, nothing more. We can't create pages, modify content, share, or change permissions.
If you remove AskVault's access in Notion's integration settings, indexing stops immediately and the integration shows as disconnected in AskVault. Already-indexed content stays in the vector store until you explicitly delete it from Knowledge Hub.
Audience tagging
For HR documents, finance policies, or other content you want restricted, audience-tag the Notion pages after they're indexed. Open Knowledge Hub > [page] > Audience and add tags like hr_team or managers. Combined with identity verification, the bot only retrieves from documents matching the caller's audience set.
This is the right pattern for an internal helpdesk bot with multiple departments. Growth+
Limits
- Plan-level content cap. 5 MB on Free, 15 MB on Starter, 40 MB on Growth, 100 MB on Business. Notion content typically averages 2 to 8 KB per page after extraction.
- Notion API rate limits. 3 requests per second per integration. AskVault stays well within this for daily syncs.
- Per-workspace integration count. One Notion workspace per AskVault workspace. To index multiple Notion workspaces, create separate AskVault workspaces.
Common pitfalls
Pages not showing up in Knowledge Hub. They weren't shared with the AskVault integration. In Notion, open the page, click Share, add the AskVault integration to the access list.
Bot answers from outdated content. Re-sync hasn't run yet. Trigger a manual sync or wait for the next daily cycle.
Sub-pages skipped during indexing. Parent page was shared but the sub-pages have their own restricted access. Share each sub-page explicitly, or grant workspace-level access to the integration.
Database rows missing. The database was shared but the rows reference pages outside the shared scope. Re-share with broader access.
FAQ
Can the bot search Notion databases by property?
Yes. The bot retrieves matching rows based on the question content. For more structured queries (e.g., "show me all rows where Status = Done"), use the custom_webhook skill to call your own backend that queries Notion's API directly.
Does this work with Notion Business accounts?
Yes. Personal, Team, Business, and Enterprise Notion plans all work. Enterprise SCIM provisioning is supported for AskVault's per-user audience mapping.
Can I limit the integration to specific Notion pages?
Yes. During the OAuth flow, pick "Select pages" instead of "Allow access to the whole workspace". You can grant access to a specific set of pages and add more later.
What happens if I delete a page in Notion?
The next sync removes it from the vector index. The bot stops retrieving from it. Already-cached conversations referencing the page keep the citation link, which will 404 if the visitor clicks it.
How does sync handle large pages?
Pages over about 50,000 characters get chunked into multiple pieces. Each chunk indexes independently. Retrieval pulls the most relevant chunk; the source citation links back to the full Notion page.
Related guides
- Confluence integration setup
- Google Drive integration setup
- Build an internal knowledge-base chatbot
- Identity verification with HMAC
- How to restrict the AI bot to specific URLs only