ProxyWorld API

在控制台做到的事,用程式也做得到。查看餘額、核對價格、用餘額下單及取得帶選項的代理用戶名稱,全部透過同一套 REST API。

第一次使用?請按以下步驟

  1. 1用電郵和密碼或權杖註冊,然後開啟控制台。
  2. 2在「連線」分頁發出 API 金鑰。完整金鑰只會在發出時顯示一次,請即時保存。
  3. 3在每個需要驗證的請求的 Authorization 標頭中放入金鑰。
  4. 4先呼叫 /account 確認金鑰有效,再用 /orders 下單。

驗證如何運作?

涉及你自己帳戶的請求(account、orders、proxy-user)需要 API 金鑰,請以 Authorization: Bearer pwk_... 放在標頭中發送。價格、國家及報價對所有人開放,毋須金鑰即可呼叫。

ProxyWorld 伺服器不會儲存金鑰本身,只儲存其雜湊值。如遺失金鑰,請在控制台建立新金鑰,舊金鑰會即時被封鎖。金鑰只應放在伺服器端程式碼中。如金鑰出現在瀏覽器執行的程式碼或公開的程式碼庫中,其他人便可使用。

HTTP header
Authorization: Bearer pwk_your_api_key

基本 URL 及資料格式

基本 URL
https://proxyworld.shop/api/v1
請求及回應內容
application/json
金額
以數字表示的美元,例如 1058.50
時間戳記
ISO 8601 (UTC)

可以呼叫多少次?

每條 API 金鑰每分鐘可呼叫 60 次。毋須金鑰的公開端點,每個 IP 每分鐘可呼叫 60 次。超出限制會收到 HTTP 429,請等候約一分鐘再試。

出錯時會返回甚麼?

你會收到 HTTP 狀態碼,以及包含簡短錯誤代碼和說明的 JSON 內容。

例子
{
  "error": {
    "code": "insufficient_balance",
    "message": "Your balance is too low for this order. Top up in the dashboard."
  }
}
code
bad_requestHTTP 400缺少必填值,或發送了此產品不接受的值。
unauthorizedHTTP 401缺少 API 金鑰,或金鑰無效。
insufficient_balanceHTTP 402餘額少於訂單總額,未有扣除任何款項。
not_foundHTTP 404你的帳戶沒有此編號的訂單。
rate_limitedHTTP 429已超出每分鐘允許的呼叫次數。
server_errorHTTP 500伺服器未能完成請求,未有扣除任何款項。

端點

查看帳戶

GET/api/v1/account需要 API 金鑰

返回你的登入方式(login:email 或 token)、電郵、餘額、代理主機及端口、代理用戶名稱和密碼,以及白名單 IP。以權杖建立的帳戶,email 為 null。

請求
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"
  ]
}

查看產品及價格

GET/api/v1/products毋須金鑰

返回每種產品的訂購範圍、各數量級距的單價及使用期折扣,與價格頁使用同一價目表。

請求
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",
      "...": "..."
    }
  ]
}

國家及城市

GET/api/v1/countries毋須金鑰

返回每種產品可選的國家,以及用於 -city- 用戶名稱選項的城市值。

名稱意思
product選填unlimited、residential、isp、datacenter 其中之一。如省略,則使用 residential。
請求
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"
        }
      ]
    }
  ]
}

取得報價

POST/api/v1/quote毋須金鑰

計算訂單總額,不會動用你的餘額。請發送與下單時相同的內容。

名稱意思
product必填unlimited、residential、isp、datacenter 其中之一。
quantity必填訂購數量:unlimited 為日數(1~365),residential 為 GB(5~5,000),isp 為 IP 數量(1~1,000),datacenter 為 IP 數量(5~5,000)。
concurrency選填只適用於 unlimited。在 200、500、1000、2000 中選一個。
bandwidth選填只適用於 unlimited,單位為 Mbps。100、200、500、1000 其中之一。
months選填只適用於 isp 及 datacenter。1、3、6、12 其中之一。
country選填只適用於 isp 及 datacenter。兩個字母的國家代碼,例如 jp。可接受的值列於 /countries。
請求
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
}

下單

POST/api/v1/orders需要 API 金鑰

從餘額扣除總額並建立訂單。訂單初時為 pending(啟用中),準備好後轉為 active。無法啟用的訂單會變為 refunded,你支付的全部款項會退回餘額。如餘額不足,會收到 402。

名稱意思
product必填unlimited、residential、isp、datacenter 其中之一。
quantity必填訂購數量:unlimited 為日數(1~365),residential 為 GB(5~5,000),isp 為 IP 數量(1~1,000),datacenter 為 IP 數量(5~5,000)。
concurrency選填只適用於 unlimited。在 200、500、1000、2000 中選一個。
bandwidth選填只適用於 unlimited,單位為 Mbps。100、200、500、1000 其中之一。
months選填只適用於 isp 及 datacenter。1、3、6、12 其中之一。
country選填只適用於 isp 及 datacenter。兩個字母的國家代碼,例如 jp。可接受的值列於 /countries。
請求
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
}

查看訂單

GET/api/v1/orders需要 API 金鑰

顯示最多 100 張訂單,由最新開始。

名稱意思
status選填pending、active、refunded 其中之一。省略則返回所有狀態的訂單。
請求
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"
    }
  ]
}

查看單一訂單

GET/api/v1/orders/{id}需要 API 金鑰

返回與訂單編號相符的訂單,方便查看是否已完成啟用。

名稱意思
id必填訂單編號,例如 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"
  }
}

組合代理用戶名稱

GET/api/v1/proxy-user需要 API 金鑰

返回附有你所選選項的代理用戶名稱,以及可直接貼上使用的 HTTP 和 SOCKS5 URL。如不發送 session,每個請求都會更換 IP。

名稱意思
product選填unlimited、residential、isp、datacenter 其中之一。如省略,則使用 unlimited。
country選填兩個字母的國家代碼,例如 jp。
city選填/countries 中列出的城市值,例如 tokyo。須同時發送 country。
session選填1~32 個英文字母及數字。相同 session 的請求會使用同一 IP。
ttl選填連線階段保持 IP 的時間,1~60 分鐘。如省略,則為 30 分鐘。
請求
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"
}

完整流程例子

一個腳本完成取得報價、用餘額下單,再經日本 IP 連線。

Python (requests)
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())
Node.js 18+
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 下的訂單與控制台訂單處理方式相同,會一併顯示在「記錄」分頁。請把例子中的 pwk_your_api_key 換成你自己的 API 金鑰。

把 ProxyWorld 接入你的程式

用電郵或權杖註冊,在控制台建立 API 金鑰,即可開始呼叫。