Bash SMS API Integration
Complete Bash code examples for integrating with the SecureSMSC SMS API using curl.
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
# curl is typically pre-installed
Send Single SMS
Use the curl library to send a single SMS message:
Bash
// Bash SMS API Integration using curl
// 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 Bash!",
"route": "transactional"
}
// Send POST request
response = curl.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
Bash
// Send to multiple recipients
data = {
"sender_id": "SENDER",
"recipients": ["1234567890", "0987654321", "1122334455"],
"message": "Bulk message from Bash",
"route": "promotional"
}
response = curl.post(api_url + "-bulk", headers, data)
print("Bulk SMS Status:", response.status)
Check SMS Status
Bash
// Check delivery status
message_id = "your_message_id"
status_url = "https://whitelabled.securesmsc.com/api/v2/sms/status/" + message_id
response = curl.get(status_url, headers)
print("Status:", response.data.status)
Check Balance
Bash
// Get account balance
balance_url = "https://whitelabled.securesmsc.com/api/v2/balance"
response = curl.get(balance_url, headers)
print("Balance:", response.data.balance, "credits")
Error Handling
Bash
// Bash 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 = curl.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 Bash!")
print(result)