Methods
new VerifiedClientSdk(options)
Initialize the SDK
Constructor Definition
new VerifiedClientSdk(options: {
sessionKey: string;
onResult: (result: SdkResult) => void;
onError: (error: SdkError) => void;
onEvent?: (event: SdkEvent) => void;
environment?: string;
}): VerifiedClientSdk
Parameters
sessionKey (required)
The session key obtained from your server via POST /session-key.
onResult (required)
Callback invoked when the flow reaches a terminal result (e.g. user shared credentials, opted out, no credentials found).
onResult: (result: SdkResult) => void
See SdkResult and SdkResultValues.
onError (required)
Callback invoked when an SDK error occurs (e.g. invalid session key, session timeout).
onError: (error: SdkError) => void
See SdkError and SdkErrorReasons.
onEvent (optional)
Callback invoked for intermediary events during the flow (e.g. SDK ready, user navigated to a new step).
onEvent?: (event: SdkEvent) => void
See SdkEvent and SdkEventValues.
environment (optional)
The environment to use. Defaults to production. Pass sandbox for testing.
Example
Example Usage of new VerifiedClientSdk()
import {
VerifiedClientSdk,
SdkResult,
SdkEvent,
SdkError,
SdkResultValues,
SdkEventValues,
SdkErrorReasons,
} from '@verifiedinc-public/client-sdk';
const sdk = new VerifiedClientSdk({
sessionKey: 'YOUR_SESSION_KEY',
onResult: handleResult,
onError: handleError,
onEvent: handleEvent,
});
function handleResult(result: SdkResult) {
switch (result.type) {
case SdkResultValues.USER_SHARED_CREDENTIALS:
// Pass result.identityUuid to your server (call GET /1-click/{identityUuid})
break;
case SdkResultValues.USER_OPTED_OUT:
// Take user to manual signup flow
break;
case SdkResultValues.NO_CREDENTIALS_FOUND:
// Take user to manual signup flow
break;
case SdkResultValues.RISK_SCORE_TOO_HIGH:
// Take user to manual signup flow
break;
case SdkResultValues.MAX_INPUT_ATTEMPTS_EXCEEDED:
// Take user to manual signup flow
break;
case SdkResultValues.MAX_VERIFICATION_CODE_ATTEMPTS_EXCEEDED:
// Take user to manual signup flow
break;
}
}
function handleError(error: SdkError) {
switch (error.reason) {
case SdkErrorReasons.INVALID_SESSION_KEY:
// Create a new session key on your server
break;
case SdkErrorReasons.SESSION_TIMEOUT:
// Create a new session key and a new VerifiedClientSdk instance
break;
case SdkErrorReasons.SHARE_CREDENTIALS_ERROR:
// Take user to manual signup flow
break;
}
}
function handleEvent(event: SdkEvent) {
switch (event.type) {
case SdkEventValues.SDK_READY:
// SDK is ready to display
break;
case SdkEventValues.USER_STEP_CHANGE:
// event.step, event.previousStep available
break;
case SdkEventValues.STEP_TIME_SPENT:
// event.step, event.durationMs available
break;
case SdkEventValues.USER_COMPLETED_PRODUCT:
// event.product available
break;
case SdkEventValues.ONE_CLICK_SIGNUP_FORM_SUBMITTED:
// event.form available
break;
case SdkEventValues.ONE_CLICK_HEALTH_FORM_SUBMITTED:
// event.form available
break;
case SdkEventValues.VERIFICATION_CODE_RESENT:
// User requested a new verification code
break;
}
}
show()
Show the SDK to the user
show() Definition
public show(element?: HTMLElement): void
If no element is passed, the SDK will be injected into document.body.
Example
Example Usage of show()
import { VerifiedClientSdk, ... } from '@verifiedinc-public/client-sdk';
const verifiedClientSdk = new VerifiedClientSdk({ ... });
// Show SDK to user (in document.body if no HTML element is passed)
verifiedClientSdk.show(document.getElementById('verifiedClientSdk-container'));
destroy()
Destroy the SDK element and invalidate the instance
destroy() Definition
public destroy(): void
Example
Example Usage of destroy()
import { VerifiedClientSdk, ... } from '@verifiedinc-public/client-sdk';
const verifiedClientSdk = new VerifiedClientSdk({ ... });
// Destroy the SDK
verifiedClientSdk.destroy();