registerNewPasskey

AppDelegate.reachfive().registerNewPasskey(
    withRequest,
    authToken
)

Description

Registers a new passkey for an existing user which currently has no passkeys in the keychain, or replace the existing passkey with a new one.

Usage

You should use this to allow users with existing accounts to register a passkey to their account.

Examples

AppDelegate
    .reachfive()
    .registerNewPasskey(withRequest: NewPasskeyRequest(anchor: window, friendlyName: friendlyName), authToken: authToken)

    // get auth token on success
    .onSuccess { authToken in
    }
    // return ReachFive error on failure
    .onFailure { error in
    }

Parameters

Parameter Description

withRequest NewPasskeyRequest

Object containing parameters to send along with the request.

Object parameters:

  • anchor: The view that the credential provider uses if it requires user interaction.

  • friendlyName: The name that is displayed by the system when presenting the passkey for login.

  • originWebAuthn: The origin of the webauthn call.

  • origin: The origin of the call. This helps categorize inbound traffic.

authToken AuthToken

Authorization token of the profile retrieved from login.

idToken string

The ID token JSON Web Token (JWT) that contains the profile’s information.

accessToken string

The authorization credential JSON Web Token (JWT) used to access the ReachFive API.

refreshToken string

The refresh token JSON Web Token (JWT) used to obtain new access tokens once they expire.

tokenType string

The type of token. Always equal to Bearer.

expiresIn number

The lifetime in seconds of the access token.

If expiresIn is less than or equal to 0, the AuthToken is expired.

user OpenIdUser

The user’s information contained in the ID token.

Response

Type: Future<(), ReachFiveError>

ReachFiveError

Based on the problem, the ReachFiveError will be:

  • AuthCanceled: The user cancelled the request or no credential was available in the keychain.

  • RequestError(apiError: ApiError) for a Bad Request (status 400) error.

  • AuthFailure(reason: String, apiError: ApiError?) mainly for Unauthorized (status 401) error.

  • TechnicalError(reason: String, apiError: ApiError?) if it’s an Internal Server Error (status 500) or other internal errors.

ApiError

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 OS and app 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 error message key.

errorDescription string

The technical error message.

errorDetails FieldError[]

field string

The field concerned by the error.

message string

The message error returned for the field.

code string

The code error returned for the field.