Interface: IdoSdk
Interface
Description
The interface for the sdk object.
Methods
init
▸ init(clientId
, options?
): Promise
<void
>
Description
Creates a new Identity Orchestration SDK instance with your client context. Do not call this function directly - see below how to initialize via the unified web SDK
Throws
InvalidInitOptions in case of invalid init options.
Example
// Initialize an instance of the Identity Orchestration SDK using the unified SDK
await window.tsPlatform.initialize({
clientId: 'my-client-id',
ido: { serverPath: 'https://api.transmitsecurity.io/ido'}
});
Parameters
Name | Type | Description |
---|---|---|
clientId |
string |
Client ID for this application. |
options? |
IdoInitOptions |
Additional environment configuration for the SDK operation. |
Returns
Promise
<void
>
The promise that will be resolved when the SDK is initialized.
startJourney
▸ startJourney(journeyId
, options?
): Promise
<IdoServiceResponse
>
Description
Starts a Journey with a given id.
Throws
NotInitialized - Throws error if the SDK is not initialized.
Throws
NetworkError - Throws error if could not connect to server, or server did not respond before timeout.
Throws
ServerError - Throws error if the server returned an unexpected error.
Example
// Start a Journey with the id 'my-journey-id'
try {
const idoResponse = await window.tsPlatform.ido.startJourney('my-journey-id', { additionalParams: 'additionalParams' });
// Handle Journey response
} catch(error) {
switch(sdkError.errorCode) ...
}
Parameters
Name | Type | Description |
---|---|---|
journeyId |
string |
Journey Identifier in the Mosaic Admin Console. |
options? |
StartJourneyOptions |
Additional parameters to be passed to the journey. |
Returns
Promise
<IdoServiceResponse
>
The promise that will be resolved when the IdoServiceResponse is received.
startSsoJourney
▸ startSsoJourney(interactionId
): Promise
<IdoServiceResponse
>
Description
Starts an SSO Journey with a given Interaction ID.
Throws
NotInitialized - Throws error if the SDK is not initialized.
Throws
NetworkError - Throws error if could not connect to server, or server did not respond before timeout.
Throws
ServerError - Throws error if the server returned an unexpected error.
Example
// Start a Journey with the Interaction ID '2456E855-05A0-4992-85C1-A2519CBB4AA7'
try {
const idoResponse = await window.tsPlatform.ido.startSsoJourney('2456E855-05A0-4992-85C1-A2519CBB4AA7');
// Handle Journey response
} catch(error) {
switch(sdkError.errorCode) ...
}
Parameters
Name | Type | Description |
---|---|---|
interactionId |
string |
Interaction identifier given as part of the response to the initial /authorize request |
Returns
Promise
<IdoServiceResponse
>
The promise that will be resolved when the IdoServiceResponse is received.
submitClientResponse
▸ submitClientResponse(clientResponseOptionId
, data?
): Promise
<IdoServiceResponse
>
Description
This method will submit client input to the Journey step to process.
Throws
NotInitialized - Throws error if the SDK is not initialized.
Throws
NoActiveJourney - Throws error if the SDK state does not have an active Journey.
Throws
NetworkError - Throws error if could not connect to server, or server did not respond before timeout.
Throws
ClientResponseNotValid - Throws error if the client response to the Journey is not valid.
Throws
ServerError - Throws error if the server returned an unexpected error.
Example
// The previous response may include multiple response options. The standard 'ClientInput' response option
// signals we are sending collected user input to the journey step.
const selectedInputOptionId = ClientResponseOptionType.ClientInput;
// Submit the client input. The data inside the JSON correspond to the expected fields from the Journey step.
try {
const idoResponse = await window.tsPlatform.ido.submitClientResponse(selectedInputOption, {
'userEmail': 'user@input.email',
'userPhone': '111-222-3333',
});
} catch(sdkError) {
switch(sdkError.errorCode) ...
}
Parameters
Name | Type | Description |
---|---|---|
clientResponseOptionId |
string |
The response option ID is one of the IDs provided in the clientResponseOptions. This would either be ClientInput for collected user input, or one of the others if another journey path was selected by the user. |
data? |
any |
The client response data object. Mandatory in ClientInput response option type, populate with data for the Journey step to process. Optional in Cancel and Custom as an additional parameters for the branch. |
Returns
Promise
<IdoServiceResponse
>
The promise that will be resolved when the IdoServiceResponse is received.
serializeState
▸ serializeState(): string
Description
Get the current serialized state of the SDK. Can be stored by the application code and used to restore the SDK state following page redirects or refresh
Returns
string
The current state of the SDK.
restoreFromSerializedState
▸ restoreFromSerializedState(state
): IdoServiceResponse
Description
Restores the SDK state from a serialized state, can be used to recover from page redirects or refresh. The application code also receives the latest communication from the orchestration server.
Throws
InvalidState - Throws error if the provided state string is invalid.
Parameters
Name | Type | Description |
---|---|---|
state |
string |
The state to restore from. |
Returns
The last IdoServiceResponse that was received before the state was saved.
generateDebugPin
▸ generateDebugPin(): Promise
<string
>
Description
This method will generate a debug PIN
const debugPin = await sdk.generateDebugPin();
console.log(Debug PIN: ${debugPin}
); // Output: Debug PIN: 1234
Returns
Promise
<string
>