<iframe src="https://www.googletagmanager.com/ns.html?id=GTM-M74D8PB" height="0" width="0" style="display:none;visibility:hidden">
Loading
Skip to NavigationSkip to Main Content
Workflows GET Call for /api/v1/users/userID/factors Displays Different Results for MFA Enrollments
Workflows
Okta Identity Engine
Overview

When calling /api/v1/users/userID/factors in a workflow, not all of the Multi-Factor Authentication (MFA) enrollments for that user will be presented in the response. As a test for comparison purposes, run the same API call in Postman and see different results.

Applies To
  • Okta Workflows
  • API clients (such as Postman)
  • Factors API
  • Okta Identity Engine (OIE)
Cause
  • The Factors API is evaluated by the MFA enrollment policies.
  • Items like the MFA factor being disabled in an enrollment policy and a network zone condition can cause different results. This is due to the client IP address of Workflows being different than Postman, which will cause another MFA enrollment policy to be evaluated if the network zone is configured.
Solution

Please check if the API option described in List all authenticator enrollments documentation is used. It is recommended to use this call (OIE orgs ONLY, CLASSIC orgs still need to use the FACTORS endpoint):

https://{OktaDomainName}/api/v1/users/{userId}/authenticator-enrollments

As part of this new API endpoint, the following need to be GRANTED in the Okta Workflows OAUTH app (the Okta connection will also need to be re-authorized and permissions switched from DEFAULT to CUSTOM, and manually add the scopes):

  • okta.authenticators.manage
  • okta.authenticators.manage.self
  • okta.authenticators.read

If the above call is used and still not all of the MFA enrollments for that user will be presented in the response, please contact Okta support.

Loading
Workflows GET Call for /api/v1/users/userID/factors Displays Different Results for MFA Enrollments