*** title: Puppeteer Frame description: Complete Frame method reference for the Puppeteer driver. ---------------------------------------------------------------------- All `Frame` methods available when using the **Puppeteer** driver. Access via `frame` 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": "frame.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 the frame to a URL. ```ts await frame.goto('...'); ``` | Parameter | Type | Required | Description | | --------- | ---------------------- | -------- | ----------- | | `url` | `string` | Yes | — | | `options` | `PuppeteerGotoOptions` | No | — | **Returns** `PuppeteerHTTPResponse \| null` [Upstream docs](https://pptr.dev/api/puppeteer.frame.goto) *** ### waitForNavigation(options?) Wait for navigation to complete. ```ts await frame.waitForNavigation(); ``` | Parameter | Type | Required | Description | | --------- | ----------------------------------- | -------- | ----------- | | `options` | `PuppeteerWaitForNavigationOptions` | No | — | **Returns** `PuppeteerHTTPResponse \| null` [Upstream docs](https://pptr.dev/api/puppeteer.frame.waitfornavigation) *** ## Page Info ### url() The frame's URL. ```ts await frame.url(); ``` **Returns** `string` [Upstream docs](https://pptr.dev/api/puppeteer.frame.url) *** ### title() The frame's title. ```ts await frame.title(); ``` **Returns** `string` [Upstream docs](https://pptr.dev/api/puppeteer.frame.title) *** ### content() The full HTML contents of the frame. ```ts await frame.content(); ``` **Returns** `string` [Upstream docs](https://pptr.dev/api/puppeteer.frame.content) *** ### setContent(html, options?) Set the content of the frame. ```ts await frame.setContent('...'); ``` | Parameter | Type | Required | Description | | --------- | ------------------------------------------ | -------- | ----------- | | `html` | `string` | Yes | — | | `options` | `{ timeout?: number; waitUntil?: string }` | No | — | [Upstream docs](https://pptr.dev/api/puppeteer.frame.setcontent) *** ## Actions ### click(selector, options?) Click on an element. ```ts await frame.click('...'); ``` | Parameter | Type | Required | Description | | ---------- | ----------------------- | -------- | ----------- | | `selector` | `string` | Yes | — | | `options` | `PuppeteerClickOptions` | No | — | [Upstream docs](https://pptr.dev/api/puppeteer.frame.click) *** ### type(selector, text, options?) Type text into an element. ```ts await frame.type('...', '...'); ``` | Parameter | Type | Required | Description | | ---------- | ------------------------------ | -------- | ----------- | | `selector` | `string` | Yes | — | | `text` | `string` | Yes | — | | `options` | `PuppeteerKeyboardTypeOptions` | No | — | [Upstream docs](https://pptr.dev/api/puppeteer.frame.type) *** ### focus(selector) Focus on an element. ```ts await frame.focus('...'); ``` | Parameter | Type | Required | Description | | ---------- | -------- | -------- | ----------- | | `selector` | `string` | Yes | — | [Upstream docs](https://pptr.dev/api/puppeteer.frame.focus) *** ### hover(selector) Hover over an element. ```ts await frame.hover('...'); ``` | Parameter | Type | Required | Description | | ---------- | -------- | -------- | ----------- | | `selector` | `string` | Yes | — | [Upstream docs](https://pptr.dev/api/puppeteer.frame.hover) *** ### select(selector, ...values) Select options in a \