İçeriğe geç
starproxy

StarProxy API

Panelin büyük kısmı koddan da kullanılabilir. Bakiyenizi kontrol edin, fiyatlara bakın, bakiyeden sipariş verin ve seçenekli proxy kullanıcı adları alın, hepsi tek bir REST API ile.

Nereden başlamalıyım?

  1. 1Bir kullanıcı adıyla kayıt olun ve panele giriş yapın.
  2. 2Bağlantı sekmesinde bir API anahtarı oluşturun. Anahtarın tamamı yalnızca bir kez, oluşturduğunuzda gösterilir, bu yüzden hemen güvenli bir yere kaydedin.
  3. 3Anahtarı gerektiren her istekte Authorization başlığında gönderin.
  4. 4Anahtarın çalıştığını kontrol etmek için önce /account çağırın, ardından /orders ile sipariş verin.

Kimlik doğrulama

Kendi hesabınızla ilgili istekler (account, orders, proxy-user) başlıkta Authorization: Bearer spk_... olarak gönderilen bir API anahtarı gerektirir. Fiyatlar, ülkeler ve teklifler herkese açıktır, anahtarsız çalışır.

StarProxy her anahtarın kendisini değil, yalnızca hash değerini saklar. Bir anahtarı kaybederseniz panelden yenisini oluşturun. Eski anahtar o anda çalışmayı bırakır. Anahtarları yalnızca sunucu kodunda tutun. Asla tarayıcıda çalışan koda veya herkese açık bir depoya koymayın.

HTTP header
Authorization: Bearer spk_your_api_key

Temel URL ve veri biçimi

Temel URL
https://starproxy.shop/api/v1
İstek ve yanıt gövdesi
application/json
Tutarlar
Sayı olarak USD, örn. 1047.70
Zaman damgaları
ISO 8601 (UTC)

Çağrı sınırı var mı?

Bir API anahtarı dakikada en fazla 60 çağrı yapabilir. Anahtarsız herkese açık uç noktalar IP başına dakikada 60 çağrıya izin verir. Sınırı aşarsanız HTTP 429 alırsınız, bir dakika bekleyip tekrar gönderin.

Hatalar nasıl görünür?

Bir HTTP durum kodu ve kısa bir hata kodu ile mesaj içeren JSON gövdesi.

Örnek
{
  "error": {
    "code": "insufficient_balance",
    "message": "Your balance is too low for this order. Top up in the dashboard."
  }
}
code
bad_requestHTTP 400Gerekli bir değer eksik veya değer bu ürün için geçerli değil.
unauthorizedHTTP 401API anahtarı eksik veya eşleşmiyor.
insufficient_balanceHTTP 402Bakiyeniz sipariş toplamından düşük. Hiçbir şey düşülmedi.
not_foundHTTP 404Hesabınızda bu id ile bir sipariş yok.
rate_limitedHTTP 429Bir dakika içinde çok fazla istek.
server_errorHTTP 500Sunucu isteği tamamlayamadı. Hiçbir şey düşülmedi.

Uç noktalar

Hesabı getir

GET/api/v1/accountAPI anahtarı gerekli

Bakiyenizi, proxy host ve portlarını, proxy kullanıcı adı ve şifresini ve izinli IP'lerinizi döndürür.

İstek
curl https://starproxy.shop/api/v1/account \
  -H "Authorization: Bearer spk_your_api_key"
Yanıt
{
  "username": "star_user01",
  "balance_usd": 1300,
  "proxy": {
    "host": "gate.starproxy.shop",
    "http_port": 6100,
    "socks5_port": 6200,
    "username": "spexample1",
    "password": "your_password"
  },
  "allowed_ips": [
    "203.0.113.10"
  ]
}

Ürünleri ve fiyatları getir

GET/api/v1/productsAnahtar gerekmez

Fiyatlar sayfasıyla aynı fiyat tablosundan her ürünün sipariş aralığını, miktar basamağı başına fiyatını ve süre indirimlerini döndürür.

İstek
curl https://starproxy.shop/api/v1/products
Yanıt
{
  "currency": "USD",
  "prices_as_of": "2026-10-31",
  "products": [
    {
      "id": "unlimited",
      "unit": "day",
      "quantity": {
        "meaning": "days",
        "min": 1,
        "max": 365
      },
      "...": "..."
    },
    {
      "id": "residential",
      "unit": "gb",
      "...": "..."
    }
  ]
}

Ülkeleri ve şehirleri listele

GET/api/v1/countriesAnahtar gerekmez

