WEBINARLive webinar: Terraform in Buddy, Oct 21st.Terraform: plan, approve, apply with state in Buddy. Live on October 21st.Save your seat

bdy distro

View as Markdown
$bdy distro [options] [command]

Manage distributions that route traffic from domains to artifacts, sandboxes and other targets

OPTIONS
--context <name>
Connection and scope context: default, git, link or a saved name. Overrides the globally active context for this invocation.
--examples
Show only examples; with this flag
--format
accepts text, json or jsonl
--verbose
Show REST API requests, responses, timing and retries on stderr
-h, --help
display help for command
AVAILABLE COMMANDS
Create a distribution Required scopes: DISTRIBUTION_WRITE
Delete a distribution Required scopes: DISTRIBUTION_MANAGE
Show distribution details Required scopes: DISTRIBUTION_READ
List distributions Required scopes: DISTRIBUTION_READ
Open this resource in a browser Required scopes: DISTRIBUTION_READ
Manage routes of a distribution
Update a distribution Required scopes: DISTRIBUTION_WRITE

Documentation for bdy v1.25.20

Last modified on Oct 14, 2026

Examples

Create distribution with name
bdy distro create -n name$
Create distribution in project with identifier
bdy distro create -i id --project project$
Return the result as JSON
bdy distro create --format json$
Rename distribution
bdy distro update distro-identifier -n "new name"$
Set note (pass an empty value to clear it)
bdy distro update distro-identifier --note "owned by team web"$
Set the note read by AI agents
bdy distro update distro-identifier --agent-note "deploy: manual-approval-required"$
Disable distribution
bdy distro update distro-identifier --disable$
Return the result as JSON
bdy distro update my-distro --name "New name" --format json$
List distributions
bdy distro ls$
Get distribution details
bdy distro get distro-identifier$
Delete distribution
bdy distro rm distro-identifier$
Delete distribution and automatically confirm deletion
bdy distro rm -f distro-identifier$
--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
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
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"
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)
bdy distro route create distro-identifier --subdomain="sandbox" --target "sandbox=sandbox-identifier:endpoint-name"$
Route to an artifact in two locations (default + Europe override)
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
bdy distro route create distro-identifier --path="*.js" --subdomain="cdn" --target "artifact=artifact-identifier:version"$
Create redirect route
bdy distro route create distro-identifier --type="REDIRECT" --path="/my-url" --target "url=https://example.com/page"$
Return the result as JSON
bdy distro route create my-distro --type REDIRECT --target url=https://example.com --format json$
Route update requires full param set (it's not partial)
bdy distro route update distro-identifier route-id --subdomain=new --domain=test.com --target url=https://example.com$
Return the result as JSON
bdy distro route update my-distro route-id --path /new --format json$
List routes
bdy distro route ls distro-identifier$
Get route details (route id from `bdy distro route ls`)
bdy distro route get distro-identifier 12345$
Delete route (find by "bdy distro route ls distro-identifier")
bdy distro route rm distro-identifier route-id$