Sade, Güvenilir ve Şeffaf SMS Onay Entegrasyonu.
SMSKap Developer API, onaylı geliştirici hesaplarına şeffaf standart katalog fiyatlarıyla WhatsApp, WhatsApp Business ve Telegram için fiziksel SIM hatları sağlar. Tüm çıktılarda operatör seviyesinde net, sade yanıtlar sunulur.
https://api.smskap.com/v1Üç adımda entegrasyonu tamamlayın
Geliştirici başvurunuzu yapın, hesabınız onaylandığında API anahtarınızı oluşturun ve güvenli sunucunuzda kullanmaya başlayın.
Developer formunu doldurun ve onay sürecini başlatın.
Hesabınız yönetici tarafından onaylandığında bildirim alın.
Canlı API anahtarınızı oluşturup sunucunuza tanımlayın.
Bearer Token ile Güvenli Erişim
Her istekte API anahtarınızı Authorization: Bearer <key> başlığıyla gönderin. Üretilen gizli anahtar yalnızca oluşturma anında bir kez gösterilir.
curl https://api.smskap.com/v1/account \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxxxxxx"Bakiye ve Hesap Durumu
GET /v1/account uç noktası ile hesap bakiyenizi, para birimini (TRY), tanımlı dakikalık ve günlük istek limitlerinizi sorgulayabilirsiniz.
/v1/accountOnaylı Live Key Gerekir{
"account": { "balance": 450.00, "currency": "TRY" },
"application": {
"name": "Production Bot",
"status": "approved",
"requests_per_minute": 60,
"daily_activation_limit": 200,
"currency": "TRY"
},
"environment": "live",
"request_id": "req_01J8SMSKAP123456789"
}Standart Servis ve Ülke Kataloğu
API sistemimiz sadece en yüksek başarı oranına sahip 3 ana servis ve 3 küresel ülkeye odaklanmıştır. Operatör routing altyapımız arka planda en kaliteli fiziksel SIM hatlarını otomatik olarak seçer.
Desteklenen Servisler
whatsappwhatsapp-businesstelegramDesteklenen Ülkeler
trusgbAPI'de sürpriz veya gizli marjlar yoktur. Fiyatlandırma doğrudan platformumuzun standart katalog fiyatları üzerinden uygulanır. Yüksek hacimli ortaklarımız için admin panelinden özel iskonto (indirim) oranı tanımlanabilir. GET /v1/offers uç noktası indiriminiz uygulanmış net fiyatları anlık olarak döndürür.
/v1/countriesAktif Ülkeler (TR, US, GB)/v1/servicesAktif Servisler (WhatsApp, WhatsApp Business, Telegram)/v1/offersCanlı Fiyat ve Stok DurumuNumara Tahsisi, SMS Sorgulama ve İade Akışı
Numara rezerve edin, gelen SMS kodunu sorgulayın veya kod gelmezse süresi içinde iptal edin. İptal edilen ve SMS kodu teslim edilmeyen aktivasyonların ücreti anında bakiyenize iade edilir.
/v1/activationsNumara Rezerve Et (POST /v1/activations)curl -X POST https://api.smskap.com/v1/activations \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxxxxxx" \
-H "Idempotency-Key: e9b8d2e1-4567-4d89-b123-987654321abc" \
-H "Content-Type: application/json" \
-d '{
"service_key": "whatsapp",
"country_code": "tr"
}'{
"activation": {
"id": "AKT-260827-ABC123",
"status": "waiting_code",
"service_key": "whatsapp",
"service_name": "WhatsApp",
"country_code": "tr",
"country_name": "Türkiye",
"number": "+905301234567",
"code": null,
"sale_amount": 40.50,
"currency": "TRY",
"expires_at": "2026-10-19T21:05:00Z",
"cancellable_at": "2026-10-19T20:47:00Z",
"poll_interval_seconds": 3
},
"request_id": "req_01J8SMSKAP123456789"
}/v1/activations/{activation_id}SMS Kodunu Oku (GET /v1/activations/{id})curl https://api.smskap.com/v1/activations/AKT-260827-ABC123 \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxxxxxx"{
"activation": {
"id": "AKT-260827-ABC123",
"status": "code_received",
"code": "482910",
"sale_amount": 40.50,
"currency": "TRY"
},
"request_id": "req_01J8SMSKAP123456789"
}/v1/activations/{activation_id}İptal ve İade (DELETE /v1/activations/{id})Resmi Python SDK ile Entegrasyon
Python uygulamalarınızda hazır açık kaynak kütüphanemizi kullanarak saniyeler içinde SMS doğrulama başlatabilirsiniz:
pip install smskapfrom smskap import SMSKapClient, SMSKapError
client = SMSKapClient(api_key="sk_live_xxxxxxxxxxxxxxxxxxxxxxxx")
try:
# 1. Numara rezerve et (WhatsApp / Türkiye)
act = client.create_activation(service="whatsapp", country="tr")
print(f"Tahsis edilen numara: {act['number']} (ID: {act['id']})")
# 2. SMS kodunu otomatik dinle (120 saniyeye kadar)
code = client.wait_for_code(activation_id=act["id"], timeout=120)
if code:
print(f"SMS Doğrulama Kodu: {code}")
else:
# Kod gelmezse iptal et; bakiye anında iade edilir
client.cancel_activation(act["id"])
print("Süre doldu, rezervasyon iptal edildi ve bakiye iade edildi.")
except SMSKapError as e:
print(f"Hata [{e.code}]: {e.message}")İzlenebilirlik, Limitler ve Güvenlik
API kullanımınız panel üzerinden gerçek zamanlı kontrol edilebilir limitlere tabidir.
Hesabınıza tanımlı dakikalık istek kotası (örn. 60/dk). Aşım durumunda 429 ve Retry-After döner.
Bir takvim gününde açılabilecek maksimum aktivasyon sayısıdır. Hacminize göre panelden artırılabilir.
Her yanıtta bulunan benzersiz kimliktir. Olası teknik inceleme veya destek taleplerinde bu kodu iletebilirsiniz.
Standart Hata Kodları ve Yanıt Formatı
Tüm hatalar standart JSON sözleşmesiyle döner. Uygulamanız error.code anahtarını baz alarak işlem yapmalıdır.
| HTTP | Hata Kodu (error.code) | Açıklama ve Çözüm |
|---|---|---|
| 400 | invalid_payload | Eksik veya geçersiz parametre (service_key veya country_code desteklenen listede değil). |
| 400 | insufficient_balance | Hesap bakiyeniz bu işlem için yetersiz. Geliştirici panelinden bakiye yükleyiniz. |
| 400 | cancel_window_expired | İptal penceresi süresi doldu veya SMS kodu zaten teslim edildiği için iptal edilemez. |
| 401 | invalid_api_key | Geçersiz, eksik veya iptal edilmiş Bearer API anahtarı. |
| 403 | forbidden | Geliştirici hesabınız henüz onaylanmadı veya askıya alındı. |
| 404 | no_numbers_available | İstenen ülke ve servis için şu anda uygun numara havuzda bulunamadı. Lütfen kısa süre sonra tekrar deneyiniz. |
| 404 | activation_not_found | Belirtilen aktivasyon ID bulunamadı. |
| 409 | activation_conflict | Aynı aktivasyon veya Idempotency-Key üzerinde çakışma oluştu. |
| 429 | rate_limit_exceeded | Dakikalık istek limitiniz aşıldı. Retry-After başlığında belirtilen saniye kadar bekleyiniz. |
| 429 | daily_activation_limit_exceeded | Tanımlı günlük aktivasyon limitinize ulaştınız. Artırım için destekle görüşünüz. |
| 503 | service_temporarily_unavailable | Operatör servisi geçici olarak kullanılamıyor. Lütfen kısa süre sonra tekrar deneyiniz. |