Puppeteer

Puppeteer is a Node.js library which provides a high-level API to control Chrome/Chromium over the DevTools Protocol.

Integrate the Puppeteer API with the Notion API

Setup the Puppeteer API trigger to run a workflow which integrates with the Notion API. Pipedream's integration platform allows you to integrate Puppeteer and Notion remarkably fast. Free for developers.

Get HTML with Puppeteer API on New Database from Notion API
Notion + Puppeteer
 
Try it
Get HTML with Puppeteer API on New Page in Database from Notion API
Notion + Puppeteer
 
Try it
Get HTML with Puppeteer API on Page or Subpage Updated from Notion API
Notion + Puppeteer
 
Try it
Get HTML with Puppeteer API on Updated Page ID from Notion API
Notion + Puppeteer
 
Try it
Get HTML with Puppeteer API on Updated Page in Database from Notion API
Notion + Puppeteer
 
Try it
New Database from the Notion API

Emit new event when a database is created. Note: Databases must be shared with your Pipedream Integtration to trigger event.

 
Try it
New Page in Database from the Notion API

Emit new event when a page in a database is created

 
Try it
Page or Subpage Updated from the Notion API

Emit new event when a page or one of its sub-pages is updated.

 
Try it
Updated Page ID from the Notion API

Emit new event when a selected page is updated

 
Try it
Updated Page in Database from the Notion API

Emit new event when a page in a database is updated. To select a specific page, use Updated Page ID instead

 
Try it
Get HTML with the Puppeteer API

Get the HTML of a webpage using Puppeteer. See the documentation

 
Try it
Append Block to Parent with the Notion API

Creates and appends blocks to the specified parent. See the documentation

 
Try it
Get Page Title with the Puppeteer API

Get the title of a webpage using Puppeteer. See the documentation

 
Try it
Create Page with the Notion API

Creates a page from a parent page. The only valid property is title. See the documentation

 
Try it
Get PDF with the Puppeteer API

Generate a PDF of a page using Puppeteer. See the documentation

 
Try it

Overview of Puppeteer

Puppeteer is a Node.js library which provides a high-level API to control Chrome/Chromium over the DevTools Protocol. Puppeteer runs in headless mode on Chromium on Pipedream.

Using Puppeteer you can perform tasks including:

  • Capture Screenshots: Convert webpages into images.
  • Processing PDFs: parse and scan PDFs.
  • Web Scraping: Extract data from websites.
  • UI/UX Testing: Verify user interface and experience.
  • Integration with Test Frameworks: Combine with testing frameworks.
  • Task Automation: Automate web-related tasks like form filling.
  • Functional Testing: Automate user interactions to test web application functionality.
  • Regression Testing: Ensure new code changes don't introduce bugs.

Connect Puppeteer

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 import { puppeteer } from '@pipedream/browsers';

export default defineComponent({
  async run({steps, $}) {
    const browser = await puppeteer.browser();
    
    // Interact with the web page programmatically
    // See Puppeeter's Page documentation for available methods:
    // https://pptr.dev/api/puppeteer.page
    const page = await browser.newPage();

    await page.goto('https://pipedream.com/');
    const title = await page.title();
    const content = await page.content();

    // The browser needs to be closed, otherwise the step will hang
    await browser.close();

    return { title, content }
  },
})

Overview of Notion

Notion's API allows for the creation, reading, updating, and deleting of pages, databases, and their contents within Notion. Leveraging Pipedream's platform, you can build workflows that connect Notion with a myriad of other services to automate tasks such as content management, task tracking, and data synchronization. With Pipedream's serverless execution, you can trigger these workflows on a schedule, or by external events from other services, without managing any infrastructure.

Connect Notion

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import { axios } from "@pipedream/platform"
export default defineComponent({
  props: {
    notion: {
      type: "app",
      app: "notion",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://api.notion.com/v1/users/me`,
      headers: {
        Authorization: `Bearer ${this.notion.$auth.oauth_access_token}`,
        "Notion-Version": `2021-08-16`,
      },
    })
  },
})