All Projects → dragonman225 → notionapi-agent

dragonman225 / notionapi-agent

Licence: MIT license
Unofficial Node.js API client for Notion.so

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to notionapi-agent

Newsapi
A python wrapper for News API.
Stars: ✭ 71 (-20.22%)
Mutual labels:  api-client, api-wrapper
Coingecko Api
A Node.js wrapper for the CoinGecko API with no dependencies.
Stars: ✭ 159 (+78.65%)
Mutual labels:  api-client, api-wrapper
Instagram api gem
A Ruby wrapper for the Instagram API
Stars: ✭ 100 (+12.36%)
Mutual labels:  api-client, api-wrapper
Wikipedir
R's MediaWiki API client library
Stars: ✭ 54 (-39.33%)
Mutual labels:  api-client, api-wrapper
Binance
A .NET Standard Binance API library.
Stars: ✭ 199 (+123.6%)
Mutual labels:  api-client, api-wrapper
Github
Ruby interface to GitHub API
Stars: ✭ 1,081 (+1114.61%)
Mutual labels:  api-client, api-wrapper
Mega.py
Python library for the https://mega.nz/ API.
Stars: ✭ 145 (+62.92%)
Mutual labels:  api-client, api-wrapper
Pizzly
The simplest, fastest way to integrate your app with an OAuth API 😋
Stars: ✭ 796 (+794.38%)
Mutual labels:  api-client, api-wrapper
mailerlite-api-python
Python wrapper for Mailerlite API v2
Stars: ✭ 31 (-65.17%)
Mutual labels:  api-client, api-wrapper
Discogs
A Ruby wrapper of the Discogs.com API
Stars: ✭ 195 (+119.1%)
Mutual labels:  api-client, api-wrapper
Apipie
Transform api declaration to js object for frontend. Inspired by VueRouter, koa-middleware and axios.
Stars: ✭ 29 (-67.42%)
Mutual labels:  api-client, api-wrapper
rdfp
This R package connects the DoubleClick for Publishers API from R
Stars: ✭ 16 (-82.02%)
Mutual labels:  api-client, api-wrapper
Groovehq
Ruby gem for GrooveHQ api
Stars: ✭ 22 (-75.28%)
Mutual labels:  api-client, api-wrapper
Avenue
Wrapper around URLSession and URLSessionTask to enable seamless integration with Operation / OperationQueue.
Stars: ✭ 58 (-34.83%)
Mutual labels:  api-client, api-wrapper
Slack
🎉✨ Slack API client for Node and browsers.
Stars: ✭ 903 (+914.61%)
Mutual labels:  api-client, api-wrapper
Anyapi
AnyAPI is a library that helps you to write any API wrappers with ease and in pythonic way.
Stars: ✭ 126 (+41.57%)
Mutual labels:  api-client, api-wrapper
Hubspot Php
HubSpot PHP API Client
Stars: ✭ 273 (+206.74%)
Mutual labels:  api-client, api-wrapper
Bitly
A Ruby wrapper for the bit.ly API
Stars: ✭ 435 (+388.76%)
Mutual labels:  api-client, api-wrapper
Virustotal Api
Virus Total Public/Private/Intel API
Stars: ✭ 189 (+112.36%)
Mutual labels:  api-client, api-wrapper
Notion Api
Unofficial Notion.so API
Stars: ✭ 250 (+180.9%)
Mutual labels:  api-client, api-wrapper

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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].