G K G Guru

Kotlin SMS API Integration

Complete Kotlin code examples for integrating with the SecureSMSC SMS API using OkHttp.

Fast Integration

Get started in minutes with simple REST API calls

Global Reach

Send SMS to 200+ countries worldwide

Secure

Enterprise-grade SSL/TLS encryption

Reliable

99.9% uptime with delivery tracking

Quick Start: Get your API key from the dashboard to begin integration.

Installation

Install the required dependencies:

Terminal
implementation("com.squareup.okhttp3:okhttp:4.12.0")

Send Single SMS

Use the OkHttp library to send a single SMS message:

Kotlin
// Kotlin SMS API Integration using OkHttp
// Configure your API key
api_key = "YOUR_API_KEY"
api_url = "https://whitelabled.securesmsc.com/api/v2/sms/send"

// Set request headers
headers = {
    "Authorization": "Bearer " + api_key,
    "Content-Type": "application/json"
}

// SMS data payload
data = {
    "sender_id": "SENDER",
    "recipient": "1234567890",
    "message": "Hello from Kotlin!",
    "route": "transactional"
}

// Send POST request
response = OkHttp.post(api_url, headers, data)

if response.status == 200:
    print("SMS sent successfully!")
    print("Message ID:", response.data.message_id)
else:
    print("Error:", response.error)

Send Bulk SMS

Kotlin
// Send to multiple recipients
data = {
    "sender_id": "SENDER",
    "recipients": ["1234567890", "0987654321", "1122334455"],
    "message": "Bulk message from Kotlin",
    "route": "promotional"
}

response = OkHttp.post(api_url + "-bulk", headers, data)
print("Bulk SMS Status:", response.status)

Check SMS Status

Kotlin
// Check delivery status
message_id = "your_message_id"
status_url = "https://whitelabled.securesmsc.com/api/v2/sms/status/" + message_id

response = OkHttp.get(status_url, headers)
print("Status:", response.data.status)

Check Balance

Kotlin
// Get account balance
balance_url = "https://whitelabled.securesmsc.com/api/v2/balance"
response = OkHttp.get(balance_url, headers)
print("Balance:", response.data.balance, "credits")

Error Handling

Kotlin
// Kotlin SMS Client with retry logic
class SmsClient:
    api_key = "YOUR_API_KEY"
    base_url = "https://whitelabled.securesmsc.com/api/v2"

    function send(recipient, message, retries = 3):
        for attempt in range(retries):
            try:
                response = OkHttp.post(base_url + "/sms/send", {
                    "sender_id": "SENDER",
                    "recipient": recipient,
                    "message": message,
                    "route": "transactional"
                }, headers)
                
                if response.status == 200:
                    return response.data
                    
                // Wait before retry (exponential backoff)
                sleep(2 ^ attempt)
            catch error:
                if attempt == retries - 1:
                    throw error
                sleep(2 ^ attempt)

// Usage
client = new SmsClient()
result = client.send("1234567890", "Hello from Kotlin!")
print(result)