REST API v2 Stable

API Dokümantasyonu

REST API ile panelinizi entegre edin, otomatik siparişler oluşturun. Basit, hızlı ve güvenilir.

Başlangıç
Hesap Oluştur

Ücretsiz hesap oluşturun ve API anahtarınızı alın.

Anahtar Alın

Profil → API bölümünden API anahtarınızı kopyalayın.

İstek Gönderin

Endpointlerimize HTTP isteği göndererek sipariş oluşturun.

Base URL
Yanıt Formatı

Tüm yanıtlar JSON formatındadır. Başarılı istekler success: true içerir.

{
    "success": true,
    "data": { ... },
    "message": "İşlem başarılı"
}
Kimlik Doğrulama

Tüm API istekleri Authorization başlığı ile kimlik doğrulaması gerektirir. API anahtarınızı API sayfanızdan alabilirsiniz.

Önemli: API anahtarınızı asla istemci tarafı kodda (JavaScript) kullanmayın. Sadece sunucu tarafı işlemlerde kullanın.
Yöntem 1: Bearer Token (Önerilen)
Authorization: Bearer YOUR_API_KEY
Yöntem 2: X-API-Key Başlığı
X-API-Key: YOUR_API_KEY
Yöntem 3: Query Parameter (Kullanımdan kaldırılacak)
?api_key=YOUR_API_KEY
POST /api/v2/orders
Sipariş Oluştur

Yeni bir sipariş oluşturur. Hizmet ID, hedef link ve miktar belirterek sipariş verebilirsiniz.

Parametreler
Parametre Tip Zorunlu Açıklama
service_id integer Evet Hizmet ID'si
link string Evet Hedef URL (Instagram profil, YouTube video vb.)
quantity integer Evet Sipariş miktarı
Başarılı Yanıt
{
    "success": true,
    "data": {
        "order_id": 123456,
        "status": "pending",
        "charge": 1.50,
        "start_count": 0,
        "remains": 100
    }
}
Hata Kodları
400 - Geçersiz parametre 401 - Yetkisiz 402 - Yetersiz bakiye 422 - Doğrulama hatası
GET /api/v2/orders/status/{id}
Sipariş Durumu Sorgula

Belirli bir siparişin mevcut durumunu kontrol eder.

Parametreler
Parametre Tip Zorunlu Açıklama
id integer Evet Sipariş ID (URL yolunda)
Başarılı Yanıt
{
    "success": true,
    "data": {
        "order_id": 123456,
        "status": "in_progress",
        "charge": 1.50,
        "start_count": 1250,
        "remains": 432
    }
}
Hata Kodları
401 - Yetkisiz 404 - Sipariş bulunamadı
GET /api/v2/balance
Bakiye Sorgula

Hesabınızın mevcut bakiyesini döndürür.

Bu endpoint herhangi bir parametre gerektirmez.
Başarılı Yanıt
{
    "success": true,
    "data": {
        "balance": 150.75,
        "currency": "TRY"
    }
}
Hata Kodları
401 - Yetkisiz
GET /api/v2/services
Hizmet Listesi

Mevcut tüm hizmetleri listeler. İsteğe bağlı olarak kategoriye göre filtreleyebilirsiniz.

Parametreler
Parametre Tip Zorunlu Açıklama
category_id integer Hayır Kategori ID (opsiyonel)
Başarılı Yanıt
{
    "success": true,
    "data": [
        {
            "id": 1,
            "name": "Instagram Takipçi [Hızlı]",
            "category": "Instagram",
            "rate": 0.015,
            "min": 100,
            "max": 100000,
            "type": "default"
        }
    ]
}
Hata Kodları
401 - Yetkisiz
POST /api/v2/orders/bulk
Toplu Sipariş Durumu

Birden fazla siparişin durumunu tek seferde sorgular. Maksimum 100 sipariş.

Parametreler
Parametre Tip Zorunlu Açıklama
order_ids array Evet Sipariş ID dizisi (ör: [123, 456, 789])
Başarılı Yanıt
{
    "success": true,
    "data": [
        {"order_id": 123, "status": "completed", "charge": 2.00},
        {"order_id": 456, "status": "in_progress", "charge": 1.50},
        {"order_id": 789, "status": "pending", "charge": 3.00}
    ]
}
Hata Kodları
400 - Geçersiz ID listesi 401 - Yetkisiz 422 - Maksimum 100 ID
Kod Örnekleri - Sipariş Oluştur
curl -X POST https://begenipaneli.com//api/v2/orders \\
  -H "Authorization: Bearer YOUR_API_KEY" \\
  -H "Content-Type: application/json" \\
  -d '{
    "service_id": 1,
    "link": "https://instagram.com/kullanici",
    "quantity": 1000
  }'
