Endpoint
Request Body
The ID of the user who owns the device. Cannot be empty.
The name of the device to verify. Cannot be empty.
The TOTP code generated by the authenticator app.
Request Example
Response
Success Response
Returns
"OK" when the device is successfully verifiedtrueif the device was already verified before this callfalseif this call newly verified the device
Error Responses
Unknown Device
Returns
"UNKNOWN_DEVICE_ERROR" when the specified device does not existInvalid TOTP Code
Returns
"INVALID_TOTP_ERROR" when the provided code is incorrectThe number of failed attempts so far (available in v5.0+)
The maximum number of failed attempts allowed (available in v5.0+)
Rate Limit Reached
Returns
"LIMIT_REACHED_ERROR" when too many failed attempts have occurredThe number of milliseconds to wait before retrying
The number of failed attempts (available in v5.0+)
The maximum allowed failed attempts (available in v5.0+)
Implementation Details
Source: View source- Verification is tenant-specific
- Failed attempts are tracked to prevent brute force attacks
- After reaching the maximum failed attempts, users must wait before retrying
- Once verified, a device can be used for authentication
- Verifying an already-verified device is not an error - returns success with
wasAlreadyVerified: true
Workflow
- User creates a TOTP device using Create Device
- User scans QR code with authenticator app
- User enters the 6-digit code from their app
- Your application calls this endpoint to verify the code
- If successful, the device is now verified and can be used for authentication
Next Steps
Verify TOTP Code
Use the verified device for authentication
Error Handling
Returned when:
userIdis emptydeviceNameis empty