Forgot password
We’ll email a 60-minute reset link if that address has a Kumir account.
Forgot topics
Account
Same reply if the email is unknown
Unknown addresses get the same generic copy. Kumir does not 404.
Link lasts 60 minutes
The emailed link expires after one hour. Ask again if it timed out.
Too many requests stay generic
After three asks in an hour the API still returns the same copy.
Enter the code at /reset
After the email, web opens /reset. Native stays on the splash reset step.
Redirects stay on Kumir
redirectFromSearch only allows same-origin paths. Default return is /login.
Not this page
Rules
No invented Resend key
EMAIL_PROVIDER=resend only when RESEND_API_KEY is set. Otherwise Kumir logs.
/forgot is reserved, not a username
Nav Forgot password? goes here. That path is reserved, like /login and /signup.
The form never leaks a reset code
POST always returns the generic message. It does not reveal whether the email exists.