See api-docs Menu

Get Available Authentication Factors

Use this API to return a list of authentication factors that are available for user enrollment via API. This list is dependent upon the given user’s policy configuration.

Once a factor has been enrolled by a user it will no longer be returned in this request.

For a full list of factors that a user has enrolled via UI or API use the Get Enrolled Factors call.

The API supports enrollment of SMS, Voice, Email, Google Authenticator, and OneLogin Protect.

Resource URL


Header Parameter




Set to bearer:<access_token>.

Set <access_token> to the access token you generated using the Generate Token API.

The access token must have been generated using an API credential pair created using the scope required to call this API. This API can be called using the Manage All scope.

Resource Parameter




Set to the id of the user.

If you don’t know the user’s id, use the Get Users API call to return all users and their id values.

Sample Response

        "factor_id": 58958,
        "name": "OneLogin Protect",
        "auth_factor_name": "OneLogin"
        "factor_id": 58959,
        "name": "OneLogin SMS",
        "auth_factor_name": "SMS"
        "factor_id": 58960,
        "name": "OneLogin Voice",
        "auth_factor_name": "OneLogin Voice"
        "factor_id": 58961,
        "name": "OneLogin Email",
        "auth_factor_name": "OneLogin Email"
        "factor_id": 58957,
        "name": "Authenticator",
        "auth_factor_name": "Google Authenticator"
    "statusCode": 401,
    "name": "InvalidCredentials",
    "message": "Please provide valid credentials"

Response Elements


Authentication factor name, as it appears to administrators in OneLogin.


Internal use only

factor_id Identifier for the factor which will be used for user enrollment

Postman Collection

Replace sample variables indicated by {{ }} with your actual values.

Download for the MFA API

Sample Code


Replace sample values indicated by < > with your actual values.

curl 'https://<subdomain>/api/2/mfa/users/<user_id>/factors' \
-X GET \
-H "Authorization: bearer: <access_token>" \

Have a Question?

Have a how-to question? Seeing a weird error? Ask us about it on StackOverflow.

Found a bug? Submit a support ticket.

Have a product idea or request? Share it with us in our Ideas Portal.