notion

Manage Notion pages, data sources, files, and comments via the ntn CLI and Notion API.

Updated Jun 19, 2026
One-click install
npx skills add https://github.com/AmirulAndalib/Vilvona-AI --skill notion-amirulandalib
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: notion
Source: https://github.com/AmirulAndalib/Vilvona-AI/tree/main/skills/notion
Command: npx skills add https://github.com/AmirulAndalib/Vilvona-AI --skill notion-amirulandalib

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires ntn.

What problem does it solve? Working with Notion programmatically requires juggling raw REST API calls, authentication headers, and version quirks. This Skill wraps the official ntn CLI and curl fallback into clear commands for creating pages, querying data sources, uploading files, and running raw API requests without memorizing endpoint details. ## Core Features & Use Cases - Markdown-first page management: Create, read, update, and trash Notion pages using Markdown content with properties exposed as frontmatter. - Data source queries: Resolve database IDs to data sources and run filtered, sorted queries with JSON output. - Files, comments, and Workers: Upload files, manage comments, and deploy Notion Workers, with a curl fallback for raw API calls when ntn is unavailable. - Use Case: You want to publish a weekly report to Notion. Pipe a Markdown file into ntn pages create --parent data-source:<id> < report.md and the page appears in your database with content intact. ## Quick Start Ask the assistant to create a new Notion page under a given parent page with Markdown content using the ntn CLI.

Frequently Asked Questions about notion

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

FAQPage Schema
How do I create a Notion page from the command line?

Use the ntn CLI with `ntn pages create --parent page:<page-id> --content '# Title'` or pipe a Markdown file via stdin. Parents can be page, database, or data-source IDs, and content is written as Markdown.

How do I query a Notion database with filters?

First resolve the database ID to a data source ID with `ntn datasources resolve`, then run `ntn datasources query <data-source-id> --filter '<json>'`. Filters use the standard Notion API filter syntax such as checkbox equals conditions.

What authentication does the Notion CLI need?

Run `ntn login` for interactive auth, or set the NOTION_API_TOKEN environment variable for script and headless usage. The ntn api command sets the Authorization header and Notion-Version automatically.

Can I use the Notion API without the ntn CLI?

Yes, use curl with the Authorization Bearer token and Notion-Version 2026-03-11 headers against https://api.notion.com/v1 endpoints. The Skill documents this curl fallback for cases where ntn is unavailable.

Why does my Notion API request fail with archived or after fields?

The current API version 2026-03-11 renamed several fields: use `in_trash` instead of `archived`, and block positioning uses `position` instead of flat `after`. The transcription block is now called meeting_notes.