Our Notion integration is a read-only import and sync connector in the Admin Panel for the customer's Trust Center. The goal is to gate-keep content for security and compliance reviews through a public website. Content is either public, contact-assigned with our without NDA or entirely internal. The access level is modifiable by the workspace's content managers.
A workspace admin explicitly connects Notion via OAuth (handled through Nango), then users can browse/search their authorized Notion pages and databases, select content, and import it into our document library. For selected pages, we read page metadata and block content and convert it to markdown; if a page contains a file block (e.g., PDF/file), we download that file and attach it to the document instead.
We store the imported document plus source metadata (Notion page ID, URL, title, timestamps, parent/icon) in our tenant-scoped CMS so it can be published and managed in our app. We run incremental metadata sync every 4 hours (and allow manual sync) to keep already-linked documents up to date.
We do not create, edit, or delete anything in Notion; we only read content the user has authorized and can disconnect at any time, which stops syncing and removes the connection record from our side.
How to use
1. A workspace admin starts Notion connection in our Integrations page. 2. We create a secure OAuth session via Nango and redirect the admin to Notion consent. 3. After consent, Nango sends us the connection details, and we save only the connection reference in our tenant-scoped integrations table. 4. An authorized user opens “Import from Notion” in our document flow. 5. We call Notion (through Nango) to list/search pages and databases the connected account can access. 6. The user selects a page to import. 7. We fetch page metadata (ID, title, URL, last edited time). 8. If the page contains a supported file block (for example PDF/file), we securely download that file and store it in our document storage. 9. If no file block is present, we read page blocks and convert the content to markdown for our document editor. 10. We create/update a document in our app, linking it to the Notion source (source = notion, source_id = Notion page ID) and storing sync metadata (URL, timestamps, parent/icon info). 11. We run incremental background sync every 4 hours (and support manual sync) to refresh metadata/title/timestamps for already linked Notion-sourced documents. 12. Users can disconnect Notion at any time; we delete the active connection record on our side and stop future syncs.
- We use Notion only to read authorized content for import/sync into our Trust Center documents. - We do not create, edit, or delete Notion content. - Access is tenant-scoped and tied to explicit user authorization.
Semua merek dagang pihak ketiga (termasuk logo dan ikon) yang dirujuk di sini adalah properti pemiliknya masing-masing. Kecuali jika secara khusus ditetapkan sebagai Dibuat oleh Notion, integrasi tidak didukung atau dikelola oleh Notion. Produk atau layanan pihak ketiga yang terhubung dengan integrasi adalah Aplikasi Non-Notion (sebagaimana didefinisikan dalam Perjanjian Berlangganan Utama atau Ketentuan Penggunaan Pribadi, sebagaimana relevan). Dengan mengaktifkan integrasi apa pun atau menggunakan Galeri Integrasi Notion, Anda menyetujui Ketentuan Galeri Integrasi Notion.