VDS Host
API Bayilik VDS Sunucular VDS Yapılandırıcı Dedike Sunucular API Hakkımızda Bayilik Rehberleri İletişim Bayilik İletişim
codeReseller API v1

VDS Reseller API Rehberi

VDS API bayiliği için sunucu yönetimi ve entegrasyon referansı. API taban yolu: /api/reseller/v1 — erişim koşulları ve güncel entegrasyon kapsamı için ekibimizle görüşün.

Genel Bakış

Reseller API; sunucu oluşturma, güç yönetimi, konsol erişimi, işletim sistemi kurulumu, format, firewall, yedekleme ve ek IP işlemlerinin tamamını REST üzerinden sunar. Tüm yanıtlar JSON formatındadır.

# Taban yol
BASE https://api.vdshost.com/api/reseller/v1

# Tüm istekler şu başlıkları taşır
X-Api-Key: rk_live_xxxxxxxx
X-Timestamp: 1719230400
X-Signature: hmac_sha256(...)

Kimlik Doğrulama (HMAC)

Kimlik doğrulama modelinde istekler API anahtarı ve gizli anahtar çiftiyle HMAC kullanılarak imzalanır. İmzalama işlemi bayinin sunucusunda yapılmalıdır; gizli anahtar tarayıcıya gönderilmemelidir. Kullanılacak algoritma, imza girdisinin biçimi, zaman damgası ve başlıklar için erişim sırasında sağlanan güncel teknik sözleşmeyi esas alın.

# İmza şeması (istemci tarafı)
payload = method + "\n" + path + "\n" + timestamp + "\n" + body
signature = hmac_sha256(api_secret, payload)

# Örnek (curl)
curl -X POST https://api.vdshost.com/api/reseller/v1/vm \
  -H "X-Api-Key: KEY" \
  -H "X-Timestamp: TS" \
  -H "X-Signature: SIG" \
  -d '{"product_id":42,"os":"ubuntu-22.04"}'
info Erişim güvenliği: Entegrasyon sunucusunun çıkış IP adreslerini, anahtar yetkilerini ve kayıtların hassas verilerden arındırılmasını planlayın. Hesabınızda desteklenen erişim kısıtlarını ekibimizle doğrulayın.

Hata Kodları

KodAnlamı
200 / 201 / 202Başarılı / oluşturuldu / kuyruğa alındı
400Geçersiz istek gövdesi
401İmza geçersiz veya eksik
403IP beyaz listede değil / yetki yok
409Replay tespit edildi (timestamp tekrarı)
429Hız limiti aşıldı

Hesap & Ürünler

GET/api/reseller/v1/account

Aktif bakiye, mevcut indirim seviyesi (TIER) ve hesap durumunu döner.

# Yanıt
{
  "balance": 3250.00,
  "tier": "Gold",
  "discount": 28,
  "currency": "USD"
}
GET/api/reseller/v1/products

Satışa açık hazır VDS ürünlerini ve özel yapılandırma birim fiyatlarını listeler.

# Yanıt
[
  { "id": 42, "name": "VDS M", "cpu": 4, "ram": 8, "disk": 100, "price": 14.00 }
]

Sunucu Yaşam Döngüsü

GET/api/reseller/v1/vm

Hesaba bağlı tüm VDS örneklerini durumlarıyla listeler.

[
  { "id": "vm_8f3a21", "status": "running", "ip": "185.x.x.x" }
]
GET/api/reseller/v1/vm/{id}

Tek bir sunucunun kaynak, ağ, durum ve kaynak istatistiklerini döner.

{
  "id": "vm_8f3a21",
  "status": "running",
  "cpu": 4, "ram": 8, "disk": 100,
  "usage": { "cpu": 12.4, "bw": 820.5 }
}
POST/api/reseller/v1/vm

Yeni bir VDS sağlar. Hazır ürün için product_id, özel yapılandırma için cpu/ram/disk gönderin. Fiyat bakiyeye göre indirimli hesaplanır.

# İstek
{
  "cpu": 4, "ram": 8, "disk": 160,
  "os": "ubuntu-22.04", "hostname": "web-01"
}

# Yanıt 201
{ "id": "vm_8f3a21", "status": "provisioning" }
POST/api/reseller/v1/vm/{id}/resize

