← Kembali ke Dokumentasi API

SDK Android LoginWA (Kotlin)

Klien REST ringan untuk memulai dan memverifikasi OTP via WhatsApp.

Repositori: GitHub · Modul: sdk/android · Contoh: sdk/android/sample

Instal (rencana Maven Central)

Tambahkan dependensi:

dependencies {
    implementation("com.loginwa:loginwa-otp:0.1.0")
}

Sampai dipublikasikan, impor proyek sdk/android sebagai modul atau publikasikan ke Maven Local.

Inisialisasi

val client = LoginWAClient(
    apiKey = BuildConfig.LOGINWA_API_KEY,
    baseUrl = "https://api.loginwa.com/api/v1", // optional override
    enableLogging = true
)

Mulai OTP

val start = client.startOtp(
    StartOtpRequest(
        phone = "6281234567890",
        countryCode = "62",
        otpLength = 6,
        messageTemplate = "OTP code {code} valid for {ttl} minutes",
        meta = mapOf("user_id" to "123")
    )
)
val sessionId = start.sessionId

Verifikasi OTP

val verify = client.verifyOtp(
    VerifyOtpRequest(
        sessionId = sessionId.orEmpty(),
        otpCode = "123456"
    )
)
if (verify.status == "verified") {
    // success
}

Error

  • HttpError(status, code, rawBody) untuk respons non-2xx.
  • NetworkError untuk konektivitas/timeout.
  • SerializationError untuk JSON tidak valid/tidak terduga.

Catatan

  • Jangan simpan API key di source control (gunakan BuildConfig/gradle properties atau penyimpanan aman).
  • Base URL default: https://api.loginwa.com/api/v1.
  • Logging BASIC (tanpa body) saat enableLogging=true.

Aplikasi contoh

  • Lokasi: sdk/android/sample (Activity dengan formulir phone/session/OTP.)
  • Set LOGINWA_API_KEY di ~/.gradle/gradle.properties, buka proyek di Android Studio, jalankan modul :sample.