Api Dökümantasyonu – Onaylat – SMS Onay

Bayilik (Reseller) API Ayarları

API Anahtarınız

📦 Bayi Eklentisini İndirin

WordPress altyapılı kendi web sitenizde hemen numara satışına başlamak için hazır bayi eklentimizi kullanabilirsiniz. Eklentiyi indirip kurduktan sonra yukarıdaki API anahtarınızı girmeniz yeterlidir.

WordPress Bayi Eklentisini İndir v2.0 Son Güncelleme: Mart 2026 (Güvenlik Yaması İçerir)
🎁

Bayilere Özel - %15'ye Varan İndirim!

  • 10.000 TL Yüklemeye %5 İndirim
  • 20.000 TL Yüklemeye %10 İndirim
  • 50.000 TL Yüklemeye %15 İndirim

API Dokümantasyonu

Sitenizin dışından Onaybox altyapısını kullanarak bakiye sorgulama, numara kiralama ve SMS onayı alma işlemlerini bu API üzerinden gerçekleştirebilirsiniz.

Kimlik Doğrulama (Authentication)

Tüm isteklere Authorization: Bearer SİZİN_API_ANAHTARINIZ başlığını (header) ekleyebilir veya URL parametresi olarak ?api_key=SİZİN_API_ANAHTARINIZ gönderebilirsiniz.

1. Bakiye Sorgulama (GET)

curl -X GET https://onaylat.com/wp-json/api/v1/balance \
-H "Authorization: Bearer API_ANAHTARINIZ"

Başarılı Yanıt: { "balance": 1500.50 }

2. Servisler, Fiyatlar ve Stok Bilgisi (GET)

Sistemde aktif olan tüm servisleri, o anki stok durumlarını ve size özel indirimli fiyatlarını (TL) tek bir ekranda döndürür.

curl -X GET https://onaylat.com/wp-json/api/v1/services \
-H "Authorization: Bearer API_ANAHTARINIZ"

Başarılı Yanıt Örneği (Stok ve İndirim Dahil):

[
  {
    "country_id": 73,
    "country_name": "Türkiye (1542 Adet)",
    "service_code": "wa",
    "service_name": "WhatsApp",
    "price": "35.50",
    "count": 1542
  },
  ...
]

Filtreleme Parametreleri (İsteğe Bağlı):

  • ?service_code=wa İstediğiniz servise (örn: WhatsApp için "wa") ait tüm ülke fiyatlarını ve stoklarını listeler.
  • ?country_id=73 Sadece belirli bir ülkenin tüm servis ve stoklarını getirir.

3. Numara Kiralama (POST)

Belirtilen ülke ve servise ait yeni bir numara tahsis eder. İşlem başarılı olursa bakiyenizden otomatik olarak düşülür.

curl -X POST https://onaylat.com/wp-json/api/v1/get-number \
-d '{"country_id":"1","service_code":"wa"}'

Parametreler (Zorunlu İçerik - JSON):

  • country_id: Hangi ülkeden numara alınacağı (Bölüm 2'den alınır).
  • service_code: Hangi servis için alınacağı.
  • expected_price: (Opsiyonel) Sistemdeki fiyat ani değişirse yüksek fiyattan satın almamak için göndereceğiniz kendi maksimum fiyatınız.

Başarılı Yanıt (İşlem Gerçekleşti):

{
  "activation_id": "123456",
  "phone_number": "15551234567",
  "price": "15.50",
  "balance": "1485.00"
}

🚨 Dönen activation_id değerini sonraki adımlarda SMS'i dinlemek veya iptal etmek için mutlaka saklamalısınız.

Hata Yanıtları (Satın Alma Başarısız):

  • Yetersiz Bakiye: { "code": "insufficient_balance", "message": "Yetersiz bakiye." }
  • Stok Tükendi: { "code": "api_error", "message": "Numara bulunamadı." }

4. SMS Durumunu Sorgulama (GET)

Kiraladığınız numaraya gelen SMS'i kontrol etmek için kullanılır. SMS gelene kadar düzenli (örn: her 10 saniyede bir) istek atarak dinlemelisiniz.

curl -X GET https://onaylat.com/wp-json/api/v1/get-sms?activation_id=123456 \
-H "Authorization: Bearer API_ANAHTARINIZ"

Tamamlanmış Yanıt (SMS Kodunuz Geldi):

{
  "status": "completed",
  "sms_code": "12345",
  "full_sms": "Dogrulama kodunuz 12345"
}

Bekleyen Yanıt (Henüz Kod Gelmedi):

{ "status": "waiting", "message": "SMS henuz gelmedi." }

İptal Edilmiş Yanıt (İşlem Süresi Doldu veya İptal Edildi):

{ "code": "cancelled", "message": "İşlem iptal edildi", "data": { "status": 400 } }

5. İşlemi İptal Etme ve Bakiye İadesi (POST)

Sipariş sonrasında numara oluşturulduktan 2 dakika geçtikten sonra işlemi iptal edip, paranızı derhal iade alabilirsiniz.

curl -X POST https://onaylat.com/wp-json/api/v1/cancel \
-H "Authorization: Bearer API_ANAHTARINIZ" \
-H "Content-Type: application/json" \
-d '{"activation_id":"123456"}'

Başarılı Yanıt (İptal ve İade Tamamlandı):

{
  "status": "cancelled",
  "message": "İşlem iptal edildi, bakiye iade edildi",
  "refund_amount": 15.50,
  "new_balance": 1500.50
}

Hata Yanıtı (Bekleme Süresi Dolmadı):

{ "code": "cancel_error", "message": "Numarayı iptal etmek için en az 2 dakika beklemelisiniz." }