notion-known-pitfalls

Featured

Common Notion API mistakes: wrong page ID format (dashes), rich text array structure, block children not returned with page, pagination required for all lists, 3 req/sec shared across endpoints, not sharing pages with integration. Use when debugging or reviewing Notion code. Trigger with phrases like "notion mistakes", "notion pitfalls", "notion common errors", "notion gotchas", "notion debugging".

AI & Automation 2,274 stars 319 forks Updated today MIT

Install

View on GitHub

Quality Score: 99/100

Stars 20%
100
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Notion Known Pitfalls ## Overview The twelve most common mistakes when building Notion API integrations, each with the wrong pattern, why it fails, and the correct fix using real `Client` from `@notionhq/client` code. These pitfalls account for the majority of developer support questions. Covers page ID format issues, rich text structure, missing block children, pagination requirements, rate limit sharing, and integration sharing. ## Prerequisites - `@notionhq/client` v2.x installed (`npm install @notionhq/client`) - Python: `notion-client` installed (`pip install notion-client`) - `NOTION_TOKEN` environment variable set - Familiarity with Notion API concepts (databases, pages, blocks, properties) ## Instructions ### Step 1: Not Sharing Pages with the Integration (Pitfall #1) The single most common Notion API error. Every page/database must be explicitly shared with your integration. ```typescript import { Client, isNotionClientError, APIErrorCode } from '@notionhq/client'; const notion = new Client({ auth: process.env.NOTION_TOKEN }); // This returns 404 even though the page EXISTS in your workspace try { const page = await notion.pages.retrieve({ page_id: 'some-page-id' }); } catch (error) { if (isNotionClientError(error) && error.code === APIErrorCode.ObjectNotFound) { // "object_not_found" does NOT mean the page doesn't exist // It means your integration doesn't have access console.error('Page exists but integration lacks access.'); console...

Details

Author
jeremylongshore
Repository
jeremylongshore/claude-code-plugins-plus-skills
Created
7 months ago
Last Updated
today
Language
Python
License
MIT

Integrates with

Similar Skills

Semantically similar based on skill content — not just same category

AI & Automation Featured

notion-common-errors

Diagnose and fix Notion API errors by HTTP status code and error code. Use when encountering Notion errors, debugging failed requests, or troubleshooting integration access, rate limiting, or validation issues. Trigger with phrases like "notion error", "fix notion", "notion not working", "debug notion", "notion 400", "notion 429".

2,274 Updated today
jeremylongshore
AI & Automation Featured

notion-advanced-troubleshooting

Deep debugging for Notion API: response inspection, permission chain tracing, property type mismatches, pagination edge cases, and block nesting limits. Use when standard troubleshooting fails or investigating intermittent errors. Trigger with phrases like "notion deep debug", "notion permission trace", "notion property mismatch", "notion pagination bug", "notion nesting limit".

2,274 Updated today
jeremylongshore
AI & Automation Featured

notion-security-basics

Apply Notion API security best practices for integration tokens, OAuth2 flows, least-privilege capabilities, and page-level access control. Use when securing integration tokens, configuring OAuth2 for public integrations, rotating credentials, or auditing which pages an integration can access. Trigger with phrases like "notion security", "notion secrets", "secure notion", "notion API key security", "notion token rotation", "notion OAuth2", "notion permissions audit".

2,274 Updated today
jeremylongshore
AI & Automation Featured

notion-architecture-variants

Different Notion integration architectures: CMS (headless blog), task tracker (project management), knowledge base (wiki), form submission handler, and data pipeline source. Trigger with phrases like "notion cms", "notion headless blog", "notion task tracker", "notion wiki", "notion form handler", "notion data pipeline".

2,274 Updated today
jeremylongshore
AI & Automation Featured

notion-policy-guardrails

Governance for Notion integrations: integration naming standards, page sharing policies, property naming conventions, database schema standards, and access audit scripts. Trigger with phrases like "notion governance", "notion policy", "notion naming convention", "notion access audit", "notion schema standard".

2,274 Updated today
jeremylongshore