š **Easy to use** ā Receive Notion data with a single GET request
npm install notion-api-worker!Notion API Worker
!API Version
A serverless wrapper for the private Notion API. It provides fast and easy access to your Notion content.
Ideal to make Notion your CMS.
We provide a hosted version of this project on https://notion-api.splitbee.io. You can also host it yourself. Cloudflare offers a generous free plan with up to 100,000 request per day.
_Use with caution. This is based on the private Notion API. We can not gurantee it will stay stable._
š Easy to use ā Receive Notion data with a single GET request
š Table Access ā Get structured data from tables & databases
⨠Blazing Fast ā Built-in SWR caching for instant results
š« CORS Friendly ā Access your data where you need it
- Use it as data-source for blogs and documentation. Create a table with pages and additional metadata. Query the /table endpoints everytime you want to render a list of all pages.
- Get data of specific pages, which can be rendered with react-notion
/v1/page/
Example (Source Notion Page)
https://notion-api.splitbee.io/v1/page/2e22de6b770e4166be301490f6ffd420
Returns all block data for a given page.
For example, you can render this data with react-notion.
/v1/table/
Example (Source Notion Page)
https://notion-api.splitbee.io/v1/table/20720198ca7a4e1b92af0a007d3b45a4
All public pages can be accessed without authorization. If you want to fetch private pages there are two options.
- The recommended way is to host your own worker with the NOTION_TOKEN environment variable set. You can find more information in the Cloudflare Workers documentation.
- Alternatively you can set the Authorization: Bearer header to authorize your requests.
To obtain your token, login to Notion and open your DevTools and find your cookies. There should be a cookie called token_v2, which is used for the authorization.
- Timo Lins ā Idea, Documentation
- Tobias Lins ā Code
- Travis Fischer ā Code