Skip to main content

Overview

Notion integration allows Praxos to read, create, and update pages and databases in your Notion workspace.

Features

  • Create and update pages
  • Query databases
  • Add content blocks
  • Search across workspace
  • Create database entries
  • Update properties

Setup

1. Create Notion Integration

  1. Go to Notion Integrations
  2. Click “New integration”
  3. Name: “Praxos”
  4. Select associated workspace
  5. Copy the Internal Integration Token

2. Configure Capabilities

Select capabilities:
  • ✓ Read content
  • ✓ Update content
  • ✓ Insert content

3. Share Pages with Integration

For each page/database Praxos should access:
  1. Open the page in Notion
  2. Click ”…” menu → “Add connections”
  3. Select “Praxos” integration

4. Configure Praxos

Add to .env:
NOTION_API_KEY=secret_xxx...

Usage Examples

Create Page

User: Create a Notion page called "Project Ideas"
Praxos: Created page "Project Ideas" in your Notion workspace.
         [Open in Notion]

User: Add a bullet list of 3 project ideas to that page
Praxos: ✓ Added 3 bullet points to "Project Ideas"

Query Database

User: Show me incomplete tasks from my Notion task database
Praxos: Found 5 incomplete tasks:
         1. Review pull request #234
         2. Update documentation
         3. Schedule team meeting
         4. Prepare presentation
         5. Send follow-up emails

Update Page

User: Add today's meeting notes to the "Daily Notes" page
Praxos: What were the key points from today's meeting?
User: [Provides notes]
Praxos: ✓ Added meeting notes to "Daily Notes"
         Timestamp: Oct 10, 2024 2:30 PM
User: Find Notion pages about "Q4 planning"
Praxos: Found 3 pages:
         1. Q4 Planning Overview
         2. Q4 Marketing Strategy
         3. Q4 Budget Allocation
         [Show details] [Open in Notion]

Database Operations

Create Entry

User: Add a task to my task database: "Review code" due tomorrow
Praxos: ✓ Created task in database
         Name: Review code
         Status: To Do
         Due: Tomorrow (Oct 11, 2024)

Update Properties

User: Mark the "Review code" task as complete
Praxos: ✓ Updated task status to "Complete"

Filter and Query

User: Show all high-priority tasks due this week
Praxos: High-priority tasks this week:
         1. Client presentation (Due: Oct 12)
         2. Budget approval (Due: Oct 13)
         3. Team retrospective (Due: Oct 15)

Content Blocks

Praxos can create various block types:
  • Paragraphs - Text content
  • Headings - H1, H2, H3
  • Lists - Bulleted and numbered
  • To-do Lists - Checkable items
  • Code Blocks - With syntax highlighting
  • Quotes - Block quotes
  • Callouts - Info, warning, error boxes
  • Dividers - Horizontal rules
  • Tables - Data tables
Example:
User: Create a page with a heading "Weekly Goals",
      a divider, and a to-do list with 3 items
Praxos: ✓ Created page with requested structure

Configuration

Environment Variables

# Required
NOTION_API_KEY=secret_xxx...

# Optional
NOTION_VERSION=2022-06-28  # API version
NOTION_DEFAULT_PAGE_SIZE=100

Workspace Settings

  • Configure default database
  • Set default page parent
  • Define page templates

Troubleshooting

Integration Can’t Access Page

Solution:
  1. Open the page in Notion
  2. Click ”…” → “Add connections”
  3. Select your integration

API Rate Limit

Notion limits:
  • 3 requests per second per integration
  • Averaged over 60 seconds
Praxos handles this automatically with:
  • Request queuing
  • Rate limiting
  • Automatic retries

Invalid Token

  • Verify token is correct
  • Check token hasn’t been revoked
  • Ensure integration still exists

Best Practices

  • Share only necessary pages with integration
  • Use descriptive page titles
  • Structure databases consistently
  • Leverage templates for consistency
  • Regular cleanup of unused pages

Limitations

Current Notion API limitations:
  • No file uploads (coming soon)
  • Limited block types (most common supported)
  • No comments API
  • No user mentions in content

Security

  • Tokens encrypted at rest
  • Per-user token isolation
  • Granular page-level permissions
  • Revocable access

Next Steps