> For the complete documentation index, see [llms.txt](https://docs.codemash.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.codemash.io/cloud/membership/settings/onboarding.md).

# Onboarding

**Where:** Membership → Settings → Onboarding · `/projects/<project>/membership/settings#onboarding`

{% hint style="info" %}
Screenshot TODO — capture comes from testing-plan area **16-membership**.
{% endhint %}

Everything about how users get into your project, in five sections.

## Registration

| Setting                                                          | What it does                                                                            |
| ---------------------------------------------------------------- | --------------------------------------------------------------------------------------- |
| Allow users to register with usernames, not just email addresses | Toggle username-based registration on or off.                                           |
| Default user role                                                | The role applied to a newly registered user when no other role is specified.            |
| Permitted user registration roles                                | The roles you may assign when creating a user programmatically (outside the dashboard). |
| Welcome email template                                           | Send a welcome email to the new user.                                                   |
| Guest registers as                                               | The role applied to a guest user by default.                                            |

## Password settings

| Setting                                      | What it does                                                                                                                                             |
| -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Password complexity                          | Minimum/maximum length and required numbers, uppercase, lowercase, and special characters. Applies to registration, password reset, and password change. |
| Password reset email template                | The email used for password resets; without one, a newly generated password is sent instead.                                                             |
| Password reset token expiration (in minutes) | How long the reset token stays valid.                                                                                                                    |
| Password reset callback URL                  | Where the user is redirected after the reset.                                                                                                            |

## Invitation via Email

An **Enabled** switch, plus the **User invitation email template**, the **Invitation token expiration (in minutes)**, and the **Invitation callback URL** the user is sent to after confirming. Used when you [invite a user](/cloud/membership/users/new.md).

## Verification via Email

An **Enabled** switch, plus the **User verification email template**, the **Verification token expiration (in minutes)**, and the **Verification callback URL**.

## Custom fields

A **Custom schema** you edit at `…/membership/settings/meta` — it defines the extra profile fields users carry beyond the built-in ones.

## Example

For a project where users self-register with email only: leave the username toggle off, set **Default user role** to `member`, pick your `welcome-email` template, and set the verification email with a 60-minute token expiration. A new sign-up then arrives as `member`, gets the welcome and verification emails, and must confirm within an hour.

## API reference

Endpoints: [Membership → Settings](/api-reference/membership/settings.md).
