loginWithWebAuthn

client.loginWithWebAuthn(loginRequest, loginRequestCode, failure)

About this command

A user with an already registered credential can authenticate with a registered FIDO2 device. This method will get a FIDO2 pending intent for authentication with the options returned by the ReachFive server and launch it.

The result will be processed by the onLoginWithWebAuthnResult method.

  • The WebAuthn feature must be enabled on your ReachFive account.

Examples

  • With an email

  • With a phone number

import com.reach5.identity.sdk.core.models.requests.webAuthn.WebAuthnLoginRequest

val LOGIN_REQUEST_CODE = 2

client.loginWithWebAuthn(
    webAuthnLoginRequest = WebAuthnLoginRequest.EmailWebAuthnLoginRequest(
        origin = "https://dev-sandbox-268508.web.app",
        email = "john.doe@example.com",
        scope = setOf("openid", "profile", "email")
    ),
    loginRequestCode = WEBAUTHN_LOGIN_REQUEST_CODE,
    failure = { error -> ... } // Return a ReachFive error
)
import com.reach5.identity.sdk.core.models.requests.webAuthn.WebAuthnLoginRequest

val LOGIN_REQUEST_CODE = 2

client.loginWithWebAuthn(
    webAuthnLoginRequest = WebAuthnLoginRequest.EmailWebAuthnLoginRequest(
        origin = "https://dev-sandbox-268508.web.app",
        phoneNumber = "+33682234940",
        scope = setOf("openid", "profile", "phone")
    ),
    loginRequestCode = LOGIN_REQUEST_CODE,
    failure = { error -> ... } // Return a ReachFive error
)

Parameters

loginRequest WebAuthnLoginRequest

The parameters required to login with a registered FIDO2 device.

The WebAuthnLoginRequest enum class consists into:

  • EmailWebAuthnLoginRequest

  • PhoneNumberWebAuthnLoginRequest

loginRequestCode int

Identifies the return result of the FIDO2 authentication when the result arrives.

failure function

Callback called once the request has failed. You’ll get a ReachFiveError as an argument.

EmailWebAuthnLoginRequest

originWebAuthn string

The domain of the origin.

scope string[]

List of space-delimited, case-sensitive strings representing the requested scope.

Default scopes are the allowed scopes set up in the client’s configuration.

email string

The email address of the profile.

PhoneNumberWebAuthnLoginRequest

originWebAuthn string

The domain of the origin.

scope string[]

List of space-delimited, case-sensitive strings representing the requested scope.

Default scopes are the allowed scopes set up in the client’s configuration.

phoneNumber string

The phone number of the profile.

Both the international format and the national conventions of the account’s country are accepted if configured in account settings.

Response

Type: Unit

ReachFiveError

message string

The message of the error.

code string

The code from the underlying WebAuthn library.

Code Message Description

9

NOT_SUPPORTED_ERR

The operation is not supported.

11

INVALID_STATE_ERR

The object is in an invalid state.

18

SECURITY_ERR

The operation is insecure.

19

NETWORK_ERR

A network error has occurred.

20

ABORT_ERR

The operation was aborted.

23

TIMEOUT_ERR

The operation timed out.

27

ENCODING_ERR

The encoding operation (either encoded or decoding) failed.

28

UNKNOWN_ERR

The operation failed for an unknown transient reason.

29

CONSTRAINT_ERR

A mutation operation in a transaction failed because a constraint was not satisfied.

30

DATA_ERR

The provided data is inadequate.

35

NOT_ALLOWED_ERR

The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission to the application/request.

36

ATTESTATION_NOT_PRIVATE_ERR

The authenticator violates the privacy requirements that the AttestationStatementType it is using.

Redirection errors

The errors listed here are specific to redirection activity for the ReachFive Android SDK.

  • 0 = Success!

  • -1 = Unexpected result. Contact support.

  • 1 = Request aborted.

  • 2 = Unauthorized request.

exception string

The stack trace of the error.

data ReachFiveApiError

Additional data about the error.

error string

The main error message.

errorId string

The identifier of the error.

errorUserMsg string

The user-friendly error message.

This property is translated according to the user’s browser settings. Currently supported languages:
Currently supported languages
  • de - Deutsch

  • en - English

  • es - Español

  • fr - Français

  • it - Italiano

  • nl - Nederlands

  • ru - Ру́сский (Russian)

  • pt - Portuguese

errorMessageKey string

The technical error code.

errorDescription string

The technical error message.

errorDetails ReachFiveApiErrorDetails

  • field - The field concerned by the error.

  • message - The message error returned for the field.

Feedback