Installation

Gradle users

Add this dependency to your project’s build file:

implementation 'com.authsignal:authsignal-java:1.0.0'

Maven users

Add this dependency to your project’s POM:

<dependency>
  <groupId>com.authsignal</groupId>
  <artifactId>authsignal-java</artifactId>
  <version>1.0.0</version>
</dependency>

Initialization

import com.authsignal.AuthsignalClient;
...

AuthsignalClient authsignalClient = new AuthsignalClient(secret, baseURL);

You can find your secret key in the Authsignal Portal.

You must specify the correct base URL for your tenant’s region.

RegionBase URL
US (Oregon)https://api.authsignal.com/v1
AU (Sydney)https://au.api.authsignal.com/v1
EU (Dublin)https://eu.api.authsignal.com/v1

track

track lets you track actions performed by users and obtain a URL to perform challenges via the pre-built UI.

TrackRequest request = new TrackRequest();
request.userId = userId;
request.action = action;

CompletableFuture<TrackResponse> response = authsignalClient.track(request);

Arguments

Returns

validateChallenge

validateChallenge lets you validate the result of a challenge using the token which is obtained after a redirect (if using the pre-built UI) or returned by a client SDK (if using an embedded flow).

ValidateChallengeRequest request = new ValidateChallengeRequest();
request.token = token;

CompletableFuture<ValidateChallengeResponse> response = authsignalClient.validateChallenge(request);

When performing MFA for a user who has already been authenticated by a primary factor (e.g. username & password), it’s important to check the token belongs to that user. The validateChallenge method will do this check if you pass both the token and the userId.

Arguments

Returns

getUser

getUser retrieves a user and their enrollment status.

UserRequest request = new UserRequest();
request.userId = userId;

CompletableFuture<UserResponse> response = authsignalClient.getUser(request);

Arguments

Returns

getAction

Get detailed information on a tracked action.

ActionRequest request = new ActionRequest();
request.userId = userId;
request.action = action;
request.idempotencyKey = idempotencyKey;

CompletableFuture<ActionResponse> response = authsignalClient.getAction(request);

Arguments

Returns

rules
object[]

enrollVerifiedAuthenticator

enrollVerifiedAuthenticator can be used to enroll an authenticator on behalf of a user if it has already been verified.

EnrollVerifiedAuthenticatorRequest request = new EnrollVerifiedAuthenticatorRequest();
request.userId = userId;
request.phoneNumber = phoneNumber;
request.oobChannel = OobChannel.SMS;

CompletableFuture<EnrollVerifiedAuthenticatorResponse> response = authsignalClient.enrollVerifiedAuthenticator(request);

Arguments

Returns

authenticator
object
recoveryCodes
string[]

Was this page helpful?