A newer version of this documentation is available.

View Latest

signupWithWebAuthn

client.signupWithWebAuthn(
    profile,
    origin,
    signupRequestCode,
    successWithWebAuthnId,
    failure,
    // Optional arguments
    friendlyName
)

About this command

The user requests to register a new account for the first time. This method retrieves a FIDO2 pending intent for signup with the options returned by the ReachFive server and launches it.

The result is then processed by the onSignupWithWebAuthnResult method.

The WebAuthn feature must be enabled on your ReachFive account.

Examples

private lateinit var webAuthnId: String

val WEBAUTHN_SIGNUP_REQUEST_CODE = 3

client.signupWithWebAuthn(
    profile = ProfileWebAuthnSignupRequest(
        givenName = "John",
        familyName = "Doe",
        gender = "male",
        email = "john.doe@gmail.com"
    ),
    origin = "https://dev-sandbox-268508.web.app",
    friendlyName = "Nexus 5"
    signupRequestCode = WEBAUTHN_SIGNUP_REQUEST_CODE,
    successWithWebAuthnId = { this.webAuthnId = it }, // Store the webautn ID in the activity class
    failure = { error -> ... } // Return a ReachFive error
)

Parameters

failure function

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

friendlyName string

The name of the FIDO2 device. Each device must have a unique name.

Default to the name of the Android product.

originWebAuthn string

The domain of the origin.

profile ProfileWebAuthnSignupRequest

The profile data.

email string

The primary email address of the profile.

phoneNumber string

The primary 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.

givenName string

The given name of the profile.

middleName string

The middle name of the profile.

familyName string

The family name of the profile.

name string

The full name of the profile.

nickname string

The nickname of the profile.

birthdate string

The birthdate of the profile, represented as an ISO 8601 YYYY-MM-DD format.

profileURL string

The URL of one of the user’s profile pages (usually a social provider’s page).

picture string

The URL of one of the user’s profile pictures. This URL refers to an image file (PNG, JPEG, or GIF image file).

username string

The username of the profile (the login’s name).

gender string

The gender of the profile.

Currently allowed values are female, male and other.

company string

The company name of the profile.

addresses ProfileAddress[]

The list of the profile’s postal addresses.

locale string

The profile’s language code in lowercase and country code in uppercase, separated by a dash (eg en, fr-FR …​).

bio string

The biography of the profile.

customFields Map<string, any>

The custom fields of the profile.

consents Map<string, Consent>

The consents granted to the profile. It is a map of string keys with the associated consent object.

signupRequestCode int

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

successWithWebAuthnId function

Callback called once the request has succeeded. You’ll get the WebAuthn identifier of the user as an argument.

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
  • ar - العربية Arabic

  • de - Deutsch German

  • en - English

  • es - Español Spanish

  • fr - Français French

  • hu - Magyar Hungarian

  • it - Italiano Italian

  • jp - 日本 Japanese

  • ko - 한국인 Korean

  • nl - Nederlands Dutch

  • pt - Portuguese

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

  • sk - Slovenský Slovak

  • zh-CN - People’s Republic of China Simplified Chinese

  • zh-Hans - Simplified Chinese

  • zh-Hant - Traditional Chinese

  • zh-HK - Hong Kong Traditional Chinese

  • zh-MO - Macao Traditional Chinese

  • zh-SG - Singapore Simplified Chinese

  • zh-TW - Taiwan Traditional Chinese

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.