signup
AppDelegate.reachfive().signup( profile, // Optional arguments redirectUrl, scope )
Description
Create and authenticate a new user with the specified data.
Users can identify themselves with an email address or mobile number (if the SMS feature is enabled).
|
Examples
import Reach5
AppDelegate
.reachfive()
.signup(
profile: ProfileSignupRequest(
givenName: "John",
familyName: "Doe",
gender: "male",
email: "john.doe@gmail.com",
customIdentifier: "coolCat55",
password: "hjk90wxc"
),
redirectUrl: "https://www.example.com/redirect",
scope: ["openid", "profile", "email"]
)
.onSuccess{ authToken in
// Get the profile's authentication token
}
.onFailure { error in
// Return a ReachFive error
}
import Reach5
AppDelegate
.reachfive()
.signup(
profile: ProfileSignupRequest(
givenName: "John",
familyName: "Doe",
gender: "male",
phoneNumber: "+353875551234",
customIdentifier: "coolCat55",
password: "hjk90wxc"
),
redirectUrl: "https://www.example.com/redirect",
scope: ["openid", "profile", "phone"]
)
.onSuccess{ authToken in
// Get the profile's authentication token
}
.onFailure { error in
// Return a ReachFive error
}
Parameters
Parameter | Description | ||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
The data of the profile.
|
|||||||||||||||||||||||||||||||||||||||||
The URL to which the user is redirected.
|
|||||||||||||||||||||||||||||||||||||||||
The scopes granted to the profile. Make sure they are allowed by the client. Default scopes are the allowed scopes set up in the client’s configuration. |
Response
Type: Future<AuthToken, ReachFiveError>
Return the profile’s authentication token. If the parameters are invalid or if a profile already exists with the same email address, the promise will be rejected and will return a ReachFiveError
.
AuthToken
The authentication token.
idToken |
The ID token JSON Web Token (JWT) that contains the profile’s information. This is only available when the |
||||||||||||||||||||||||||||||||||
accessToken |
The authorization credential JSON Web Token (JWT) used to access the ReachFive API. |
||||||||||||||||||||||||||||||||||
refreshToken |
The refresh token JSON Web Token (JWT) used to obtain new access tokens once they expire. This is only available when the |
||||||||||||||||||||||||||||||||||
tokenType |
The type of token. Always equal to |
||||||||||||||||||||||||||||||||||
expiresIn |
The lifetime in seconds of the access token. If |
||||||||||||||||||||||||||||||||||
user OpenIDUser |
The user’s information contained in the ID token.
|
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 |
The main error message. |
||||||
errorId |
The identifier of the error. |
||||||
errorUserMsg |
The user-friendly error message.
|
||||||
errorMessageKey |
The error message key. |
||||||
errorDescription |
The technical error message. |
||||||
errorDetails FieldError[] |
|