Skip to main content

Device type agnostic onboarding steps

Select device type

When is this step returned?

This step is returned when the user needs to select the type of device they intend to onboard.

Try out fetching this step

What is needed to complete this step?

This step is completed by calling the mutation below with the selected device type.

Try out completing this step

Authentication

When is this step returned?

This step is returned if the user needs to complete an authentication flow with their device's OEM (Original Equipment Manufacturer). The step contains an authorizationUri, which will take the the user to the OEM for authentication.

Try out fetching this step

What is needed to complete this step?

This step is completed by calling the mutation below with the continuation uri received from the OEM after authentication.

Try out completing this step

Select session device

When is this step returned?

This step is returned if the user has multiple devices connected to their OEM's account and they need to select a single device to onboard. The step contains a list of options that the user can choose from.

Try out fetching this step

What is needed to complete this step?

It can be completed by using the `SelectFromListForSmartFlexOnboarding` mutation with the `id` of the desired option as the `selectedOption` input.

Try out completing this step

Unsupported combination

If the UnsupportedCombination step is returned as the current step, it means that the selected device combination is not compatible with other devices currently onboarded to the users account.

warning

This step cannot be completed and the user must select different device options to continue.

User input required

When is this step returned?

This step is returned if the onboarding journey requires some information from the user to proceed (e.g. vehicle identification number). The step contains a list of the requested user inputs that should be submitted to proceed. Note that all inputs marked as required must be provided to proceed.

Try out fetching this step

What is needed to complete this step?

It can be completed by using the `completeUserInputRequiredForSmartFlexOnboarding` mutation

Try out completing this step

Wait for transition

If the WaitForTransition step is returned as the current step we should consider the Kraken onboarding journey to be paused because we're waiting on an external action to be completed.

Examples of such external actions are:

  • Action needs to be taken by a third party, like the device manufacturer manually approving the device for registration in their platform.
  • Action needs to be taken by a customer in a third party app, like enabling location permissions in a manufacturer's mobile application.

Kraken will check if the external action has been completed when querying for the current step on a wizard. Requesting the currentStep field in the smartflexOnboardingWizards query can be used to check if the external event (and therefore the step) has been completed, and the onboarding journey can continue.