Use this API to return a list of authentication factors registered to a particular user for multifactor authentication (MFA). This API is typically used in a login workflow in which MFA is required, providing the user a selection of their registered MFA devices to choose from. The returned list represents the authentication factors that have been registered by the user on their Profile page or on the OneLogin login page or custom login page.
This API only returns factors that are enrolled and can be verified via API.
Resource URL
https://<subdomain>.onelogin.com/api/2/mfa/users/<user_id>/devicesHeader Parameter
Authorization required string | Set to Set 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 |
Resource Parameter
user_id required integer | Set to the If you don't know the user's |
Sample Response
- 200 OK
- 401 Unauthorized
[
{
"device_id": "3920360",
"user_display_name": "OneLogin Protect",
"type_display_name": "OneLogin Protect",
"auth_factor_name": "OneLogin",
"default": true
},
{
"device_id": "3920371",
"user_display_name": "OneLogin SMS",
"type_display_name": "OneLogin SMS",
"auth_factor_name": "SMS",
"default": false
},
{
"device_id": "3920373",
"user_display_name": "OneLogin Voice",
"type_display_name": "OneLogin Voice",
"auth_factor_name": "OneLogin Voice",
"default": false
},
{
"device_id": "3920377",
"user_display_name": "OneLogin Email",
"type_display_name": "OneLogin Email",
"auth_factor_name": "OneLogin Email",
"default": false
},
{
"device_id": "3920481",
"user_display_name": "Authenticator",
"type_display_name": "Authenticator",
"auth_factor_name": "Google Authenticator",
"default": false
}
]{
"statusCode": 401,
"name": "InvalidCredentials",
"message": "Please provide valid credentials"
}
```json
</div>
</div>
<h2>Response Elements</h2>
<table width="86%" cellpadding="10">
<tbody>
<tr>
<td valign="top" style="text-align: right"><code>auth_factor_name</code></td>
<td valign="top">Authentication factor name, as it appears to administrators in OneLogin. </td>
</tr>
<tr>
<td valign="top" style="text-align: right"><code>default</code></td>
<td valign="top"><code>true</code> = is user's default MFA device for OneLogin. </td>
</tr>
<tr>
<td valign="top" style="text-align: right"><code>display_name</code></td>
<td valign="top">Authentication factor display name as it appears to users, as defined in the admininstrative interface at <em>Settings > Authentication Factors.</em></td>
</tr>
<tr>
<td valign="top" style="text-align: right"><code>id</code></td>
<td valign="top">MFA device identifier. </td>
</tr>
<tr>
<td valign="top" style="text-align: right"><code>type_display_name</code></td>
<td valign="top">Authentication factor display name as it appears to users upon initial registration, as defined by admins at <em>Settings > Authentication Factors.</em></td>
</tr>
<tr>
<td valign="top" style="text-align: right"><code>user_display_name</code></td>
<td valign="top">Authentication factor display name assigned by users when they register the device<em>.</em></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>< ></code> with your actual values.</p>
<pre><code class="prettyprint lang-c">curl 'https://<subdomain>.onelogin.com/api/2/mfa/users/<user_id>/devices' \
-X GET \
-H "Authorization: bearer <access_token>"</code>
</pre>Have a Question?
Found a problem or a bug? Submit a support ticket.
Looking for walkthroughs or how-to guides? Check out our Knowledge Base.
Have a product idea or request? Share it in our Ideas Portal.