Her ürünün desteklediği ülkeleri ve -city- kullanıcı adı seçeneği için şehir değerlerini döndürür.

AlanAnlamı
productİsteğe bağlıunlimited, residential, isp, datacenter değerlerinden biri. Varsayılan residential.
İstek
curl "https://starproxy.shop/api/v1/countries?product=datacenter"
Yanıt
{
  "product": "datacenter",
  "countries": [
    {
      "code": "us",
      "name": "United States",
      "region": "americas",
      "datacenter": true,
      "cities": [
        {
          "name": "New York",
          "value": "new_york"
        },
        {
          "name": "Los Angeles",
          "value": "los_angeles"
        }
      ]
    }
  ]
}

Fiyat teklifi alın

POST/api/v1/quoteAnahtar gerekmez

Bakiyenize dokunmadan sipariş toplamını hesaplar. Sipariş için kullanacağınız gövdenin aynısını gönderin.

AlanAnlamı
productZorunluunlimited, residential, isp, datacenter değerlerinden biri.
quantityZorunluunlimited için gün (1~365), residential için GB (5~5,000), isp (1~1,000) veya datacenter (5~5,000) için IP sayısı.
concurrencyİsteğe bağlıYalnızca unlimited. 200, 500, 1000, 2000 değerlerinden biri.
bandwidthİsteğe bağlıYalnızca unlimited, Mbps cinsinden. 100, 200, 500, 1000 değerlerinden biri.
monthsİsteğe bağlıYalnızca isp ve datacenter. 1, 3, 6, 12 değerlerinden biri.
countryİsteğe bağlıYalnızca isp ve datacenter. jp gibi iki harfli ülke kodu. Geçerli değerler için /countries'e bakın.
İstek
curl -X POST https://starproxy.shop/api/v1/quote \
  -H "Content-Type: application/json" \
  -d '{"product":"unlimited","quantity":30,"concurrency":1000,"bandwidth":200}'
Yanıt
{
  "product": "unlimited",
  "quantity": 30,
  "unit_price_usd": 8.41,
  "unit": "day",
  "total_usd": 252.3
}

Sipariş oluştur

POST/api/v1/ordersAPI anahtarı gerekli

Toplamı bakiyenizden alır ve siparişi oluşturur. Durum pending (etkinleştiriliyor) olarak başlar ve sipariş hazır olduğunda active olur. Etkinleştirilemezse refunded olur ve tutarın tamamı bakiyenize geri döner. Bakiye yetersizse 402 döner.

AlanAnlamı
productZorunluunlimited, residential, isp, datacenter değerlerinden biri.
quantityZorunluunlimited için gün (1~365), residential için GB (5~5,000), isp (1~1,000) veya datacenter (5~5,000) için IP sayısı.
concurrencyİsteğe bağlıYalnızca unlimited. 200, 500, 1000, 2000 değerlerinden biri.
bandwidthİsteğe bağlıYalnızca unlimited, Mbps cinsinden. 100, 200, 500, 1000 değerlerinden biri.
monthsİsteğe bağlıYalnızca isp ve datacenter. 1, 3, 6, 12 değerlerinden biri.
countryİsteğe bağlıYalnızca isp ve datacenter. jp gibi iki harfli ülke kodu. Geçerli değerler için /countries'e bakın.
İstek
curl -X POST https://starproxy.shop/api/v1/orders \
  -H "Authorization: Bearer spk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"product":"unlimited","quantity":30,"concurrency":1000,"bandwidth":200}'
Yanıt
{
  "order": {
    "id": "SP-7KQ2M-X4HTD",
    "product": "unlimited",
    "quantity": 30,
    "months": null,
    "concurrency": 1000,
    "bandwidth_mbps": 200,
    "country": null,
    "unit_price_usd": 8.41,
    "total_usd": 252.3,
    "status": "pending",
    "created_at": "2026-10-31T09:12:44.120Z",
    "updated_at": "2026-10-31T09:12:44.120Z"
  },
  "balance_usd": 1047.7
}

Siparişleri listele

GET/api/v1/ordersAPI anahtarı gerekli

En yeniden başlayarak en fazla 100 sipariş döndürür.

AlanAnlamı
statusİsteğe bağlıpending, active, refunded değerlerinden biri. Tüm durumlar için boş bırakın.
İstek
curl "https://starproxy.shop/api/v1/orders?status=pending" \
  -H "Authorization: Bearer spk_your_api_key"
