> ## Documentation Index
> Fetch the complete documentation index at: https://learn.workflow.dog/llms.txt
> Use this file to discover all available pages before exploring further.

# Build URL

> Construct an absolute URL from a base, path, query parameters, and fragment.

The **Build URL** action assembles and safely serializes a URL. It resolves an
optional path against the base URL, sets query parameters, and adds a fragment.

## Inputs

| Input                | Type              | Required  | Description                                            |
| -------------------- | ----------------- | --------- | ------------------------------------------------------ |
| **Base URL**         | String            | Yes       | A valid absolute base URL.                             |
| **Path**             | String            | No        | A relative or absolute path resolved against the base. |
| **Query Parameters** | Key/value entries | No        | Parameter names and string values to set.              |
| **Name**             | String            | Per entry | The query-parameter name.                              |
| **Value**            | String            | Per entry | The query-parameter value.                             |
| **Fragment**         | String            | No        | The hash fragment, with or without a leading `#`.      |

## Outputs

| Output  | Type   | Description                  |
| ------- | ------ | ---------------------------- |
| **URL** | String | The complete serialized URL. |

## Example

Configure:

| Setting         | Value                         |
| --------------- | ----------------------------- |
| **Base URL**    | `https://api.example.com/v1/` |
| **Path**        | `customers/42`                |
| Query `include` | `orders`                      |
| **Fragment**    | `details`                     |

The result is:

```text theme={null}
https://api.example.com/v1/customers/42?include=orders#details
```

Parameter names and values are percent-encoded automatically. A parameter set
here replaces an existing base-URL parameter with the same name.

<Warning>
  URL path resolution follows browser rules. A relative path preserves the last
  base segment only when the base path ends in `/`; a path beginning with `/`
  replaces the base path from the host root.
</Warning>