Mevcut bir sunucunun CPU, RAM veya disk kaynaklarını günceller.

# İstek
{ "cpu": 8, "ram": 16 }
# → 202 Accepted
POST/api/reseller/v1/vm/{id}/reinstall

Sunucuyu seçilen işletim sistemiyle formatlayıp yeniden kurar.

# İstek
{ "os": "debian-12" }
# → 202 Accepted
POST/api/reseller/v1/vm/{id}/terminate

Sunucuyu kalıcı olarak sonlandırır ve kaynakları serbest bırakır.

# → 200 OK
{ "id": "vm_8f3a21", "status": "terminated" }

Güç & Erişim

POST/api/reseller/v1/vm/{id}/power

Başlat, durdur, yeniden başlat veya zorla kapat. action: start · stop · reboot · force_stop.

# İstek
{ "action": "reboot" }
# → 200 OK
GET/api/reseller/v1/vm/{id}/credentials

Sunucunun kullanıcı adı ve ilk parolasını güvenli biçimde döner.

{ "username": "root", "password": "••••••••" }
POST/api/reseller/v1/vm/{id}/password

Sunucunun root/yönetici parolasını sıfırlar.

# → 200 OK
{ "password": "yeni-parola" }
POST/api/reseller/v1/vm/{id}/console

Tarayıcıdan erişilebilen tek kullanımlık NoVNC/KVM konsol bağlantısı üretir.

# → 200 OK
{ "console_url": "https://console.vdshost.com/...", "expires_in": 120 }

Yedek & Güvenlik

Yedekler

GET/api/reseller/v1/vm/{id}/backups

Sunucunun mevcut yedeklerini listeler.

[ { "backup_id": "bk_19c", "created_at": "2026-06-24T10:00:00Z" } ]
POST/api/reseller/v1/vm/{id}/backups

Anlık yedek alır.

# → 201 Created
{ "backup_id": "bk_19c" }
POST/api/reseller/v1/vm/{id}/backups/restore

Belirtilen yedeği geri yükler.

# İstek
{ "backup_id": "bk_19c" }
# → 202 Accepted
DELETE/api/reseller/v1/vm/{id}/backups

Belirtilen yedeği siler.

# İstek
{ "backup_id": "bk_19c" }
# → 200 OK

Firewall

GET/api/reseller/v1/vm/{id}/firewall

Sunucuya tanımlı firewall kurallarını döner.

[ { "id": 1, "port": 22, "proto": "tcp", "action": "allow" } ]
POST/api/reseller/v1/vm/{id}/firewall

Yeni bir firewall kuralı ekler.

# İstek
{ "port": 443, "proto": "tcp", "action": "allow" }
DELETE/api/reseller/v1/vm/{id}/firewall/{rule}

Belirtilen firewall kuralını kaldırır.

# → 200 OK

Entegrasyonlar

extensionWHMCS ModülüDetaylı rehber →

WHMCS entegrasyonunda satış ürünleri ile sağlayıcı ürünleri eşlenir; sipariş kabulü, kurulum, askıya alma ve sonlandırma işlemleri modülün desteklediği kapsamda bağlanır. Güncel modül dosyası, sürüm uyumluluğu ve kurulum yönergeleri için ekibimizle iletişime geçin. Ayrıntılı hazırlık adımlarını WHMCS VDS entegrasyon rehberinde bulabilirsiniz.

# ServerConnection eşlemesi
hostname = api.vdshost.com
username = {api_key}  # maskeli
password = {api_secret} # maskeli
module_config = { "upstream_product_id": 42, "os_map": {...} }
extensionWiseCP ModülüDetaylı rehber →

WiseCP ile VDS bayiliğinde ürün kimlikleri, işletim sistemi seçenekleri ve hizmet yaşam döngüsü uygun bir sunucu modülüne bağlanır. Kullanılan WiseCP sürümü ile modül uyumluluğu birlikte değerlendirilmelidir. Modül erişimi ve desteklenen işlemler hakkında ekibimizden bilgi alarak test planınızı oluşturun.

# UpstreamApiClient çağrıları
client.post('vm', body)     # oluştur
client.post('vm/{id}/power') # güç
client.post('vm/{id}/reinstall')
client.get('vm/{id}/backups')