This integration previously worked perfectly.
We use Signin Widget in our application. When we create users we use a two step process to generate an email:
POST → /api/v1/users?activate=false
POST > /api/v1/users/{user_id}/lifecycle/activate?sendEmail=true
Our Authenticator Enrollment policy (terraform) is as follows:
resource "okta_policy_mfa" "policy_name" {
...
okta_email = {
enroll = "REQUIRED"
}
webauthn = {
enroll = "REQUIRED"
}
...
}
We have modified the activation email template to point to our application:
https://{our_domain}/init/okta/$${activationToken}
We bootstrap the signin widget like so:
import { OktaAuth } from '@okta/okta-auth-js';
import OktaSignIn from '@okta/okta-signin-widget';
...
const activationToken = getActivationTokenFromQueryParams();
...
this.oktaAuth = new OktaAuth({
...
activationToken,
...
});
this.signIn = new OktaSignIn({
...
authClient: this.oktaAuth,
});
Previously when the we initialized the widget with the above configuration, the widget would display the authenticator enrollment prompts.
Now the widget displays a message that says:
Something went wrong. Potential misconfiguration detected. Please contact support.
If I inspect the network activity I see a call to the /oauth2/default/v1/interact
endpoint that returns a 400 with the following error response:
{
"error": "invalid_request",
"error_description": "The activation token is invalid"
}
I cannot stress enough that this integration worked perfectly in the past… it was 8/3/2023 when we noticed this failure starting.
It is worth mentioning that when we previously had this working, we would only create the user in an activated state which would result in an email. However, on the same day - 8/3/2023, this user creation action no longer resulted in an email being sent and we were told by Okta support that a change had been made requiring the two step process to generate the email.