> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.doc-detective.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.doc-detective.com/_mcp/server.

# Go to URL (detailed)

> Navigate to an HTTP or HTTPS URL.

Navigate to an HTTP or HTTPS URL.

## Referenced In

* [goTo](/reference/schemas/goto)

## Fields

| Field     | Type                                                                             | Description                                                                                                                                                                                                                                                                                                                                                                        | Default   |       |                     |   |
| :-------- | :------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------- | ----- | ------------------- | - |
| surface   | one of: - string - object([Browser surface](/reference/schemas/browser-surface)) | Optional. The browser window/tab to navigate. Omit to navigate the active tab. With `newTab`, selects the window the tab opens in.                                                                                                                                                                                                                                                 | —         |       |                     |   |
| newTab    | one of: - boolean - string - object                                              | Optional. Open the URL in a new tab of the target window and make it active. `true` opens an anonymous tab; a string (or `{ name }`) names the tab so later steps can select it with a `tab` selector. `false` disables. Mutually exclusive with `newWindow`.                                                                                                                      | —         |       |                     |   |
| newWindow | one of: - boolean - string - object                                              | Optional. Open the URL in a new window and make it active. `true` opens an anonymous window; a string (or `{ name, tab }`) names the window — `tab` names the window's first tab. `false` disables. Mutually exclusive with `newTab`.                                                                                                                                              | —         |       |                     |   |
| url       | string                                                                           | Required. URL to navigate to. Can be a full URL or a path. If a path is provided and `origin` is specified, prepends `origin` to `url`. If a path is provided but `origin` isn't specified, attempts to navigate relative to the current URL, if any. Pattern: \`(^(http\://                                                                                                       | https\:// | /).\* | $\[A-Za-z0-9\_]+)\` | — |
| origin    | string                                                                           | Optional. Protocol and domain to navigate to. Prepended to `url`.                                                                                                                                                                                                                                                                                                                  | —         |       |                     |   |
| params    | object                                                                           | Optional. Query parameters to append to the resolved URL. Merged on top of `originParams` from config; step keys win on collision. If `url` already contains a colliding query key, the value here replaces it. Values support environment variable substitution via `$VAR` syntax. WARNING: values are embedded in the request URL and appear in test results, logs, and reports. | `{}`      |       |                     |   |
| timeout   | integer                                                                          | Optional. Maximum time in milliseconds to wait for the page to be ready. If exceeded, the goTo action fails. Minimum: 0                                                                                                                                                                                                                                                            | `30000`   |       |                     |   |
| waitUntil | object                                                                           | Optional. Configuration for waiting conditions after navigation.                                                                                                                                                                                                                                                                                                                   | —         |       |                     |   |

## Examples

```json
{
  "url": "https://www.google.com"
}
```

```json
{
  "url": "/checkout",
  "origin": "https://my-app.com",
  "newTab": "cart"
}
```

```json
{
  "url": "/admin",
  "origin": "https://my-app.com",
  "newWindow": {
    "name": "admin",
    "tab": "overview"
  }
}
```

```json
{
  "url": "/orders",
  "surface": {
    "browser": "chrome",
    "window": "admin",
    "tab": "overview"
  }
}
```