Skip to main content

Notion Integration

Notion integration allows you to sync pages from your Notion workspace into your vector store. This connector uses Notion's Internal Integration approach, which requires creating an integration and sharing specific pages with it.

Prerequisites

Before connecting Notion, you'll need to:

  1. Have a Notion account with workspace access
  2. Create a Notion integration
  3. Share the pages you want to sync with that integration

Step 1: Create a Notion Integration

  1. Go to Notion Integrations
  2. Click + New integration
  3. Fill in the details:
    • Name: Vector Data Loader (or any name you prefer)
    • Associated workspace: Select your workspace
    • Type: Internal
  4. Under Capabilities, ensure these are enabled:
    • ✅ Read content
    • ✅ Read user information (optional)
  5. Click Submit
  6. Copy the Internal Integration Token (starts with secret_ or ntn_)
Keep Your Token Safe

The integration token provides access to any pages shared with it. Store it securely and don't share it publicly.

Step 2: Share Pages with Your Integration

Notion integrations can only access pages that have been explicitly shared with them.

  1. Open the Notion page you want to sync
  2. Click the (three dots) menu in the top-right corner
  3. Click Add connections
  4. Search for and select your integration name
  5. Click Confirm
Sharing Parent Pages

When you share a parent page, all child pages underneath it are also accessible to the integration. You don't need to share each page individually.

Step 3: Connect in Vector Data Loader

  1. Navigate to Sources in Vector Data Loader
  2. Click the Notion card
  3. Fill in the connection form:
FieldDescription
Display NameA friendly name for this source (e.g., "My Notion Workspace")
Integration TokenPaste your integration token from Step 1
Root Page ID(Optional) Limit browsing to a specific page and its children
  1. Click Connect

Finding a Page ID

If you want to limit the integration to a specific page:

  1. Open the page in Notion
  2. Click ShareCopy link
  3. The URL looks like: https://notion.so/Your-Page-Title-abc123def456
  4. The Page ID is the 32-character string at the end (without hyphens): abc123def456...

Browsing Notion Content

Once connected, you can browse your shared Notion pages:

  • Pages appear in a hierarchical tree structure
  • Child pages are nested under their parents
  • Only pages shared with your integration are visible

What Gets Synced

When you sync a Notion page, the following content is extracted:

Content TypeSynced
Page title
Text blocks
Headers (H1, H2, H3)
Bulleted & numbered lists
Toggle blocks
Code blocks
Tables✅ (as text)
Databases✅ (as text rows)
Nested/child pages✅ (if shared)
Images❌ (text only)
Embeds
Comments

Troubleshooting

"Page not found" or empty browser

  • Ensure you've shared the page with your integration (Step 2)
  • Check that the integration token is correct
  • Verify the Root Page ID (if specified) is valid

"Unauthorized" error

  • Your integration token may have been revoked or is incorrect
  • Go to Notion Integrations and verify/regenerate the token

Pages missing from the browser

  • Only pages explicitly shared with the integration appear
  • Share parent pages to include all their children
  • Database pages need to be shared separately from the database itself

Security Considerations

  • Integration tokens provide read access to all shared pages
  • Tokens are encrypted before storage in the database
  • Consider creating separate integrations for different projects
  • Regularly audit which pages are shared with the integration