Skip to main content

Workspaces

A workspace is an isolated backend environment in Xano containing your database tables, APIs, functions, tasks, and more. The CLI provides full workspace management.
Most workspace commands use the workspace ID stored in your profile. You can override it per-command with -w WORKSPACE_ID.

List Workspaces

Use -o json for the full JSON response.

Get Workspace Details

This returns details for the workspace in your current profile. To get a specific workspace:

Create a Workspace

Argument / FlagDescription
nameWorkspace name (required, positional)
-dDescription
-oOutput format: summary or json

Edit a Workspace

You can also toggle settings: Use --no-swagger or --no-require-token to disable those options.

Delete a Workspace

Add -f to skip the confirmation prompt.
Workspaces with active tenants cannot be deleted.

Branches

Branches are versions of a workspace’s business logic. They let you develop and test changes without affecting the live environment. Every workspace starts with a v1 branch.

List Branches

The output indicates which branch is (live) and which are (backup):
Branches for workspace 12345:
  v1 (live)
  v2-feature
  v3-backup (backup)
You can specify a workspace ID directly:

Get Branch Details

Create a Branch

By default, new branches are cloned from v1. To clone from a different source:
FlagDescription
-lBranch label (required)
-sSource branch to clone from (default: v1)
-dDescription
-cColor hex code (e.g., #FF5733)
-wWorkspace ID

Edit a Branch

The v1 branch cannot be renamed.

Set a Branch Live

Promote a branch so that it serves all live API traffic: You’ll be asked to confirm before the switch takes effect. Use -f to skip confirmation.
Setting a branch live immediately affects all API consumers. Make sure you’ve tested the branch thoroughly before promoting it.

Delete a Branch

Add -f to skip confirmation.
The v1 branch and the currently live branch cannot be deleted. To delete a branch that is currently live, first set a different branch live with xano branch set_live <other-branch>, then delete the original branch.

Working with Profiles and Branches

Your profile can store a default branch, so you don’t need to specify it on every command. To update which branch your profile targets: To clear the branch (use the live branch by default): This is especially useful when you want push and pull operations to target a specific branch.