Using the Headless SDK, requests can be easily customized to set a specific expiry, adjust the OTP length, and select a preferred delivery channel such as WhatsApp, SMS, or Viber for phone number authentication.

Custom Expiry

Headless request can be customized with custom expiry.

val otplessRequest = OtplessRequest()
otplessRequest.setPhoneNumber(number = "YOUR_PHONE_NUMBER", countryCode = "YOUR_COUNTRY_CODE")
// in seconds
otplessRequest.setExpiry("60");
lifecycleScope.launch {
    OtplessSDK.start(request = otplessRequest, callback = ::onOtplessResponse)
}

Custom OTP length

Headless request can be customized with custom OTP length 4 or 6.

val otplessRequest = OtplessRequest()
otplessRequest.setPhoneNumber(number = "YOUR_PHONE_NUMBER", countryCode = "YOUR_COUNTRY_CODE")
// only 4 or 6 
otplessRequest.setOtpLength("6")
lifecycleScope.launch {
    OtplessSDK.start(request = otplessRequest, callback = ::onOtplessResponse)
}

Custom Delivery Channel

Headless request can be customized with custom Delivery Channel like WHATSAPP, SMS and VIBER.

val request = OtplessRequest()
otplessRequest.setPhoneNumber(number = "YOUR_PHONE_NUMBER", countryCode = "YOUR_COUNTRY_CODE")
// WHATSAPP,SMS and VIBER
otplessRequest.setDeliveryChannel("WHATSAPP")
lifecycleScope.launch {
    OtplessSDK.start(request = otplessRequest, callback = ::onOtplessResponse)
}