Authentication

Forgot Password

A two-step password recovery flow that starts with an email-based reset request and finishes with a code-confirmed password change, all inside a single component view.

Best forPassword recovery journeys

Link it directly from the Sign In screen when users cannot access their account.

Flow typeTwo steps, one screen

Users stay in one place while the component switches between reset request and password confirmation.

Exit pathReturn to Sign In

The sign-in link stays visible throughout both steps.

What it does

Four things worth knowing

BuilderForgotPassword combines the whole password recovery sequence into one component. Users request a code, then immediately switch into the password reset step without a page reload or route change.

Email-based reset request

Step 1 collects the user’s email and triggers the reset code request through the backend.

Code and password confirmation

Step 2 collects the verification code, new password, and confirmation before completing the reset.

Password guidance built in

Shows password requirement hint text and includes secure inputs with show/hide toggles.

Automatic return path

After a successful reset, the user is routed back to Sign In so they can log in with the new password immediately.

Builder setup

Find it, drop it, wire it up

Where to find it

  1. Open the Builder component picker.
  2. Go to Authentication.
  3. Select Forgot Password.
  4. Drop it onto a recovery screen linked from Sign In.

Recommended setup

  1. Connect signinScreenId so users can always get back to the login screen.
  2. Customize both step headings if your tone changes between request and confirmation.
  3. Keep the same accent color as Sign In and Sign Up for visual continuity.
  4. Use one dedicated screen only - the component handles the step switching internally.
Category: AuthenticationComponent: BuilderForgotPasswordRegistry key: forgot-password
Props

What you can configure in the editor

GroupPropDefaultWhat it controls
Step 1 textheadingText, subtitleTextReset Password, long helper copyControls the first-step heading and the message that explains the email reset request.
Step 2 textconfirmHeadingText, confirmSubtitleTextSet New Password, long helper copyControls the second-step heading and the guidance shown when entering the code and new password.
BrandingprimaryColor, logoUrl, logoText#007AFF, none, Your AppSets the main accent color and the optional brand presentation at the top of the form.
LayoutcustomWidth, sizeVariantauto, preset-basedAdjusts width and all related sizing for text, spacing, and buttons.
NavigationsigninScreenId, onScreenNavigate, onBackToSigninnoneControls where the persistent return link goes and where success should land.
DataappId, tenantIdRuntime contextScopes the reset requests to the active app and backend tenant.
OverridesonSubmitnoneLets advanced builders replace the default step-one request behavior with a custom backend flow.
RuntimeisPreview, homeScreenIdfalse, reservedTurns interactivity on in preview/live mode. homeScreenId is currently reserved and not used in the flow.
Toggles & colours

Make it yours

SettingWhereWhat changes
Primary ColorStyleReset action buttons, interactive links, and focus highlights in both steps.
Component SizeStyleGlobal scaling for spacing, field sizes, and buttons in request and confirm states.
Heading TextContentMain heading shown in step 1 when requesting a reset code.
Confirm Heading TextContentMain heading shown in step 2 while setting a new password.
Subtitle TextsContentGuidance copy for each step, including reset instructions and password rules.
Tips

Common mistakes to avoid

One screen is enough

You do not need separate builder screens for request and confirmation. The component swaps views internally.

Keep the password hint visible

The requirement hint helps reduce failed reset attempts, especially in stricter-password apps.

Preview mode is required

The inputs and buttons remain disabled on the canvas. Test the full reset experience in preview mode instead.