Email-shape rules.
What Citadel accepts as a valid email address on profile fields and OAuth client metadata.
What triggered this
You submitted a form with an email field whose value wasn't shaped like an email — typically a missing @, whitespace inside the address, or an empty local-part / domain-part.
The rule
Citadel performs a deliberately-light check: there must be exactly one @, with at least one character before and after, and no whitespace anywhere in the value. Every byte the form accepts is a byte SMTP would also accept.
We don't validate against a regex of every published RFC variant — those reject perfectly valid addresses, and they don't catch the most common typos anyway. The 254-byte length cap comes from RFC 5321 §4.5.3.1 and is enforced server-side.
What to try
- Confirm there's exactly one @. Two (a@b@c) or none always reject.
- Strip leading / trailing whitespace and any spaces inside the address. A copy-paste from a chat thread sometimes carries a no-break space that looks identical to a regular space.
- Make sure the local part isn't empty (@example.com) and the domain isn't empty (user@).
- If you intended to use a different field (e.g. you typed your username into an email field), correct it.
Where this fires
- Public email on your profile (Settings → Profile → Public profile).
- Billing email on an organization profile (Organization Settings → Profile → Manage).