notion-rate-limits

Featured

Manage Notion API rate limits with exponential backoff, queue-based throttling, and batch optimization. Use when hitting 429 errors, implementing retry logic, or optimizing API request throughput for Notion integrations. Trigger with "notion rate limit", "notion 429", "notion retry", "notion backoff", "notion throttling", "notion too many requests", "notion queue".

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 Rate Limits ## Overview The Notion API enforces **3 requests per second per integration token** across all endpoints and tiers. Exceeding this returns HTTP 429 with a `Retry-After` header. Detect with `isNotionClientError()` + `APIErrorCode.RateLimited`, implement exponential backoff with jitter, and use queue-based throttling for high-throughput workloads. ## Prerequisites - `@notionhq/client` v2.x (TypeScript) or `notion-client` (Python) - Integration token in `NOTION_TOKEN` from [notion.so/my-integrations](https://www.notion.so/my-integrations) - For queue patterns: `p-queue` v8+ (`npm install p-queue`) ## Instructions ### Step 1 — Detect Rate Limits and Apply Exponential Backoff | Aspect | Value | |--------|-------| | Rate limit | 3 req/s per integration token (all tiers) | | Throttle response | HTTP 429 + `Retry-After` header (seconds) | | Scope | Per token, not per user or workspace | | Max block children | 1,000 per `blocks.children.append` | | Max page size | 100 results per paginated request | The SDK retries 429 automatically (2 retries, 3 total attempts). For heavier workloads, use custom backoff that honors `Retry-After` and adds jitter to prevent thundering herd: ```typescript import { Client, isNotionClientError, APIErrorCode } from '@notionhq/client'; const notion = new Client({ auth: process.env.NOTION_TOKEN }); async function withBackoff<T>( fn: () => Promise<T>, maxRetries = 5, baseMs = 1000, maxMs = 32_000 ): Promise<T> { for (let ...

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-reliability-patterns

Graceful degradation when Notion is down: offline cache, retry with exponential backoff, circuit breaker, health checks, and fallback content. Use when building fault-tolerant Notion integrations for production. Trigger with phrases like "notion reliability", "notion circuit breaker", "notion offline fallback", "notion health check", "notion graceful degradation".

2,274 Updated today
jeremylongshore
AI & Automation Featured

notion-load-scale

High-volume Notion operations: parallel requests within 3 req/sec, worker queues, database pagination at scale, incremental sync for large workspaces, and memory management for bulk operations. Trigger with phrases like "notion scale", "notion bulk operations", "notion high volume", "notion worker queue", "notion incremental sync".

2,274 Updated today
jeremylongshore
AI & Automation Featured

notion-cost-tuning

Optimize Notion API usage to minimize rate-limit pressure, reduce engineering overhead, and maximize throughput. Use when auditing request volume, eliminating redundant API calls, implementing caching, or restructuring queries for efficiency. Trigger with "notion cost", "notion optimize", "notion API usage", "reduce notion requests", "notion rate limit budget", "notion efficient", "notion caching".

2,274 Updated today
jeremylongshore
AI & Automation Featured

notion-performance-tuning

Optimize Notion API performance with caching, batching, parallel requests, and incremental sync. Use when experiencing slow API responses, implementing caching strategies, reducing API call volume, or tuning request patterns for Notion integrations. Trigger with phrases like "notion performance", "optimize notion api", "notion latency", "notion caching", "notion slow", "notion batch requests", "notion incremental sync", "notion reduce api calls".

2,274 Updated today
jeremylongshore
AI & Automation Featured

instantly-rate-limits

Implement Instantly.ai rate limiting, backoff, and request throttling patterns. Use when handling 429 errors, implementing retry logic, or building high-throughput Instantly integrations. Trigger with phrases like "instantly rate limit", "instantly 429", "instantly throttle", "instantly backoff", "instantly retry".

2,274 Updated today
jeremylongshore