# create

## Usage

```bash
bdy distro route create|add [options] <identifier>
```

## Arguments

| **Argument** | **Description** |
| :--- | :--- |
| `identifier` | Human-readable ID of the distribution (required) |

## Options

| **Option** | **Description** |
| :--- | :--- |
| `-w, --workspace <domain>` | Workspace URL handle. Can be set via variable: BUDDY_WORKSPACE |
| `-p, --project <name>` | Project name. Can be set via variable: BUDDY_PROJECT |
| `-t, --type <type>` | Type of the route. Allowed: PROXY, PROXY_NO_CACHE, REDIRECT, CLOAKING |
| `-s, --subdomain <subdomain>` | Optional sub-name prepended to --domain (e.g. |
| `-d, --domain <domain>` | Zone for the route — pass the WHOLE string from `bdy domain ls` (e.g. "example.com" or "my-app.example.dev"). Do NOT split a multi-level zone into subdomain+domain; the entire bought/claimed string is one zone and goes here as-is. Use --subdomain only to route a sub-name within this zone |
| `--path <path>` | Path of the route |
| `--target <targets...>` | Target of the route (can be used multiple times). Format: "region=default,url=https://example.com,artifact=artifact:version,sandbox=sandbox:endpoint" To use "," in value use \, For external url target use url (required), region (optional) For artifact target use artifact (required), region (optional) For sandbox target use sandbox (required), region (optional) Region can be Default, NorthAmerica, Europe, Asia, Oceania, SouthAmerica, Africa, Antarctica or two letter country name If no region is specified or default is used, the target is used as the fallback for all locations. Default region is mandatory |
| `-h, --help` | display help for command |

## Examples

### ## --domain is the WHOLE zone string from `bdy domain ls` (apex like "example.com" or multi-level like "my-app.example.dev"). ## --subdomain is OPTIONAL and only prepends a NEW sub-name to that zone. Never split a multi-level zone — it goes whole into --domain. ## route an apex zone you bought ("example.com") to an artifact

```bash
bdy distro route create distro-identifier --domain="example.com" --target "artifact=artifact-identifier:version"
```

### ## route a multi-level zone you claimed ("my-app.example.dev") to an artifact — pass it WHOLE, do NOT split

```bash
bdy distro route create distro-identifier --domain="my-app.example.dev" --target "artifact=artifact-identifier:version"
```

### ## route a NEW sub-name within a zone ("api.example.com") — subdomain is "api", zone is "example.com"

```bash
bdy distro route create distro-identifier --subdomain="api" --domain="example.com" --target "url=https://backend.internal"
```

### ## route to a sandbox endpoint (no zone, distro's default domain is used)

```bash
bdy distro route create distro-identifier --subdomain="sandbox" --target "sandbox=sandbox-identifier:endpoint-name"
```

### ## route to an artifact in two locations (default + Europe override)

```bash
bdy distro route create distro-identifier --subdomain="artifact" --target "artifact=artifact-identifier:version" --target "region=Europe,artifact=artifact-identifier:version2"
```

### ## route only for js files under a sub-name

```bash
bdy distro route create distro-identifier --path="*.js" --subdomain="cdn" --target "artifact=artifact-identifier:version"
```

### ## create redirect route

```bash
bdy distro route create distro-identifier --type="REDIRECT" --path="/my-url" --target "url=https://example.com/page"
```


---
Original source: https://buddy.works/docs/cli/distro/route/create