Skip to main content

What you saw

Citadel uses a few short codes to flag naming-rule violations. Each fires from a slightly different surface — pick the row that matches what you were doing.

  • E-name_required — you submitted a form that needs a name (org display name, OAuth client name) without filling it in. Fix: type a name.
  • E-display_name_too_long — your display name was longer than 80 characters. Fix: shorten it.
  • E-too_short — your username (slug) was shorter than 2 characters.
  • E-too_long — your username (slug) was longer than 39 characters.
  • E-invalid_format — your username (slug) used characters outside the allowed set, or had bad start / end / consecutive-hyphen shape.

Two kinds of name

Citadel separates the identifier (the slug — appears in URLs and git remotes) from the display name (the human-facing label). Their rules differ because their jobs differ.

  • Slugs are 3–39 characters, lowercase ASCII letters, digits, and hyphens only. Must start with a letter; must end with a letter or digit; no consecutive hyphens; not on Citadel's reserved-slug list. The full slug rules live on the slug-rules page.
  • Display names are free-form Unicode up to 80 characters. Spaces, punctuation, and non-Latin scripts are all fine. Display names don't have to be unique — two orgs can share "Acme Corp." as long as their slugs differ.

Why these limits

Slug constraints come from the URL + git-remote round-trip — the character set has to land cleanly through every shell, browser, OAuth provider, and git server in the world. The 80-character display-name cap fits typical UI rows (avatar pill, table cell) without truncation; it isn't enforced for "looks", it's enforced because longer values regularly broke layouts.

What to try

  • For a too-long slug, drop suffixes ("inc", "llc", "co") or use the org's short form. The display name carries the long version.
  • For an invalid slug character, replace spaces with hyphens and strip punctuation: My Company, Inc. my-company.
  • For an empty name, fill the field — the form will not submit otherwise.