What do you want to automate

with QStash and Puppeteer?

Prompt, edit and deploy AI agents that connect to QStash, Puppeteer and 2,800+ other apps in seconds.

Trusted by 1,000,000+ developers from startups to Fortune 500 companies

Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo
Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo
Get HTML with Puppeteer API on New Topic Webhook from QStash API
QStash + Puppeteer
 
Try it
Get Page Title with Puppeteer API on New Topic Webhook from QStash API
QStash + Puppeteer
 
Try it
Get PDF with Puppeteer API on New Topic Webhook from QStash API
QStash + Puppeteer
 
Try it
Screenshot a Page with Puppeteer API on New Topic Webhook from QStash API
QStash + Puppeteer
 
Try it
New Topic Webhook from the QStash API

Emit new events on each new QStash topic message

 
Try it
Create Endpoint with the QStash API

Create a new HTTP endpoint on a QStash topic.

 
Try it
Get HTML with the Puppeteer API

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

 
Try it
Create Topic with the QStash API

Create a new QStash topic that emits to multiple endpoints.

 
Try it
Get Page Title with the Puppeteer API

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

 
Try it
List Endpoints with the QStash API

Lists all your existing QStash endpoints.

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

Overview of QStash

QStash API offers a secure, scalable, and simple way to manage message queues and defer tasks. Using this API, you can enqueue messages, schedule tasks to run after a delay, and ensure that tasks are executed exactly once, leveraging the power of serverless architecture. With Pipedream's ability to connect to a multitude of services, you can build complex workflows that trigger actions in other apps based on events in QStash, allowing you to automate cross-application business processes with ease.

Connect QStash

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
33
34
35
36
import { axios } from '@pipedream/platform';


export default defineComponent({
  props: {
    qstash: {
      type: "app",
      app: "qstash",
    },
    callback_url: {
      type: "string",
      label: "Callback URL",
      description: "A URL that will be called by QStash with the body given",
    },
    delay: {
      type: "integer",
      label: "Delay",
      description: "Delay the HTTP request to the callback URL (seconds)",
      default: 0,
    }
  },
  async run({steps, $}) {
    return axios($, {
      url: `https://qstash.upstash.io/v2/publish/${this.callback_url}`,
      method: 'POST',
      headers: {
        'Authorization': `Bearer ${this.qstash.$auth.qstash_token}`,
        'Upstash-Delay': `${this.delay}s`
      },
      data: {
        hello: 'world'
      }
    });
  }
})

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 }
  },
})

Trusted by 1,000,000+ developers from startups to Fortune 500 companies

Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo
Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo