JSPM

  • Created
  • Published
  • Downloads 1098
  • Score
    100M100P100Q112532F
  • License MIT

Unofficial Notion.so API client.

Package Exports

  • notionapi-agent

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (notionapi-agent) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

notionapi-agent

version language license

Unofficial Node.js API client for Notion.so.

⚠ If you need to use Notion's API in production, I recommend waiting for their official release.

Installation

npm install notionapi-agent

Getting Started

Basic Usage

Try notionapi-agent on RunKit

const { createAgent } = require("notionapi-agent")

const agent = createAgent()

async function main() {

  const pageId = "181e961a-eb5c-4ee6-9153-07c0dfd5156d"

  try {
    const result = await agent.getRecordValues({
      requests: [{ id: pageId, table: "block" }]
    })
    console.log(result)
  } catch (error) {
    console.log(error)
  }

}

main()

The result is always the response of a successful request (HTTP status 200 OK). If Notion responds with other status code or the request failed, an error is thrown.

Advanced Usage

There is an example to demonstrate how to download all blocks of a page.

To access private content, one need the token.

Development

Project Structure

project structure graph

Documentation

Use TypeStrong/typedoc to generate reference documentation. It needs to be installed globally.

npm i -g typedoc

Packaging

Use rollup/rollup to package multiple source files into one cjs module (dist/index.js) and one esm module (dist/index.esm.js). Use tsc --emitDeclarationOnly to generate TypeScript declaration files.