*** title: Puppeteer Page description: Complete Page method reference for the Puppeteer driver. --------------------------------------------------------------------- All `Page` methods available when using the **Puppeteer** driver. Access via `runtime.page` after launching a Puppeteer runtime. Every method below is a remote call. The SDK translates it into a structured step sent to a single endpoint: ``` POST /v1/workspaces/{workspaceId}/execute ``` ```json { "runtime": "my-browser", "steps": [ { "call": "page.goto", "args": ["https://example.com"] } ] } ``` The `call` field maps directly to the method name. `args` is a JSON array of the method's arguments. You can batch multiple steps in one request. ## Navigation ### goto(url, options?) Navigate to a URL. ```ts await runtime.page.goto('...'); ``` | Parameter | Type | Required | Description | | --------- | ---------------------- | -------- | ----------- | | `url` | `string` | Yes | — | | `options` | `PuppeteerGotoOptions` | No | — | **Returns** `PuppeteerHTTPResponse \| null` — The main resource response, or null if navigating to about:blank. [Upstream docs](https://pptr.dev/api/puppeteer.page.goto) *** ### reload(options?) Reload the page. ```ts await runtime.page.reload(); ``` | Parameter | Type | Required | Description | | --------- | ------------------------ | -------- | ----------- | | `options` | `PuppeteerReloadOptions` | No | — | **Returns** `PuppeteerHTTPResponse \| null` [Upstream docs](https://pptr.dev/api/puppeteer.page.reload) *** ### goBack(options?) Navigate back in history. ```ts await runtime.page.goBack(); ``` | Parameter | Type | Required | Description | | --------- | ----------------------------------- | -------- | ----------- | | `options` | `PuppeteerWaitForNavigationOptions` | No | — | **Returns** `PuppeteerHTTPResponse \| null` [Upstream docs](https://pptr.dev/api/puppeteer.page.goback) *** ### goForward(options?) Navigate forward in history. ```ts await runtime.page.goForward(); ``` | Parameter | Type | Required | Description | | --------- | ----------------------------------- | -------- | ----------- | | `options` | `PuppeteerWaitForNavigationOptions` | No | — | **Returns** `PuppeteerHTTPResponse \| null` [Upstream docs](https://pptr.dev/api/puppeteer.page.goforward) *** ### waitForNavigation(options?) Wait for navigation to complete. ```ts await runtime.page.waitForNavigation(); ``` | Parameter | Type | Required | Description | | --------- | ----------------------------------- | -------- | ----------- | | `options` | `PuppeteerWaitForNavigationOptions` | No | — | **Returns** `PuppeteerHTTPResponse \| null` [Upstream docs](https://pptr.dev/api/puppeteer.page.waitfornavigation) *** ## Page Info ### title() Get the page title. ```ts await runtime.page.title(); ``` **Returns** `string` [Upstream docs](https://pptr.dev/api/puppeteer.page.title) *** ### url() Get the current URL. ```ts await runtime.page.url(); ``` **Returns** `string` [Upstream docs](https://pptr.dev/api/puppeteer.page.url) *** ### content() Get the full HTML content. ```ts await runtime.page.content(); ``` **Returns** `string` [Upstream docs](https://pptr.dev/api/puppeteer.page.content) *** ### setContent(html, options?) Set the page content. ```ts await runtime.page.setContent('...'); ``` | Parameter | Type | Required | Description | | --------- | ------------------------------------------ | -------- | ----------- | | `html` | `string` | Yes | — | | `options` | `{ timeout?: number; waitUntil?: string }` | No | — | [Upstream docs](https://pptr.dev/api/puppeteer.page.setcontent) *** ### setViewport(viewport) Set the viewport size. Pass null to reset to default. ```ts await runtime.page.setViewport(/* viewport */); ``` | Parameter | Type | Required | Description | | ---------- | --------------------------- | -------- | ----------- | | `viewport` | `PuppeteerViewport \| null` | Yes | — | [Upstream docs](https://pptr.dev/api/puppeteer.page.setviewport) *** ### viewport() Get the current viewport. ```ts await runtime.page.viewport(); ``` **Returns** `PuppeteerViewport \| null` [Upstream docs](https://pptr.dev/api/puppeteer.page.viewport) *** ## Actions ### click(selector, options?) Click on an element matching the selector. ```ts await runtime.page.click('...'); ``` | Parameter | Type | Required | Description | | ---------- | ----------------------- | -------- | ----------- | | `selector` | `string` | Yes | — | | `options` | `PuppeteerClickOptions` | No | — | [Upstream docs](https://pptr.dev/api/puppeteer.page.click) *** ### type(selector, text, options?) Type text into an element. ```ts await runtime.page.type('...', '...'); ``` | Parameter | Type | Required | Description | | ---------- | ------------------------------ | -------- | ----------- | | `selector` | `string` | Yes | — | | `text` | `string` | Yes | — | | `options` | `PuppeteerKeyboardTypeOptions` | No | — | [Upstream docs](https://pptr.dev/api/puppeteer.page.type) *** ### focus(selector) Focus on an element. ```ts await runtime.page.focus('...'); ``` | Parameter | Type | Required | Description | | ---------- | -------- | -------- | ----------- | | `selector` | `string` | Yes | — | [Upstream docs](https://pptr.dev/api/puppeteer.page.focus) *** ### hover(selector) Hover over an element. ```ts await runtime.page.hover('...'); ``` | Parameter | Type | Required | Description | | ---------- | -------- | -------- | ----------- | | `selector` | `string` | Yes | — | [Upstream docs](https://pptr.dev/api/puppeteer.page.hover) *** ### select(selector, ...values) Select options in a \