Yanıt
{
  "orders": [
    {
      "id": "SP-7KQ2M-X4HTD",
      "product": "unlimited",
      "quantity": 30,
      "months": null,
      "concurrency": 1000,
      "bandwidth_mbps": 200,
      "country": null,
      "unit_price_usd": 8.41,
      "total_usd": 252.3,
      "status": "pending",
      "created_at": "2026-10-31T09:12:44.120Z",
      "updated_at": "2026-10-31T09:12:44.120Z"
    }
  ]
}

Sipariş getir

GET/api/v1/orders/{id}API anahtarı gerekli

id ile tek bir sipariş döndürür. Etkinleştirmenin bitip bitmediğini görmek için kullanın.

AlanAnlamı
idZorunluSipariş id'si, örneğin SP-7KQ2M-X4HTD.
İstek
curl https://starproxy.shop/api/v1/orders/SP-7KQ2M-X4HTD \
  -H "Authorization: Bearer spk_your_api_key"
Yanıt
{
  "order": {
    "id": "SP-7KQ2M-X4HTD",
    "product": "unlimited",
    "quantity": 30,
    "months": null,
    "concurrency": 1000,
    "bandwidth_mbps": 200,
    "country": null,
    "unit_price_usd": 8.41,
    "total_usd": 252.3,
    "status": "active",
    "created_at": "2026-10-31T09:12:44.120Z",
    "updated_at": "2026-10-31T09:40:02.511Z"
  }
}

Proxy kullanıcı adı oluştur

GET/api/v1/proxy-userAPI anahtarı gerekli

Seçenekleriniz eklenmiş bir proxy kullanıcı adı ile yapıştırmaya hazır HTTP ve SOCKS5 URL'lerini döndürür. session olmadan her istek yeni bir IP alır.

AlanAnlamı
productİsteğe bağlıunlimited, residential, isp, datacenter değerlerinden biri. Varsayılan unlimited.
countryİsteğe bağlıİki harfli ülke kodu, örneğin jp.
cityİsteğe bağlı/countries içindeki bir şehir değeri, örneğin tokyo. country gerektirir.
sessionİsteğe bağlı1~32 harf veya rakam. Aynı session değerine sahip istekler tek bir IP'yi paylaşır.
ttlİsteğe bağlıOturum IP'sinin korunacağı dakika, 1~60. Varsayılan 30.
İstek
curl "https://starproxy.shop/api/v1/proxy-user?product=residential&country=jp&city=tokyo&session=job42&ttl=30" \
  -H "Authorization: Bearer spk_your_api_key"
Yanıt
{
  "username": "spexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30",
  "password": "your_password",
  "http": "http://spexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30:your_password@gate.starproxy.shop:6100",
  "socks5": "socks5h://spexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30:your_password@gate.starproxy.shop:6200"
}

Tam örnek

Fiyat teklifi alan, bakiyeden sipariş veren ve Japonya'daki bir IP üzerinden bağlanan tek bir betik.

Python (requests)
import requests

API = "https://starproxy.shop/api/v1"
HEAD = {"Authorization": "Bearer spk_your_api_key"}

# 1) Check the price first
plan = {"product": "residential", "quantity": 100}
print(requests.post(f"{API}/quote", json=plan).json())

# 2) Order from your balance
r = requests.post(f"{API}/orders", json=plan, headers=HEAD)
order = r.json()["order"]
print(order["id"], order["status"])

# 3) Get a username for Japanese IPs
u = requests.get(f"{API}/proxy-user", headers=HEAD,
                 params={"product": "residential", "country": "jp"}).json()
proxies = {"http": u["http"], "https": u["http"]}
print(requests.get("https://ipinfo.io/json", proxies=proxies, timeout=30).json())
Node.js 18+
const API = "https://starproxy.shop/api/v1";
const HEAD = { Authorization: "Bearer spk_your_api_key", "Content-Type": "application/json" };

// Check the balance
const acc = await fetch(`${API}/account`, { headers: HEAD }).then((r) => r.json());
console.log(acc.balance_usd);

// Order 7 days of unlimited
const res = await fetch(`${API}/orders`, {
  method: "POST",
  headers: HEAD,
  body: JSON.stringify({ product: "unlimited", quantity: 7, concurrency: 500, bandwidth: 100 }),
});
if (res.status === 402) console.log("Top up first");
else console.log((await res.json()).order.id);

API siparişleri panel siparişleriyle aynı şekilde işlenir ve Geçmiş sekmesinde görünür. Örneklerdeki spk_your_api_key yerine kendi anahtarınızı yazın.

StarProxy'yi doğrudan kodunuzdan kullanın

Bir kullanıcı adıyla kayıt olun, panelde bir API anahtarı oluşturun ve API'yi çağırmaya başlayın.