Components
SignUp
Registration form that walks users through email + password (or passkey, or social).
<SignUp />
Renders a complete registration flow. The server decides which methods to surface (email+password vs. passkey-first vs. social-only) based on your organization's registration_mode.
Import
Usage
import { RegistrationForm }
Props
| Prop | Type | Default | Description |
|---|---|---|---|
returnTo | string | / | URL to return to after registration |
organizationId | string | undefined | Attach new identity to an org on creation |
inviteToken | string | undefined | Accept an invitation token during signup |
onSuccess | (result: { identity, session? }) => void | undefined | Fires after successful registration |
onError | (err: Error) => void | undefined | Fires on terminal error |
hideSocialButtons | boolean | false | -- |
hideSignInLink | boolean | false | -- |
Registration modes
The form reacts to your org's registration_mode:
| Mode | Form UX |
|---|---|
public | Open sign-up; email + password + social |
by_invitation_only | Form is gated; requires inviteToken prop |
by_invitation_or_domain | Form is gated unless email domain matches a verified org domain |
sso_only | Form hidden; shows "Contact your admin" |
closed | 404s on the API side |
Post-signup verification
If email verification is required (default), users are redirected to /verify after submit where they enter the code from their email. If you want to skip that intermediate screen, set autoRedirectToVerify={false} and drive verification yourself.
Accessibility
Same as SignIn. Password strength meter announces via aria-live="polite".