See api-docs Menu

Verify Enrollment of Authentication Factors


Use this API to verify enrollment for OneLogin SMS, OneLogin Email, OneLogin Protect and Authenticator authentication factors.

At this point, the enrollment of the factor should have already been requested, and this API will allow you to verify the OTP code sent to or generated for the user on the provided factor. The status of the registration should be pending. If the initial registration was completed with veriifed = True then this step will not be necessary.

The API supports enrollment for SMS, Email, Google Authenticator, and OneLogin Protect. Other factors can be enrolled manually by the user. Duo is supported for OTP factors, but registration isn’t supported.

Resource URL

https://<api-domain>/api/2/mfa/users/<user_id>/registrations/<registration_id>

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 the Manage All scope.

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.

registration_id

required

uuid

Set to the uuid of the registration. This was included in the response as part of the initial request in Enroll Factor.

Request Parameters

otp

required

integer

One-Time-Password (OTP) that was sent to the user based on the chosen factor. OneLogin SMS and OneLogin Email support this OTP code.

Request Body

{
    "otp": "58959"
}

Sample Responses

OneLogin SMS, OneLogin Email, Authenticator

[
  {
      "id": "406fefd4-8a36-4aee-880c-f3e4a928e27d",
      "status": "accepted",
      "device_id": "3919988"
  }
]
{
    "statusCode": 401,
    "name": "InvalidCredentials",
    "message": "Please provide valid credentials"
}

Response Elements

id Registration identifier.
status pending registration has not been completed successfully. accepted registration has successfully completed.
device_id Device id to be used with Verify the Factor.

Postman Collection

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

Download for the MFA API

Sample Code

cURL

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

curl 'https://<api-domain>/api/2/mfa/users/<user_id>/registrations/<registration_id>' \
-X PUT \
-H "Authorization: bearer: <access_token>" \
-H "Content-Type: application/json" \
-d '{
  "otp":"123456"
}'

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.