GET

Get Available Factors


Use this API to return a list of authentication factors that are available for user enrollment via API. 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.

Currently the API only supports enrollment of OneLogin SMS and OneLogin Voice factors. Other factors can be enrolled manually by the user.

Resource URL

Before calling this API, consider using its version /2 equivalent.

https://<subdomain>.onelogin.com/api/1/users/<user_id>/auth_factors

Header Parameter

Authorization

required

string

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 any one of the following scopes: Read Users, Manage users, Read All, or Manage All.

Resource Parameter

user_id

required

integer

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

{
    "status": {
        "error": false,
        "code": 200,
        "type": "success",
        "message": "Success"
    },
    "data": {
        "auth_factors": [
            {
                "name": "OneLogin SMS",
                "factor_id": 16282
            }
        ]
    }
}
{
      "status": {
          "error": true,
          "code": 400,
          "type": "bad request",
          "message": "Authorization Information is incorrect"
      }
  }
{
    "status": {
        "error": true,
        "code": 401,
        "type": "Unauthorized",
        "message": "Authentication Failure"
    }
}
{
    "status": {
        "error": true,
        "code": 404,
        "type": "not found",
        "message": "User for id 123456789 was not found"
    }
}
```json

</div>
</div>


<h2>Response Elements</h2>
<table width="86%" cellpadding="10">
  <tbody>
      <tr>
         <td valign="top" style="text-align: right" >
            <p><code>name</code></p>
         </td>
         <td valign="top">
           <p>&quot;Official&quot; authentication factor name, as it appears to administrators in OneLogin. </p>
         </td>
      </tr>
      <tr>
        <td valign="top" style="text-align: right"><code>factor_id</code></td>
        <td valign="top">Identifier for the factor which will be used for user enrollment</td>
      </tr>
  </tbody>
</table>

<h2 id="postman-collection">Postman Collection</h2>

[<img src=https://run.pstmn.io/button.svg alt="Run In Postman" style="width: 128px; height: 32px;">](https://god.gw.postman.com/run-collection/2629710-07192ad9-633a-4583-a9d1-47bc89c8c91d?action=collection%2Ffork&source=rip_markdown&collection-url=entityId%3D2629710-07192ad9-633a-4583-a9d1-47bc89c8c91d%26entityType%3Dcollection%26workspaceId%3D2a9bbc3a-4259-4faf-9f51-0b7ca1df3fd0)

<h2>Sample Code</h2>
<h3 id="sample-curl-request">cURL</h3>
<p>Replace sample values indicated by <code>&lt; &gt;</code> with your actual values.</p>

<pre><code class="prettyprint lang-c">curl 'https://&lt;subdomain&gt;.onelogin.com/api/1/users/&lt;user_id&gt;/auth_factors' \
-X GET \
-H "Authorization: bearer &lt;access_token&gt;"</code>
</pre>