Create a website
webmati create — create a new website (in the browser, or with a workspace key) and clone it straight away.
webmati create "Tiem Banh" --slug tiem-banh
One command does three things: it creates the website, approves a key for
this machine, and clones the new website into the folder tiem-banh/.
In the browser (the default)
- The CLI opens the admin (
Create the website and approve this machine in the browser). Sign in first if you are not signed in. - The page creates the website in the workspace you have open: your plan's website limit and your permissions apply, exactly as in the admin.
- The page asks you to allow this machine's key for the new website (a key for that website only, as in Sign in).
- The CLI stores the key and clones the website:
Created website "Tiem Banh" (store 43, tiem-banh).
Cloned tiem-banh into /…/tiem-banh
theme: 1 own file(s), 81 inherited (read-only in .webmati/inherited)
backend: 0 workflow(s), 0 table(s)
Next: cd tiem-banh, read AGENTS.md, edit, then `webmati validate` and `webmati push --dry-run`.
If you pick an existing website on the page instead of creating one, the CLI
says Note: the browser approved an existing website … instead of creating one and
clones that website.
Options
| Flag | Effect |
|---|---|
--slug tiem-banh | the website's address (<slug>.<platform domain>), checked the way the admin checks it; default: from the name |
--template restaurant | start from a theme template; a wrong name makes the CLI list the ones there are; default: the blank starter |
[folder] | where to clone (default: the slug); it must be empty, and it is checked before anything is created |
--days 7, --label, --locale | as for login --web |
webmati create "Mai Restaurant" --slug mai-restaurant --template restaurant
webmati create "Studio An" studio-an-local
Without a browser: --key
For a CI server, use a workspace key (created under Settings ▸ API Keys)
holding stores:write (plus domains:write with --slug).
Pass it on stdin:
webmati create "Tiem Banh" --slug tiem-banh --key -
WEBMATI_TOKEN works too. The CLI's own key (the one you approve with
login --web) is pinned to one website, so it can never create a website: the
CLI refuses before sending anything and suggests dropping --key to create in the
browser.
When it is refused
| Message | Do |
|---|---|
Plan limit reached: max N websites (with a Vietnamese line) | the plan has all its websites: upgrade, or delete one |
the address "tiem-banh" is taken by another website, or reserved | choose another --slug |
--slug "admin": this subdomain is reserved by the platform (exit code 2) | choose another slug; at least 3 characters, letters, digits and hyphens |
no template "…" here (templates: …) | pick one from the list, or drop --template |
<folder> is not empty | name another folder as the last argument |
this key cannot create websites | drop --key to create in the browser, or use a workspace key with the scopes above |
Exit codes: 0 created and cloned · 1 refused or failed · 2 bad usage.

