JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 2
  • Score
    100M100P100Q45428F
  • License MIT

Get unlimited response of Notion API

Package Exports

  • @narkdown/client
  • @narkdown/client/dist/index.js

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 (@narkdown/client) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

@narkdown/client

Get unlimited response of Notion API

codecov XO code style npm version license: MIT

Why?

This is an extension of the @notionhq/client to obtain total results for the Paginated endpoints of the Notion API.

The goal is to obtain a total results using the same interface as the Notion API.

Install

$ npm install @narkdown/client

Usage

const {NarkdownClient} = require('@narkdown/client');

// Initializing a client
const narkdown = new NarkdownClient({
  auth: process.env.NOTION_TOKEN,
});

API

It extends @notionhq/client

See the complete list of endpoints in the Notion API reference

unlimited.blocks.children.list

Unlimited version of Retrieve block children

const {NarkdownClient} = require('@narkdown/client');

const narkdown = new NarkdownClient({auth: process.env.NOTION_API_KEY});

(async () => {
  const blockId = 'b55c9c91-384d-452b-81db-d1ef79372b75';
  const response = await narkdown.unlimited.blocks.children.list({
    block_id: blockId,
  });
  console.log(response);
})();

unlimited.databases.query

Unlimited version of Query a database

const {NarkdownClient} = require('@narkdown/client');

const narkdown = new NarkdownClient({auth: process.env.NOTION_API_KEY});

(async () => {
  const databaseId = '897e5a76-ae52-4b48-9fdf-e71f5945d1af';
  const response = await narkdown.unlimited.databases.query({
    database_id: databaseId,
    filter: {
      or: [
        {
          property: 'In stock',
          checkbox: {
            equals: true,
          },
        },
        {
          property: 'Cost of next trip',
          number: {
            greater_than_or_equal_to: 2,
          },
        },
      ],
    },
    sorts: [
      {
        property: 'Last ordered',
        direction: 'ascending',
      },
    ],
  });
  console.log(response);
})();

unlimited.databases.list

Unlimited version of List databases (deprecated)

const {NarkdownClient} = require('@narkdown/client');

const narkdown = new NarkdownClient({auth: process.env.NOTION_API_KEY});

(async () => {
  const response = await narkdown.unlimited.databases.list();
  console.log(response);
})();

unlimited.users.list

Unlimited version of List all users

const {NarkdownClient} = require('@narkdown/client');

const narkdown = new NarkdownClient({auth: process.env.NOTION_API_KEY});

(async () => {
  const response = await narkdown.unlimited.users.list();
  console.log(response);
})();

unlimited.search

Unlimited version of Search

const {NarkdownClient} = require('@narkdown/client');

const narkdown = new NarkdownClient({auth: process.env.NOTION_API_KEY});

(async () => {
  const response = await narkdown.unlimited.search({
    query: 'External tasks',
    sort: {
      direction: 'ascending',
      timestamp: 'last_edited_time',
    },
  });
  console.log(response);
})();

License

MIT