Notion Integration

Connect Notion workspaces, databases, and pages to Metalogue

Notion Integration

Connect your Notion workspace to index pages, databases, and their contents.

Quick Start

const connector = await client.createConnector({
  connector_type: 'notion',
  display_name: 'Company Notion',
  credentials: {
    access_token: 'secret_xxxxxxxxxxxx',
  },
});

await client.syncConnector(connector.connector_id, true);

Authentication

OAuth 2.0 (Recommended)

GET /v1/connectors/notion/oauth-url

Internal Integration Token

For private integrations:

{
  "credentials": {
    "access_token": "secret_xxxxxxxxxxxx"
  }
}

Synced Content

Content TypeDescriptionIndexed Fields
PagesDocument pagestitle, content, blocks
DatabasesStructured dataproperties, rows
CommentsDiscussionscontent, author
BlocksContent blockstext, code, embeds

Configuration

{
  "settings": {
    "sync_archived": false,
    "include_databases": true,
    "include_comments": true,
    "max_depth": 10
  }
}

Block Types Supported

  • Text paragraphs
  • Headings (H1, H2, H3)
  • Bulleted and numbered lists
  • Code blocks
  • Tables
  • Callouts
  • Toggle blocks
  • Embeds

Example Queries

// Search across all Notion content
const results = await client.query({
  text: 'Q4 product roadmap',
  filters: {
    connector_type: 'notion'
  }
});

Rate Limits

  • API calls: 3 requests/second
  • Automatic rate limit handling

Next Steps