SMS API: uygulamanızdan otomatik gönderim
REST ve JSON tabanlı API ile sipariş, doğrulama ve bildirim mesajlarını kodunuzdan gönderin; teslim raporlarını webhook ile alın.
SMS API ile otomatik mesajlaşma
SMS API, yazılımınızın bir insan müdahalesi olmadan mesaj göndermesini sağlayan programlama arayüzüdür. Bir müşteri sipariş verdiğinde onay mesajı, kargo çıkış yaptığında takip numarası, giriş yapmaya çalıştığında doğrulama kodu otomatik olarak gönderilir. Her senaryo için panele girmeniz gerekmez; sisteminiz ilgili olayı tetikler, Uyum SMS API'sine bir istek yollar ve mesaj kısa sürede iletime alınır.
Uyum SMS API'si, REST mimarisi ve JSON veri biçimi üzerine kuruludur. PHP, Python, Node.js, Java, C#, Go ya da Ruby fark etmeksizin HTTP isteği gönderebilen her dil ile kullanılabilir. Ayrı bir kütüphane kurmanız gerekmez; yalnızca anahtarınızı ve birkaç parametreyi göndermeniz yeterlidir.
Entegrasyon adımları
- Panelden hesap oluşturun ve API anahtarınızı alın.
- Onaylı gönderici başlığınızı belirleyin.
- Güvenlik için anahtarı sunucu tarafında, ortam değişkeninde saklayın; istemci koduna asla koymayın.
- Test numaranızla ilk isteği gönderin ve panelde raporu doğrulayın.
- Teslim raporu için webhook adresinizi tanımlayın.
Örnek istek
Aşağıdaki istek ve yanıt örnekleri entegrasyonu kolaylaştırmak içindir. Güncel uç nokta, parametre ve sürüm bilgisi panelinizdeki resmi API dokümantasyonunda yer alır.
cURL
curl -X POST "https://api.uyumsms.com/v1/sms/send" \
-H "Authorization: Bearer API_ANAHTARINIZ" \
-H "Content-Type: application/json" \
-d '{
"sender": "UYUMSMS",
"to": ["905551112233"],
"message": "Siparişiniz kargoya verildi. Takip: 123456",
"reference": "siparis-10482"
}'
PHP
$ch = curl_init('https://api.uyumsms.com/v1/sms/send');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . getenv('UYUM_API_KEY'),
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'sender' => 'UYUMSMS',
'to' => ['905551112233'],
'message' => 'Doğrulama kodunuz: 482915',
]),
]);
$response = curl_exec($ch);
Örnek yanıt
{
"status": "queued",
"message_id": "msg_8f3a21c",
"credits_used": 1
}
Yanıt kodları ve hata yönetimi
API, standart HTTP durum kodlarını kullanır. İstemci kodunuzda aşağıdaki durumları ele almanızı öneririz:
- 200 OK: İstek kabul edildi, mesaj kuyruğa alındı. Yanıttaki
message_iddeğerini kaydedin. - 400 Bad Request: Parametre eksik ya da numara biçimi hatalı.
- 401 Unauthorized: API anahtarı geçersiz.
- 402 Payment Required: Bakiye yetersiz; paket yüklemeniz gerekir.
- 429 Too Many Requests: Hız sınırı aşıldı; istekleri bir süre bekleterek yeniden deneyin.
Geçici ağ hatalarında istekleri üstel bekleme (exponential backoff) ile yeniden denemek iyi bir uygulamadır. Aynı mesajın çift gönderilmesini önlemek için isteğe kendi sisteminizdeki benzersiz bir reference değeri ekleyin.
Teslim raporu webhook'u
Mesaj gönderildikten sonra durum bilgisini sürekli sorgulamak yerine, durum değiştiğinde Uyum SMS'in sizin adresinize bir bildirim göndermesini sağlayabilirsiniz. Webhook, her mesaj için delivered, failed ya da pending bilgisini JSON olarak iletir. Bu sayede sipariş sisteminizde "SMS iletildi" bilgisini otomatik güncelleyebilir, iletilemeyen OTP mesajlarında kullanıcıya alternatif doğrulama yöntemi sunabilirsiniz.
Webhook adresinizin HTTPS üzerinden çalışmasını, gelen isteği imza ile doğrulamasını ve 5 saniye içinde 200 yanıtı vermesini öneririz.
Güvenlik ve performans önerileri
- API anahtarlarını düzenli aralıklarla yenileyin ve kullanılmayan anahtarları silin.
- Sunucu IP adreslerinizi panelden beyaz listeye alın.
- OTP gönderimlerinde numara başına dakikalık limit uygulayın.
- Toplu gönderimlerde tek tek istek yerine gruplanmış istek (batch) kullanarak ağ yükünü azaltın.
- Hassas mesaj içeriklerini günlüklerinize (log) yazmayın; KVKK yükümlülüklerinizi göz önünde bulundurun.
Hangi senaryolarda API tercih edilmeli?
Mesaj gönderimi bir olaya bağlıysa (sipariş, ödeme, giriş, randevu) API doğru seçimdir. Elle hazırlanan kampanyalar için toplu SMS paneli, yalnızca doğrulama kodları için OTP SMS hizmeti uygundur. Üç yöntem aynı bakiyeyi kullanır; bu yüzden ihtiyaçlarınız değiştikçe paket değiştirmeniz gerekmez. Hazır eklentiler arıyorsanız entegrasyonlar sayfasını inceleyin.
SMS API hakkında sık sorulanlar
API kullanımı ek ücretli mi?
Hayır. API üzerinden gönderilen mesajlar, panelden gönderilenlerle aynı SMS paketi bakiyesinden düşer. Ek lisans veya kurulum bedeli yoktur.
Test ortamı var mı?
Hesabınızla birlikte test modu sunulur. Test isteklerinde mesaj operatöre iletilmez, yalnızca doğrulama yapılır ve bakiyeniz düşmez.
Hız sınırı nedir?
Varsayılan hız sınırı hesap türüne göre belirlenir. Yüksek hacimli entegrasyonlar için limitleri destek ekibimizle birlikte artırabiliriz.
API entegrasyonunuza başlayın
API anahtarınızı alın ve ilk isteğinizi gönderin. Entegrasyon sürecinde teknik ekibimizden destek alabilirsiniz.