這篇文章將介紹如何使用官方的Notion API來列出Notion資料庫中的所有項目。
首先,您需要取得Notion實例的參考。
import { Client } from '@notionhq/client'
//...
const notion = new Client({ auth: process.env.NOTION_API_KEY })
接下來,您可以呼叫notion.database.query()
來擷取項目。
這段程式碼會擷取所有的項目:
const postsReady = await notion.databases.query({
database_id: process.env.NOTION_DB_ID,
})
這段程式碼會擷取所有具有名稱為「Ready」且已勾選的核取方塊屬性的項目:
const postsReady = await notion.databases.query({
database_id: process.env.NOTION_DB_ID,
filter: {
and: [
{
property: 'Ready',
checkbox: {
equals: true,
},
},
],
},
})
您可以進一步添加更多篩選規則,並使用or
或and
邏輯進行組合。
此外,您還可以根據特定屬性進行升序或降序排列項目。
Notion API相當強大,有很多功能可以使用。
詳細的notion.databases.query()
官方文件請參閱:https://developers.notion.com/reference/post-database-query