notion

Manage Notion pages, databases, and blocks via the Notion API using curl.

Updated May 4, 2026
One-click install
npx skills add https://github.com/Junkfooooood/hermes-governance --skill notion-junkfooooood
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: notion
Source: https://github.com/Junkfooooood/hermes-governance/tree/main/skills/productivity/notion
Command: npx skills add https://github.com/Junkfooooood/hermes-governance --skill notion-junkfooooood

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Working with Notion programmatically requires learning its REST API structure, authentication headers, and version-specific quirks like the data sources rename. This Skill provides ready-to-use curl commands for every common Notion API operation, so you can read, create, and update workspace content without writing integration code from scratch. ## Core Features & Use Cases - Full CRUD via curl: Search, get, create, and update pages, databases (data sources), and blocks using only curl and an API key. - API version 2025-09-03 guidance: Explains the databases-to-data-sources migration, including when to use database_id versus data_source_id. - Block type reference: A companion reference covers JSON payloads for paragraphs, headings, lists, to-dos, callouts, code blocks, and more. - Use Case: Ask the assistant to add a new task to your Notion project database with a status and due date, and it executes the correct authenticated API call immediately. ## Quick Start Add a new page titled "Weekly Review" to my Notion tasks database with status set to Todo.

Frequently Asked Questions about notion

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a page in a Notion database with the API?

Send a POST request to https://api.notion.com/v1/pages with the parent database_id and a properties object matching the database schema. Include the Authorization Bearer token and Notion-Version header in every request.

How to query a Notion database with filters using curl?

POST to /v1/data_sources/{data_source_id}/query with a JSON body containing filter and sorts objects. In API version 2025-09-03, databases are queried as data sources, so use the data_source_id rather than the database_id.

What is the difference between database_id and data_source_id in Notion API?

In Notion API version 2025-09-03, each database has both IDs. Use database_id as the parent when creating pages, and data_source_id when querying database contents via the /v1/data_sources/ endpoints.

Why does the Notion API return no results for my pages?

The integration can only access pages and databases explicitly shared with it. In Notion, open the target page, click the menu, choose Connect to, and select your integration name to grant access.

What are the rate limits of the Notion API?

The Notion API allows roughly 3 requests per second on average. Batch operations where possible and add delays between sequential curl calls to avoid throttling errors.