Browserless

Powerful browser automation built for developers

Integrate the Browserless API with the Data Stores API

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

Generate PDF from HTML String with the Browserless API
 
Try it
Add or update a single record with the Data Stores API

Add or update a single record in your Pipedream Data Store.

 
Try it
Take a Screenshot with the Browserless API
 
Try it
Add or update multiple records with the Data Stores API

Add or update multiple records to your Pipedream Data Store.

 
Try it
Check for existence of key with the Data Stores API

Check if a key exists in your Pipedream Data Store or create one if it doesn't exist.

 
Try it

Connect Browserless

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import puppeteer from 'puppeteer-core@14.1.0';

export default defineComponent({
  props: {
    browserless: {
      type: "app",
      app: "browserless",
    }
  },
  async run({steps, $}) {
    // See the browserless docs for more info:
    // https://www.browserless.io/docs/
    const browser = await puppeteer.connect({ 
      browserWSEndpoint: `wss://chrome.browserless.io?token=${this.browserless.$auth.api_key}` 
    })
    const page = await browser.newPage()
    
    const url = "https://example.com"
    const type = "png"
  
    await page.goto(url)
    const screenshot = await page.screenshot()
    
    // export the base64-encoded screenshot for use in future steps,
    // along with the image type and filename
    $.export("screenshot", Buffer.from(screenshot, 'binary').toString('base64'))
    $.export("type", type)
    $.export("filename",`${url.replace(/[&\/\\#, +()$~%.'":*?<>{}]/g, '_')}-${+new Date()}.${type}`)
    
    await browser.close()
  },
})

Connect Data Stores

1
2
3
4
5
6
7
8
9
10
11
export default defineComponent({
  props: {
    myDataStore: {
      type: "data_store",
    },
  },
  async run({ steps, $ }) {
    await this.myDataStore.set("key_here","Any serializable JSON as the value")
    return await this.myDataStore.get("key_here")
  },
})