Yeni misiniz? Bu adımları izleyin
- 1E-posta ve şifreyle ya da token ile kayıt olun ve paneli açın.
- 2Bağlantı sekmesinde bir API anahtarı oluşturun. Anahtarın tamamı yalnızca bir kez, oluşturduğunuz anda görünür, o yüzden hemen kaydedin.
- 3Anahtar gerektiren her isteğin Authorization başlığına anahtarı ekleyin.
- 4Anahtarın kabul edildiğinden emin olmak için önce /account çağırın, ardından /orders ile sipariş verin.
Kimlik doğrulama nasıl çalışır?
Kendi hesabınıza dokunan istekler (account, orders, proxy-user) API anahtarı gerektirir. Anahtarı başlıkta Authorization: Bearer pwk_... olarak gönderin. Fiyatlar, ülkeler ve teklifler herkese açıktır, anahtarsız çağrılabilir.
ProxyWorld sunucuları anahtarın kendisini asla saklamaz, yalnızca hash değerini saklar. Bir anahtarı kaybederseniz panelden yenisini oluşturun, eskisi hemen engellenir. Anahtarları yalnızca sunucu tarafı kodda kullanın. Bir anahtar tarayıcıda çalışan koda veya herkese açık bir depoya girerse başkası onu kullanabilir.
Authorization: Bearer pwk_your_api_key
Temel URL ve veri biçimi
- Temel URL
- https://proxyworld.shop/api/v1
- İstek ve yanıt gövdeleri
- application/json
- Tutarlar
- Sayı olarak USD, örneğin 1058.50
- Zaman damgaları
- ISO 8601 (UTC)
Kaç çağrı yapabilirim?
Her API anahtarı dakikada 60 çağrı yapabilir. Anahtarsız çağrılan herkese açık uç noktalar her IP için dakikada 60 çağrıya izin verir. Bunu aşarsanız HTTP 429 alırsınız. Yaklaşık bir dakika bekleyip tekrar deneyin.
Bir şey başarısız olursa ne döner?
Bir HTTP durum kodu ve kısa bir hata kodu ile açıklama içeren JSON gövdesi alırsınız.
{
"error": {
"code": "insufficient_balance",
"message": "Your balance is too low for this order. Top up in the dashboard."
}
}| HTTP | code | Anlamı |
|---|---|---|
| bad_requestHTTP 400Gerekli bir değer eksik veya bu ürünün kabul etmediği bir değer gönderildi. | Gerekli bir değer eksik veya bu ürünün kabul etmediği bir değer gönderildi. | |
| unauthorizedHTTP 401API anahtarı eksik veya geçerli bir anahtar değil. | API anahtarı eksik veya geçerli bir anahtar değil. | |
| insufficient_balanceHTTP 402Bakiyeniz sipariş toplamından az. Bakiyenizden para çekilmedi. | Bakiyeniz sipariş toplamından az. Bakiyenizden para çekilmedi. | |
| not_foundHTTP 404Hesabınızda bu numaraya sahip bir sipariş yok. | Hesabınızda bu numaraya sahip bir sipariş yok. | |
| rate_limitedHTTP 429Dakika başına izin verilen çağrı sayısını aştınız. | Dakika başına izin verilen çağrı sayısını aştınız. | |
| server_errorHTTP 500Sunucu isteği tamamlayamadı. Bakiyenizden para çekilmedi. | Sunucu isteği tamamlayamadı. Bakiyenizden para çekilmedi. |
Uç noktalar
Hesabınızı görüntüleyin
GET/api/v1/accountAPI anahtarı gerekli
Giriş yönteminizi (login: email veya token), e-postanızı, bakiyenizi, proxy host ve portlarını, proxy kullanıcı adı ve şifresini ve izinli IP'leri döndürür. Token ile oluşturulan hesaplarda email null olur.
curl https://proxyworld.shop/api/v1/account \ -H "Authorization: Bearer pwk_your_api_key"
{
"login": "email",
"email": "you@example.com",
"balance_usd": 1300,
"proxy": {
"host": "gate.proxyworld.shop",
"http_port": 6100,
"socks5_port": 6200,
"username": "pwexample1",
"password": "your_password"
},
"allowed_ips": [
"203.0.113.10"
]
}Ürünleri ve fiyatları görüntüleyin
GET/api/v1/productsAnahtarsız çalışır
Her ürün için sipariş aralığını, her miktar basamağının birim fiyatını ve süre indirimlerini döndürür. Fiyatlar sayfasıyla aynı fiyat tablosunu kullanır.
curl https://proxyworld.shop/api/v1/products
{
"currency": "USD",
"prices_as_of": "2026-10-31",
"products": [
{
"id": "unlimited",
"unit": "day",
"quantity": {
"meaning": "days",
"min": 1,
"max": 365
},
"...": "..."
},
{
"id": "residential",
"unit": "gb",
"...": "..."
}
]
}Ülkeler ve şehirler
GET/api/v1/countriesAnahtarsız çalışır
Her ürün için seçebileceğiniz ülkeleri ve -city- kullanıcı adı seçeneğinde kullanılacak şehir değerlerini döndürür.
| Ad | Tür | Anlamı |
|---|---|---|
productİsteğe bağlı | string | unlimited, residential, isp, datacenter değerlerinden biri. Belirtilmezse residential kullanılır. |
curl "https://proxyworld.shop/api/v1/countries?product=datacenter"
{
"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/quoteAnahtarsız çalışır
Bakiyenize dokunmadan sipariş toplamını hesaplar. Sipariş verirken göndereceğiniz gövdenin aynısını gönderin.
| Ad | Tür | Anlamı |
|---|---|---|
productZorunlu | string | unlimited, residential, isp, datacenter değerlerinden biri. |
quantityZorunlu | integer | Sipariş miktarı: unlimited 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ı | integer | Yalnızca unlimited. 200, 500, 1000, 2000 değerlerinden birini seçin. |
bandwidthİsteğe bağlı | integer | Yalnızca unlimited, Mbps cinsinden. 100, 200, 500, 1000 değerlerinden biri. |
monthsİsteğe bağlı | integer | Yalnızca isp ve datacenter. 1, 3, 6, 12 değerlerinden biri. |
countryİsteğe bağlı | string | Yalnızca isp ve datacenter. jp gibi iki harfli ülke kodu. Kabul edilen değerler /countries içinde listelenir. |
curl -X POST https://proxyworld.shop/api/v1/quote \
-H "Content-Type: application/json" \
-d '{"product":"unlimited","quantity":30,"concurrency":1000,"bandwidth":200}'{
"product": "unlimited",
"quantity": 30,
"unit_price_usd": 8.05,
"unit": "day",
"total_usd": 241.5
}Sipariş verin
POST/api/v1/ordersAPI anahtarı gerekli
Toplamı bakiyenizden düşer ve siparişi oluşturur. Sipariş pending (etkinleştiriliyor) olarak başlar ve hazır olduğunda active olur. Etkinleştirilemeyen sipariş refunded olur ve ödediğiniz her şey bakiyenize geri döner. Bakiyeniz yetersizse 402 alırsınız.
| Ad | Tür | Anlamı |
|---|---|---|
productZorunlu | string | unlimited, residential, isp, datacenter değerlerinden biri. |
quantityZorunlu | integer | Sipariş miktarı: unlimited 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ı | integer | Yalnızca unlimited. 200, 500, 1000, 2000 değerlerinden birini seçin. |
bandwidthİsteğe bağlı | integer | Yalnızca unlimited, Mbps cinsinden. 100, 200, 500, 1000 değerlerinden biri. |
monthsİsteğe bağlı | integer | Yalnızca isp ve datacenter. 1, 3, 6, 12 değerlerinden biri. |
countryİsteğe bağlı | string | Yalnızca isp ve datacenter. jp gibi iki harfli ülke kodu. Kabul edilen değerler /countries içinde listelenir. |
curl -X POST https://proxyworld.shop/api/v1/orders \
-H "Authorization: Bearer pwk_your_api_key" \
-H "Content-Type: application/json" \
-d '{"product":"unlimited","quantity":30,"concurrency":1000,"bandwidth":200}'{
"order": {
"id": "PW-7KQ2M-X4HTD",
"product": "unlimited",
"quantity": 30,
"months": null,
"concurrency": 1000,
"bandwidth_mbps": 200,
"country": null,
"unit_price_usd": 8.05,
"total_usd": 241.5,
"status": "pending",
"created_at": "2026-10-31T09:12:44.120Z",
"updated_at": "2026-10-31T09:12:44.120Z"
},
"balance_usd": 1058.5
}Siparişlerinizi görüntüleyin
GET/api/v1/ordersAPI anahtarı gerekli
En yeniden başlayarak en fazla 100 siparişi gösterir.
| Ad | Tür | Anlamı |
|---|---|---|
statusİsteğe bağlı | string | pending, active, refunded değerlerinden biri. Her durumdaki siparişleri almak için boş bırakın. |
curl "https://proxyworld.shop/api/v1/orders?status=pending" \ -H "Authorization: Bearer pwk_your_api_key"
{
"orders": [
{
"id": "PW-7KQ2M-X4HTD",
"product": "unlimited",
"quantity": 30,
"months": null,
"concurrency": 1000,
"bandwidth_mbps": 200,
"country": null,
"unit_price_usd": 8.05,
"total_usd": 241.5,
"status": "pending",
"created_at": "2026-10-31T09:12:44.120Z",
"updated_at": "2026-10-31T09:12:44.120Z"
}
]
}Tek bir siparişi görüntüleyin
GET/api/v1/orders/{id}API anahtarı gerekli
Sipariş numarasıyla eşleşen siparişi döndürür. Etkinleştirmenin bitip bitmediğini kontrol etmek için kullanışlıdır.
| Ad | Tür | Anlamı |
|---|---|---|
idZorunlu | string | Sipariş numarası, örneğin PW-7KQ2M-X4HTD. |
curl https://proxyworld.shop/api/v1/orders/PW-7KQ2M-X4HTD \ -H "Authorization: Bearer pwk_your_api_key"
{
"order": {
"id": "PW-7KQ2M-X4HTD",
"product": "unlimited",
"quantity": 30,
"months": null,
"concurrency": 1000,
"bandwidth_mbps": 200,
"country": null,
"unit_price_usd": 8.05,
"total_usd": 241.5,
"status": "active",
"created_at": "2026-10-31T09:12:44.120Z",
"updated_at": "2026-10-31T09:40:02.511Z"
}
}Proxy kullanıcı adı oluşturun
GET/api/v1/proxy-userAPI anahtarı gerekli
Seçeneklerinizin eklendiği bir proxy kullanıcı adı ile olduğu gibi yapıştırabileceğiniz HTTP ve SOCKS5 URL'lerini döndürür. session göndermezseniz IP her istekte değişir.
| Ad | Tür | Anlamı |
|---|---|---|
productİsteğe bağlı | string | unlimited, residential, isp, datacenter değerlerinden biri. Belirtilmezse unlimited kullanılır. |
countryİsteğe bağlı | string | İki harfli ülke kodu, örneğin jp. |
cityİsteğe bağlı | string | /countries içinde listelenen bir şehir değeri, örneğin tokyo. Bununla birlikte country de gönderin. |
sessionİsteğe bağlı | string | 1~32 harf ve rakam. Aynı session değerine sahip istekler aynı IP'yi kullanır. |
ttlİsteğe bağlı | integer | Oturumun IP'yi ne kadar süre koruduğu, 1~60 dakika. Belirtilmezse 30 dakika. |
curl "https://proxyworld.shop/api/v1/proxy-user?product=residential&country=jp&city=tokyo&session=job42&ttl=30" \ -H "Authorization: Bearer pwk_your_api_key"
{
"username": "pwexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30",
"password": "your_password",
"http": "http://pwexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30:your_password@gate.proxyworld.shop:6100",
"socks5": "socks5h://pwexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30:your_password@gate.proxyworld.shop:6200"
}Baştan sona örnek
Fiyat teklifi alan, bakiyeden sipariş veren ve ardından Japonya'daki bir IP üzerinden bağlanan tek bir betik.
import requests
API = "https://proxyworld.shop/api/v1"
HEAD = {"Authorization": "Bearer pwk_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())const API = "https://proxyworld.shop/api/v1";
const HEAD = { Authorization: "Bearer pwk_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 üzerinden verilen siparişler panel siparişleriyle aynı şekilde işlenir ve diğerleriyle birlikte Geçmiş sekmesinde görünür. Örneklerdeki pwk_your_api_key yerine kendi API anahtarınızı yazın.