SMM Panel API Dokümanı
SMM panel API v2 standardıyla 4SNS PLUS hizmetlerini Telegram botunuzdan veya kendi panelinizden sipariş edin.
SMM panel API nedir?
SMM panel API, bir programın web sitesine girmeden hizmet listesini almasını, sipariş vermesini, sipariş durumunu ve bakiyeyi kontrol etmesini sağlar. 4SNS PLUS, birçok panel ve botun kullandığı standart SMM panel API v2 biçimini destekler; başka bir panele bağladığınız kod, URL ve anahtarı değiştirdiğiniz anda çalışır.
API fiyatları ve bakiye web sitesiyle aynıdır. services yanıtındaki rate, fiyat listesindeki 1,000 başına fiyata (ABD doları) eşittir; add ile verilen siparişler bakiyeden web siparişleriyle tamamen aynı şekilde düşülür ve panelinizdeki sipariş geçmişinde de görünür. İptal edilen veya kısmi tamamlanan siparişlerden dönen tutarlar aynı bakiyeye geri yüklenir.
Temel bilgiler
| Endpoint | https://4snsplus.com/api/v2 |
| Yöntem | POST |
| İstek biçimi | Form alanları (application/x-www-form-urlencoded, multipart) veya JSON gövdesi |
| Yanıt | JSON; hatalar da error alanıyla HTTP 200 olarak döner |
| Kimlik doğrulama | Her istekte key parametresi (API anahtarınız) |
| İstek sınırı | Anahtar başına dakikada 300 istek |
| Para birimi | ABD doları (USD) |
İstek örneği
curl -X POST https://4snsplus.com/api/v2 \ -d key=YOUR_API_KEY \ -d action=balance
import requests
r = requests.post("https://4snsplus.com/api/v2", data={
"key": "YOUR_API_KEY",
"action": "add",
"service": 2210,
"link": "https://t.me/yourchannel",
"quantity": 1000,
})
print(r.json()) # {"order": 31877} or {"error": "..."}API anahtarını nasıl alırım?
İlk bakiye yüklemeniz hesabınıza yansıdığında, panelinizdeki API anahtarı menüsünden bir API anahtarı oluşturabilirsiniz. Anahtar yalnızca oluşturulduğu anda bir kez gösterilir, bu yüzden güvenli bir yerde saklayın. Yeni bir anahtar oluşturduğunuzda önceki anahtar hemen devre dışı kalır.
Anahtar, hesap token'ınızdan ayrıdır. Botunuza veya sunucunuza yalnızca API anahtarını koyun, hesap token'ınızı asla koymayın. Anahtarınızın başkasının eline geçtiğini düşünüyorsanız API anahtarı ekranından yenisini oluşturmanız yeterli.
Hizmet listesi (services)
Sipariş verebileceğiniz tüm hizmetleri döndürür. rate, 1,000 başına fiyattır (USD); type Package olduğunda bir paketin fiyatıdır. type Custom Comments olduğunda miktar yerine yorum listesi gönderirsiniz. category, platform adı ile grup adından oluşur.
| Parametre | Açıklama |
|---|---|
| key | API anahtarınız |
| action | services |
Yanıt örneği
[
{
"service": 2210,
"name": "Members - 30 Days Non Drop - 30 Days Refill",
"type": "Default",
"category": "Telegram - Members (30 Days Non Drop)",
"rate": "1.4300",
"min": "100",
"max": "50000",
"refill": true,
"cancel": false
}
]Sipariş ver (add)
Sipariş oluşturur ve tutarı bakiyenizden düşer. Tutar, 1,000 başına fiyat ile miktarın çarpımıdır; Package için paket fiyatıdır, Custom Comments için yorum satırı sayısı miktar olarak sayılır. Sipariş, ilk bakiye yüklemesi yansımış hesaplarda kullanılabilir. Yanıttaki order, sipariş ID'nizdir.
| Parametre | Açıklama |
|---|---|
| key | API anahtarınız |
| action | add |
| service | Hizmet ID (services içindeki service) |
| link | Herkese açık link. Telegram için: t.me/name, özel davet linki t.me/+code, gönderi t.me/name/123, bot t.me/botname. @name de kabul edilir |
| quantity | Miktar (min ile max arasında). Package ve Custom Comments için gerekmez |
| comments | Yalnızca Custom Comments. Her satıra bir yorum, en fazla 10,000 satır, satır başına en fazla 500 karakter |
Yanıt örneği
{
"order": 31877
}Sipariş durumu (status)
Tek bir siparişin durumu. charge, iadelerden sonra gerçekte ödenen tutardır (USD, 6 ondalık), start_count siparişin başladığı andaki sayı, remains ise henüz teslim edilmeyen miktardır.
| Parametre | Açıklama |
|---|---|
| key | API anahtarınız |
| action | status |
| order | Sipariş ID |
Yanıt örneği
{
"charge": "1.430000",
"start_count": "8120",
"status": "In progress",
"remains": "410",
"currency": "USD"
}Çoklu sipariş durumu (status, orders)
Sipariş ID'leri virgülle birleştirilerek tek seferde en fazla 100 sipariş kontrol edilir. Var olmayan veya hesabınıza ait olmayan ID'lerin yerine hata döner.
| Parametre | Açıklama |
|---|---|
| key | API anahtarınız |
| action | status |
| orders | Sipariş ID listesi, örneğin 1,10,100 |
Yanıt örneği
{
"1": { "charge": "0.300000", "start_count": "120", "status": "Completed", "remains": "0", "currency": "USD" },
"10": { "error": "Incorrect order ID" }
}Refill talebi (refill)
Refill süresi olan bir hizmetin Completed veya Partial olarak biten siparişi için, bittiği andan itibaren sayılan Refill süresi içinde talep gönderin. Her siparişte bir açık talep olabilir ve talepler arasında 24 saat olmalıdır.
| Parametre | Açıklama |
|---|---|
| key | API anahtarınız |
| action | refill |
| order | Sipariş ID |
Yanıt örneği
{
"refill": 512
}Refill durumu (refill_status)
Tek bir Refill talebinin durumu.
| Parametre | Açıklama |
|---|---|
| key | API anahtarınız |
| action | refill_status |
| refill | Refill ID (refill yanıtındaki refill) |
Yanıt örneği
{
"status": "Completed"
}Bakiye (balance)
Bakiyeniz (USD, 6 ondalık).
| Parametre | Açıklama |
|---|---|
| key | API anahtarınız |
| action | balance |
Yanıt örneği
{
"balance": "84.120000",
"currency": "USD"
}Sipariş durumu değerleri
| Pending | Alındı. İletiliyor, başlaması bekleniyor veya bir operatör iletim sonucunu kontrol ediyor |
| In progress | Teslim ediliyor |
| Completed | Tamamen teslim edildi |
| Partial | Kısmen teslim edildi. Teslim edilmeyen kısım bakiyenize iade edilir |
| Canceled | Teslim edilmedi. Tutarın tamamı bakiyenize iade edilir |
Refill durumu değerleri
| Pending | Refill talebi alındı |
| In progress | Refill teslim ediliyor |
| Completed | Refill teslim edildi |
| Rejected | Refill talebi kabul edilmedi |
Hata mesajları
Hatalar, HTTP 200 yanıtında error alanı içeren JSON olarak döner. Kodunuzda önce error alanını kontrol edin.
{
"error": "Not enough funds on balance"
}| Invalid API key | Anahtar eksik, yanlış veya yeni bir anahtarla değiştirilmiş |
| Too many requests | Dakikada 300'den fazla istek. Kısa bir süre sonra tekrar deneyin |
| Incorrect action | action değeri yukarıdaki listede yok |
| Add funds first | İlk bakiye yüklemesi henüz yansımamış bir hesaptan sipariş |
| Incorrect service ID | Bu ID ile sipariş verilebilir hizmet yok |
| Incorrect link | Link boş veya bir web adresi değil |
| Quantity out of range | Miktar minimumun altında veya maksimumun üstünde |
| Incorrect comments | Custom Comments boş veya 10,000 satırı ya da satır başına 500 karakteri aşıyor |
| Not enough funds on balance | Bakiye sipariş tutarından düşük. Bakiye yükleyip tekrar sipariş verin |
| Incorrect order ID | Bu sipariş ID'si hesabınızda yok |
| Refill is not available for this service | Hizmetin Refill süresi yok |
| Order is not finished yet | Refill, sipariş Completed veya Partial olduğunda kullanılabilir |
| Refill period has ended | Siparişin bittiği andan sayılan Refill süresi doldu |
| Refill already requested | Bu siparişin zaten açık bir Refill talebi var |
| Refill already requested, try again later | Son talepten bu yana 24 saat geçmedi |
| Incorrect refill ID | Bu Refill ID'si hesabınızda yok |
SMM panel API bir Telegram botuna nasıl bağlanır?
1. Hizmet listesini kaydedin
services'i günde birkaç kez çağırın ve hizmet ID, ad, rate, min ve max bilgilerini kendi verinize kaydedin. Müşterilere göstereceğiniz fiyatı rate üzerine kendi kârınızı ekleyerek hesaplayın, sipariş verirken kaydettiğiniz hizmet ID'sini olduğu gibi kullanın.
2. Siparişten önce miktarı ve linki kontrol edin
Miktarın min ile max arasında olduğunu ve linkin t.me biçiminde olduğunu önceden kontrol etmek Quantity out of range ve Incorrect link hatalarını azaltır. Bakiyenizi önceden balance ile kontrol etmek de işe yarar.
3. Durumu toplu kontrol edin
Devam eden siparişleri birkaç dakikada bir, orders parametresiyle 100'lük gruplar halinde kontrol edin. Böylece anahtar başına dakikada 300 istek sınırının rahatça altında kalırsınız. Sipariş Completed, Partial veya Canceled olduğunda sonucu müşterinize bildirin.
4. Yalnızca biten siparişler için Refill isteyin
Refill hizmetine ait bir sipariş Completed veya Partial olduğunda refill gönderebilirsiniz. Yanıttaki Refill ID'sini kaydedin ve ilerlemeyi refill_status ile takip edin.
