Missing "Back to login" button for Password Reset Expired Error

I’m calling the following to customize the reset password prompts:

curl --request PUT \
  --url 'https://my-url.com/api/v2/prompts/reset-password/custom-text/en' \
  --header 'authorization: Bearer <TOKEN>' \
  --header 'content-type: application/json' \
  --data '{ "reset-password": { "description": "Enter and confirm your password below", "buttonText": "Confirm Password", "title": "Set Your Password", "pageTitle": "Set Password"}, "reset-password-request": { "title": "Reset Password", "backToLoginLinkText": "Back to login" }, "reset-password-success": { "buttonText": "Back to login", "eventTitle": "Password Set!", "description": "Your password has been created successfully" }, "reset-password-error": {"descriptionExpired": "To reset your password, return to the login page and select \"Reset Password\" to send a new email.", "descriptionGeneric": "To reset your password, return to the login page and select \"Reset Password\" to send a new email.", "descriptionUsed": "This link has already been used. To reset your password, return to the login page and select \"Reset Password\" to send a new email.", "backToLoginLinkText": "Back to login"}, "reset-password-email": {"emailDescription": "Please check ${email} for instructions to reset your password." }}'

The backToLoginLinkText key is defined and the button appears for the password reset + invalid (already used) link, but the button is missing from the Expired Link prompt:

How can I get the back to login button to appear for this prompt?

Hi @samantha

Welcome to the Auth0 Community :slight_smile:

It sounds like you’re using the Universal Login New Experience, I think the button is missing here because you may not have configured a default login route either at application or tenant level see here on how to set that https://auth0.com/docs/authenticate/login/auth0-universal-login/configure-default-login-routes

The weird thing is that if that was the case then I would expect the button to be missing on the other prompts as well still please confirm you have a default login route set.

Regards

1 Like

Hi @SaqibHussain ,
We’ve checked our settings and have both the “Tenant Login URI” and “Application Login URI” set with a login url. The button is appearing on the other prompts, but still missing for the Link Expired prompt

Thanks for your help,
Samantha

I do have the same issue. Adding a default login url does not solve the problem for me. There are two cases of the Link Expired prompt. One is when the url lifetime is expired, in this case the button does show as expected. The other is when the link is expired when a newer link is created, in that case the button does not show.

Hi @erik.vorstenbosch
Thanks for highlighting the use case here, I was able to replicate the issue as a result.

After checking internally this is expected behaviour. We delete all older tickets of the same type (password reset in this case) for a specific user when a new ticket is created therefore we don’t have any information about tenant / connection for the old ticket which means we cannot display the “Back to xxx” button.

Does this help clarify the situation @samantha?

Warm regards.

1 Like

Thanks @SaqibHussain, that makes sense.
It would be nice if these situations could be differentiated, so that I could show a different description (notify the user that they might have received a newer link). But for now it is OK.

@SaqibHussain Is there any way in this screen that we can add an html link to the error description text? Right now, we have users getting stuck on this Link Expired screen with no recourse on where to go in order to get a new login