Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/dword-design/notion-paginate

Load all data of a Notion API call, running pagination until no further data exist. Inspired by Octokit paginate function.
https://github.com/dword-design/notion-paginate

github notion notion-api octokit page pages paginate pagination

Last synced: about 1 month ago
JSON representation

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

Awesome Lists containing this project

README

        

# 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.

:information_source: **This is now part of the [Notion SDK](https://github.com/makenotion/notion-sdk-js\?tab\=readme-ov-file\#iteratepaginatedapilistfn-firstpageargs).**

## Install

```bash
# npm
$ npm install notion-paginate

# Yarn
$ yarn add notion-paginate
```

## Usage

Usage is very similar to [Octokit paginate function](https://octokit.github.io/rest.js/v19#pagination). You pass the function to paginate with the parameters and `notion-paginate` will do the pagination magic:

```js
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](https://github.com/dword-design/notion-paginate/issues) or a [pull request](https://github.com/dword-design/notion-paginate/pulls)! ⚙️

## 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](https://opensource.org/licenses/MIT) © [Sebastian Landwehr](https://sebastianlandwehr.com)