Skip to content
This repository has been archived by the owner on Feb 15, 2024. It is now read-only.

Load all data of a Notion API call, running pagination until no further data exist. Inspired by Octokit paginate function.

License

Notifications You must be signed in to change notification settings

dword-design/notion-paginate

Repository files navigation

notion-paginate

npm version Linux macOS Windows compatible Build status Coverage status Dependency status Renovate enabled
Open in Gitpod Buy Me a Coffee PayPal Patreon

Load all data of a Notion API call, running pagination until no further data exist. Inspired by Octokit paginate function.

ℹ️ This is now part of the Notion SDK.

Install

# npm
$ npm install notion-paginate

# Yarn
$ yarn add notion-paginate

Usage

Usage is very similar to Octokit paginate function. You pass the function to paginate with the parameters and notion-paginate will do the pagination magic:

const { Client: NotionClient } = require('@notionhq/client')
const notionPaginate = require('notion-paginate')

const notion = new NotionClient({ auth: notionApiToken })

const pages = await notionPaginate(notion.databases.query, { database_id: databaseId })

You can also pass other parameters like filters or the page size to the options object.

Contribute

Are you missing something or want to contribute? Feel free to file an issue or a pull request! ⚙️

Support

Hey, I am Sebastian Landwehr, a freelance web developer, and I love developing web apps and open source packages. If you want to support me so that I can keep packages up to date and build more helpful tools, you can donate here:

Buy Me a Coffee  If you want to send me a one time donation. The coffee is pretty good 😊.
PayPal  Also for one time donations if you like PayPal.
Patreon  Here you can support me regularly, which is great so I can steadily work on projects.

Thanks a lot for your support! ❤️

License

MIT License © Sebastian Landwehr