mendableai/data-connectors

Add Notion Data Connector

Closed this issue ยท 15 comments

Add a Notion data connector that grabs all the content from all the pages in the authorized workspaces. That means it needs to attempt to get all the contents inside all nested databases in notion etc. Should authorize with nango etc, following the github/google drive implementations.

This should help implement the getDocuments function: https://github.com/NangoHQ/nango/blob/master/integration-templates/notion/notion-pages.ts

Other requirements:

  • Make sure to add proper tests inside the tests folder
  • If an added env is required, please update the env.example

https://docs.nango.dev/integrations/all/notion

DO NOT START WORKING ON THIS BEFORE GETTING ASSIGNED, OTHERWISE WE CAN'T AWARD THE BOUNTY

@mogery wanna work on this? If so, I create a bounty and assign you to it.

mogery commented

Hell yeah!

/bounty $35

๐Ÿ’Ž $35 bounty created by mendableai
๐Ÿ™‹ If you'd like to work on this issue, comment below to get assigned
๐Ÿ‘‰ To claim this bounty, submit a pull request that includes the text /claim #8 somewhere in its body
๐Ÿ“ Before proceeding, please make sure you can receive payouts in your country
๐Ÿ’ต Payment arrives in your account 2-5 days after the bounty is rewarded
๐Ÿ’ฏ You keep 100% of the bounty award
~~๐Ÿ™ Thank you for contributing to mendableai/data-connectors! ~~

๐Ÿ‘‰ Add a bounty โ€ข Share on socials

DO NOT START WORKING ON THIS BEFORE GETTING ASSIGNED, OTHERWISE WE CAN'T AWARD THE BOUNTY
Other attempts will be allowed if the user assigned does not open a PR within 48 hours.

Awesome! Assigned to you! @mogery

mogery commented

@nickscamara What format should the pages be returned in? Is JSON fine, should I convert everything to markdown for easy parsing, or perhaps just dump out all the text?

You can just dump all the raw text into content .

@mogery Actually, if converting to markdown is easy and won't take too much time, that would be great

mogery commented

Due to API limitations, only Notion pages that have been connected with the integration (and their children) will be available to the data connector. I've recorded a GIF on how to do this: my integration in this example is called "mendable test".

ScreenRecording2024-01-30at21 20 00-ezgif com-video-to-gif-converter

@mogery sounds good. Would the child page of that page be accessible if you add a connection to the parent page? Also, does the same apply to databases? Thank you :)

mogery commented

@mogery sounds good. Would the child page of that page be accessible if you add a connection to the parent page? Also, does the same apply to databases? Thank you :)

Yup, access travels down the parent-child tree. Checking for databases now.

mogery commented

Yeah, access also travels to databases, and nested pages are automatically included in the list query :) Opening PR...

Screenshot 2024-01-30 at 21 31 55

Awesome!!! @mogery

๐Ÿ’ก @mogery submitted a pull request that claims the bounty. You can visit your bounty board to reward.

๐ŸŽ‰๐ŸŽˆ @mogery has been awarded $35! ๐ŸŽˆ๐ŸŽŠ