Skip to content

Databases

Brandon Young edited this page Nov 5, 2026 · 1 revision

Databases

On pull

When a page contains a database (child_database), pull exports its rows to a CSV file next to the page's Markdown file and links to it:

docs/
└── Roadmap/
    ├── Roadmap.md
    └── Tasks.csv
[🗃️ Tasks](./Tasks.csv) <!-- notion:child_database 1e369015-c240-8021-a930-e3ee43ea0ef7 -->
  • File name: the database title, with spaces turned into _ and unsafe characters removed (Product Inventory → Product_Inventory.csv).
  • Untitled databases are named Database_<first 8 characters of the ID>.csv.
  • Name clashes on the same page get _2, _3 and so on.
  • The header is the database's properties, and each row is one entry.
  • If an export fails, you get a warning and the rest of the pull carries on.

Simple Notion tables (the table block, not a database) are not exported. They become Markdown tables inside the page. See Markdown Support.

On push

Database sync is one way for now: Notion → CSV. Edits you make to a CSV file are not pushed back. The database block itself is a kept block, so a push never deletes or changes it (see Directory Layout and Kept Blocks).

API notes

The client uses Notion API version 2026-03-11, which reads databases through their data sources. The tool reads each database through its first data source, so you don't need to do anything differently: give the integration access to the page that holds the database.

Clone this wiki locally