# Create the owner account - **Route:** `/register` - **API:** POST /v1/auth/register - **Visual reference:** `source/RenewCMS Screens Auth.dc.html`, group "Register" (open it in a browser; each state is drawn at desktop and mobile, with a light/dark toggle). Seen once, on a fresh install. After registering, the new user is logged in but not yet verified, and goes to /register/pending. ## States ### Default **Trigger:** Registration is open. - Heading: **Create the owner account** - Description: "This creates the single admin account for this site. Once it's verified, registration closes." - Field `Username`: placeholder "e.g. marta"; counter "0 / 20"; help "Letters and numbers, 3 to 20 characters. You'll use it to log in." - Field `Email`: placeholder "you@example.com"; help "We'll send a verification link here." - Field `Password`: password with show/hide; checklist "At least 8 characters" (unmet) - Submit button: "Create account" - Footer: Already set up? [Log in] ### Validation errors **Trigger:** Checked on blur and on submit, using the same rules as the API. - Heading: **Create the owner account** - Description: "This creates the single admin account for this site. Once it's verified, registration closes." - Field `Username`: placeholder "e.g. marta"; value "ma"; counter "2 / 20" in error; **error "Use 3 to 20 characters."** - Field `Email`: placeholder "you@example.com"; value "marta@renew"; **error "Enter a full email address, like name@example.com."** - Field `Password`: value "lime"; password with show/hide; checklist "At least 8 characters" (err) - Submit button: "Create account" - Footer: Already set up? [Log in] ### Filled, valid **Trigger:** Every rule is met and the checklist item turns green. - Heading: **Create the owner account** - Description: "This creates the single admin account for this site. Once it's verified, registration closes." - Field `Username`: placeholder "e.g. marta"; value "marta"; counter "5 / 20"; help "Letters and numbers, 3 to 20 characters. You'll use it to log in." - Field `Email`: placeholder "you@example.com"; value "marta@renew.example"; help "We'll send a verification link here." - Field `Password`: value "limewash2026"; password with show/hide; password shown; checklist "At least 8 characters" (met) - Submit button: "Create account" - Footer: Already set up? [Log in] ### Submitting **Trigger:** Fields and button are disabled. - Heading: **Create the owner account** - Description: "This creates the single admin account for this site. Once it's verified, registration closes." - Field `Username`: placeholder "e.g. marta"; value "marta"; counter "5 / 20"; help "Letters and numbers, 3 to 20 characters. You'll use it to log in." - Field `Email`: placeholder "you@example.com"; value "marta@renew.example"; help "We'll send a verification link here." - Field `Password`: value "limewash2026"; password with show/hide; checklist "At least 8 characters" (met) - Submit button: "Creating account…", loading - Footer: Already set up? [Log in] ### Registration closed (403) **Trigger:** Someone already verified an owner account. The form is replaced. - ResultPanel (info, user-x): **This site already has an owner**; text "Log in instead."; actions "Go to log in" (primary) ### Server error **Trigger:** A 500 or no response. The values are kept. - Alert (error, circle-x): **Couldn't create the account** "Something went wrong on the server. Try again in a moment." - Heading: **Create the owner account** - Description: "This creates the single admin account for this site. Once it's verified, registration closes." - Field `Username`: placeholder "e.g. marta"; value "marta"; counter "5 / 20"; help "Letters and numbers, 3 to 20 characters. You'll use it to log in." - Field `Email`: placeholder "you@example.com"; value "marta@renew.example"; help "We'll send a verification link here." - Field `Password`: value "limewash2026"; password with show/hide; checklist "At least 8 characters" (met) - Submit button: "Create account" - Footer: Already set up? [Log in]