<?php
$apiUrl = 'https://begenipaneli.com//api/v2/orders';
$apiKey = 'YOUR_API_KEY';

$data = [
    'service_id' => 1,
    'link'       => 'https://instagram.com/kullanici',
    'quantity'   => 1000,
];

$ch = curl_init($apiUrl);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST           => true,
    CURLOPT_HTTPHEADER     => [
        'Authorization: Bearer ' . $apiKey,
        'Content-Type: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode($data),
]);

$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

$result = json_decode($response, true);
if ($result['success'] ?? false) {
    echo 'Sipariş ID: ' . $result['data']['order_id'];
} else {
    echo 'Hata: ' . ($result['message'] ?? 'Bilinmeyen hata');
}
import requests

API_URL = "https://begenipaneli.com//api/v2/orders"
API_KEY = "YOUR_API_KEY"

headers = {
    "Authorization": f"Bearer {API_KEY}",
    "Content-Type": "application/json",
}
payload = {
    "service_id": 1,
    "link": "https://instagram.com/kullanici",
    "quantity": 1000,
}

response = requests.post(API_URL, headers=headers, json=payload)
data = response.json()

if data.get("success"):
    print(f"Sipariş ID: {data['data']['order_id']}")
else:
    print(f"Hata: {data.get('message', 'Bilinmeyen hata')}")
Rate Limiting

API istekleri hız sınırına tabidir. Aşırı istek göndermek 429 Too Many Requests hatasıyla sonuçlanır.

PlanDakika BaşınaSaat BaşınaGün Başına
Ücretsiz305005,000
Standart601,00015,000
Pro1202,00050,000
Bayi3005,000Sınırsız
Yanıt başlıklarında X-RateLimit-Remaining ve X-RateLimit-Reset değerlerini kontrol edin.
Webhooklar

Webhooklar, sipariş durumu değiştiğinde otomatik olarak sunucunuza bildirim göndermenizi sağlar. Bu sayede sürekli polling yapmak zorunda kalmazsınız.

Webhook Oluşturma

API sayfanızdan veya aşağıdaki endpoint üzerinden webhook ekleyebilirsiniz:

POST https://begenipaneli.com//api/webhooks
Content-Type: application/json
Authorization: Bearer YOUR_API_KEY

{
    "url": "https://your-server.com/webhook",
    "events": ["order.completed", "order.failed", "order.refunded"]
}
Webhook Payload
{
    "event": "order.completed",
    "timestamp": "2025-01-15T14:30:00Z",
    "data": {
        "order_id": 123456,
        "status": "completed",
        "charge": 1.50,
        "start_count": 0,
        "remains": 0
    },
    "signature": "sha256=abc123..."
}
Güvenlik: Webhook imzasını doğrulayarak isteğin gerçekten bizden geldiğinden emin olun. HMAC-SHA256 ile X-Webhook-Signature başlığını kontrol edin.
Hata Kodları
KodİsimAçıklama
200 OK İstek başarılı
201 Created Kaynak başarıyla oluşturuldu
400 Bad Request Geçersiz veya eksik parametre
401 Unauthorized API anahtarı geçersiz veya eksik
402 Payment Required Yetersiz bakiye
403 Forbidden Bu kaynağa erişim izniniz yok
404 Not Found İstenen kaynak bulunamadı
422 Unprocessable Entity Doğrulama hatası - parametreler geçersiz
429 Too Many Requests Rate limit aşıldı, biraz bekleyin
500 Internal Server Error Sunucu iç hatası
502 Bad Gateway Üst sağlayıcı bağlantı hatası
503 Service Unavailable Bakım modunda veya servis kullanılamıyor
SDK & Araçlar

Geliştirme sürecinizi hızlandırmak için resmi SDK\'ler ve araçlar:

PHP SDK

Composer ile kurulum

composer require smmpanel/php-sdk İndir
Python SDK

pip ile kurulum

pip install smmpanel-sdk İndir
Node.js SDK

npm ile kurulum

npm install smmpanel-node İndir