Chrome DevTools Automation Runner avatar

Chrome DevTools Automation Runner

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Chrome DevTools Automation Runner

Chrome DevTools Automation Runner

Run low-level Chrome DevTools Protocol workflows in the cloud, including navigation, JavaScript evaluation, headers, cookies, device emulation, screenshots, PDFs, and raw CDP commands.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

ProdukDigitalAli

ProdukDigitalAli

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

21 days ago

Last modified

Share

What is Chrome DevTools Automation Runner?

Chrome DevTools Automation Runner executes low-level browser workflows directly through the Chrome DevTools Protocol (CDP) in the Apify cloud.

Instead of relying on a high-level browser automation framework for every operation, the Actor opens headless Chrome with a DevTools endpoint and sends CDP commands directly. Each configured step is written as one structured Dataset result.

This is useful for developer automation, browser diagnostics, rendering workflows, device emulation, JavaScript evaluation, screenshots, PDF generation, and advanced CDP experiments.

Supported actions

  • navigate - open a public HTTP(S) URL using Page.navigate
  • wait - pause for a fixed number of milliseconds
  • evaluate - evaluate JavaScript in the page through Runtime.evaluate
  • getHtml - return the current document HTML
  • getTitle - return the current document title
  • getText - return text content from a CSS selector
  • setExtraHTTPHeaders - set request headers through the Network domain
  • setCookies - set browser cookies through the Network domain
  • setUserAgent - override the browser user agent
  • emulateViewport - change viewport dimensions, device scale factor, and mobile mode
  • screenshot - capture a PNG using Page.captureScreenshot
  • printPdf - render the current page to PDF using Page.printToPDF
  • rawCommand - send an advanced CDP method with JSON parameters

For isolation and request safety, raw Fetch.*, Target.*, and Browser.* methods are blocked.

Example input

{
"targetUrl": "https://example.com",
"workflowName": "Example.com CDP workflow",
"actions": [
{
"type": "navigate",
"label": "Open target page"
},
{
"type": "getTitle",
"label": "Read page title"
},
{
"type": "getText",
"label": "Read H1 text",
"selector": "h1"
},
{
"type": "evaluate",
"label": "Read viewport",
"expression": "({ width: innerWidth, height: innerHeight })"
},
{
"type": "screenshot",
"label": "Capture page"
}
]
}

Example output

Each executed action is written to the default Dataset:

{
"workflowName": "Example.com CDP workflow",
"targetUrl": "https://example.com",
"step": 3,
"action": "getText",
"label": "Read H1 text",
"passed": true,
"currentUrl": "https://example.com/",
"value": "Example Domain",
"error": null,
"artifactUrl": null,
"artifactType": null
}

Screenshot and PDF actions return public Key-Value Store artifact URLs.

Advanced raw CDP commands

Use rawCommand when you need a CDP method that does not have a dedicated action yet.

Example:

{
"type": "rawCommand",
"label": "Read heap usage",
"method": "Runtime.getHeapUsage",
"params": {}
}

The command result is serialized into the value field.

Some methods are intentionally blocked because they could disable the Actor's network safety controls or escape the page-level execution model.

Screenshots and PDF generation

screenshot stores a PNG in the default Key-Value Store. Full-page screenshots are enabled by default and use page layout metrics when available.

printPdf stores a PDF in the same Key-Value Store and can optionally render in landscape mode.

Public-network safety

The Actor is intended for public websites only.

It rejects target URLs that resolve to localhost, loopback, link-local, private RFC1918 ranges, and several common non-public address ranges. Chrome requests are intercepted through the CDP Fetch domain and private-network requests are blocked during the run.

This protection is best-effort and is designed to reduce accidental or malicious SSRF-style access from a public Actor.

Use cases

Low-level browser automation

Run browser operations close to Chrome itself without maintaining your own DevTools websocket infrastructure.

Browser diagnostics

Evaluate page state, inspect rendered HTML, change headers, and run selected diagnostic CDP commands.

Rendering and document generation

Generate screenshots and PDFs from JavaScript-rendered pages.

Device and viewport emulation

Change viewport dimensions, device pixel ratio, mobile behavior, or use advanced Emulation domain commands through rawCommand.

Scheduled developer workflows

Run CDP tasks on an Apify schedule and consume step results through the Dataset API.

AI and backend tooling

Expose low-level Chrome capabilities as a reusable cloud component for developer tools, backend services, or agent workflows.

Important limitations

  • This Actor intentionally exposes advanced browser capabilities and is aimed at technical users.
  • Arbitrary JavaScript evaluation can modify the currently loaded public page.
  • Dynamic sites can change behavior or block headless browsers.
  • CDP methods can differ between Chrome versions.
  • Large getHtml or raw command results can produce large Dataset values.
  • Private and local network access is not supported.

Responsible use

Only automate websites and systems you are authorized to access. Follow applicable laws, privacy requirements, website terms, and rate limits.

This Actor is an independent developer tool. It is not affiliated with or endorsed by Google or the Chrome DevTools team.

Support

When reporting an issue, include:

  • the public target URL
  • a sanitized input example
  • the failing step number
  • the CDP method, if using rawCommand
  • the error stored in the Dataset

Do not post passwords, API keys, private cookies, or other secrets in public issues.