Langkau ke kandungan
proxyday

Dokumentasi API proxy

Gunakan REST API ProxyDay untuk membaca baki dan butiran sambungan anda, menyemak harga, membuat pesanan daripada baki dan membina nama pengguna proxy dari kod anda sendiri.

Bagaimana saya bermula?

  1. 1Daftar dan log masuk ke dashboard.
  2. 2Buka Connect dan cipta kunci API. Kunci penuh hanya dipaparkan sekali, jadi salin ke tempat yang selamat.
  3. 3Hantar kunci dalam header Authorization bersama setiap permintaan yang memerlukannya.
  4. 4Panggil /account untuk memastikan kunci berfungsi, kemudian buat pesanan dengan /orders.

Bagaimana pengesahan berfungsi?

Permintaan untuk akaun anda sendiri (account, orders, proxy-user) memerlukan kunci API. Hantar sebagai Bearer token dalam header Authorization. Harga, negara dan sebut harga adalah awam dan tidak memerlukan kunci.

Kami hanya menyimpan hash kunci. Jika anda kehilangannya, cipta kunci baharu dalam dashboard dan kunci lama terus berhenti berfungsi. Jangan letak kunci dalam kod pelayar atau repositori awam.

HTTP header
Authorization: Bearer pdk_your_api_key

Base URL dan format

URL asas
https://proxyday.shop/api/v1
Badan permintaan dan respons
application/json
Wang
Nombor USD, contohnya 807.90
Masa
ISO 8601 (UTC)

Adakah had kadar panggilan?

Setiap kunci API boleh menghantar sehingga 60 permintaan seminit. Endpoint awam membenarkan 60 permintaan seminit bagi setiap IP. Melebihi had, anda akan mendapat HTTP 429, jadi tunggu seminit dan cuba lagi.

Bagaimana rupa ralat?

Ralat menggunakan kod status HTTP dan badan JSON dengan kod ringkas dan mesej.

Contoh
{
  "error": {
    "code": "insufficient_balance",
    "message": "Your balance is too low for this order. Top up in the dashboard."
  }
}
HTTPcodeMaksud
400bad_requestAda nilai yang tiada atau tidak dibenarkan untuk produk ini.
401unauthorizedKunci API tiada atau tidak sah.
402insufficient_balanceBaki lebih rendah daripada jumlah pesanan. Tiada caj dikenakan.
404not_foundTiada pesanan dengan id ini dalam akaun anda.
429rate_limitedTerlalu banyak permintaan dalam satu minit.
500server_errorPermintaan tidak dapat diselesaikan. Tiada caj dikenakan.

Endpoint

Dapatkan akaun anda

GET/api/v1/accountKunci API

Memulangkan baki, host proxy, port, nama pengguna dan kata laluan, serta IP dibenarkan anda.

Permintaan
curl https://proxyday.shop/api/v1/account \
  -H "Authorization: Bearer pdk_your_api_key"
Respons
{
  "email": "you@example.com",
  "balance_usd": 1300,
  "proxy": {
    "host": "gate.proxyday.shop",
    "http_port": 6100,
    "socks5_port": 6200,
    "username": "pdexample1",
    "password": "your_password"
  },
  "allowed_ips": [
    "203.0.113.10"
  ]
}

Senarai produk dan harga

GET/api/v1/productsTidak perlu kunci

Memulangkan setiap produk bersama had, peringkat harga dan diskaunnya. Harga datang dari jadual yang sama seperti di halaman harga.

Permintaan
curl https://proxyday.shop/api/v1/products
Respons
{
  "currency": "USD",
  "prices_as_of": "2026-10-31",
  "products": [
    {
      "id": "unlimited",
      "unit": "day",
      "quantity": {
        "meaning": "days",
        "min": 1,
        "max": 365
      },
      "...": "..."
    },
    {
      "id": "residential",
      "unit": "gb",
      "...": "..."
    }
  ]
}

Senarai negara dan bandar

GET/api/v1/countriesTidak perlu kunci

Memulangkan negara yang tersedia untuk sesuatu produk, bersama nilai bandar yang boleh anda letak dalam nama pengguna proxy.

MedanMaksud
productPilihanunlimited, residential, isp atau datacenter. Lalai residential.
Permintaan
curl "https://proxyday.shop/api/v1/countries?product=datacenter"
Respons
{
  "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"
        }
      ]
    }
  ]
}

Dapatkan sebut harga

POST/api/v1/quoteTidak perlu kunci

Mengira jumlah bagi pesanan tanpa mengenakan sebarang caj. Gunakan badan yang sama seperti semasa membuat pesanan.

MedanMaksud
productWajibunlimited, residential, isp atau datacenter.
quantityWajibHari untuk unlimited (1~365), GB untuk residential (5~5,000), IP untuk isp (1~1,000) atau datacenter (5~5,000).
concurrencyPilihanHanya unlimited: 200, 500, 1000 atau 2000.
bandwidthPilihanHanya unlimited, dalam Mbps: 100, 200, 500 atau 1000.
monthsPilihanHanya isp dan datacenter: 1, 3, 6 atau 12.
countryPilihanHanya isp dan datacenter: kod negara dua huruf, contohnya jp. Lihat /countries.
Permintaan
curl -X POST https://proxyday.shop/api/v1/quote \
  -H "Content-Type: application/json" \
  -d '{"product":"unlimited","quantity":30,"concurrency":1000,"bandwidth":200}'
Respons
{
  "product": "unlimited",
  "quantity": 30,
  "unit_price_usd": 8.6,
  "unit": "day",
  "total_usd": 258
}

Buat pesanan

POST/api/v1/ordersKunci API

Menolak jumlah daripada baki anda dan membuat pesanan. Pesanan baharu bermula sebagai pending (sedang diaktifkan) dan bertukar kepada active apabila sedia. Jika pesanan tidak dapat diaktifkan, ia menjadi refunded dan jumlah penuh dikembalikan ke baki anda. Memulangkan 402 apabila baki terlalu rendah.

MedanMaksud
productWajibunlimited, residential, isp atau datacenter.
quantityWajibHari untuk unlimited (1~365), GB untuk residential (5~5,000), IP untuk isp (1~1,000) atau datacenter (5~5,000).
concurrencyPilihanHanya unlimited: 200, 500, 1000 atau 2000.
bandwidthPilihanHanya unlimited, dalam Mbps: 100, 200, 500 atau 1000.
monthsPilihanHanya isp dan datacenter: 1, 3, 6 atau 12.
countryPilihanHanya isp dan datacenter: kod negara dua huruf, contohnya jp. Lihat /countries.
Permintaan
curl -X POST https://proxyday.shop/api/v1/orders \
  -H "Authorization: Bearer pdk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"product":"unlimited","quantity":30,"concurrency":1000,"bandwidth":200}'
Respons
{
  "order": {
    "id": "PD-7KQ2M-X4HTD",
    "product": "unlimited",
    "quantity": 30,
    "months": null,
    "concurrency": 1000,
    "bandwidth_mbps": 200,
    "country": null,
    "unit_price_usd": 8.6,
    "total_usd": 258,
    "status": "pending",
    "created_at": "2026-10-31T09:12:44.120Z",
    "updated_at": "2026-10-31T09:12:44.120Z"
  },
  "balance_usd": 1042
}

Senarai pesanan anda

GET/api/v1/ordersKunci API

Memulangkan 100 pesanan terkini anda, yang terbaru dahulu.

MedanMaksud
statusPilihanpending, active atau refunded. Biarkan kosong untuk mendapatkan semua.
Permintaan
curl "https://proxyday.shop/api/v1/orders?status=pending" \
  -H "Authorization: Bearer pdk_your_api_key"
Respons
{
  "orders": [
    {
      "id": "PD-7KQ2M-X4HTD",
      "product": "unlimited",
      "quantity": 30,
      "months": null,
      "concurrency": 1000,
      "bandwidth_mbps": 200,
      "country": null,
      "unit_price_usd": 8.6,
      "total_usd": 258,
      "status": "pending",
      "created_at": "2026-10-31T09:12:44.120Z",
      "updated_at": "2026-10-31T09:12:44.120Z"
    }
  ]
}

Dapatkan satu pesanan

GET/api/v1/orders/{id}Kunci API

Memulangkan satu pesanan mengikut id, contohnya untuk menyemak sama ada ia sudah aktif.

MedanMaksud
idWajibId pesanan, contohnya PD-7KQ2M-X4HTD.
Permintaan
curl https://proxyday.shop/api/v1/orders/PD-7KQ2M-X4HTD \
  -H "Authorization: Bearer pdk_your_api_key"
Respons
{
  "order": {
    "id": "PD-7KQ2M-X4HTD",
    "product": "unlimited",
    "quantity": 30,
    "months": null,
    "concurrency": 1000,
    "bandwidth_mbps": 200,
    "country": null,
    "unit_price_usd": 8.6,
    "total_usd": 258,
    "status": "active",
    "created_at": "2026-10-31T09:12:44.120Z",
    "updated_at": "2026-10-31T09:40:02.511Z"
  }
}

Bina nama pengguna proxy

GET/api/v1/proxy-userKunci API

Memulangkan nama pengguna proxy dengan pilihan anda serta URL proxy HTTP dan SOCKS5 yang sedia digunakan. Tanpa session, IP berputar setiap permintaan.

MedanMaksud
productPilihanunlimited, residential, isp atau datacenter. Lalai unlimited.
countryPilihanKod negara dua huruf, contohnya jp.
cityPilihanNilai bandar dari /countries, contohnya tokyo. Memerlukan country.
sessionPilihanApa-apa 1~32 huruf atau nombor. Permintaan dengan session yang sama mengekalkan IP yang sama.
ttlPilihanMinit untuk mengekalkan IP sesi, 1~60. Lalai 30.
Permintaan
curl "https://proxyday.shop/api/v1/proxy-user?product=residential&country=jp&city=tokyo&session=job42&ttl=30" \
  -H "Authorization: Bearer pdk_your_api_key"
Respons
{
  "username": "pdexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30",
  "password": "your_password",
  "http": "http://pdexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30:your_password@gate.proxyday.shop:6100",
  "socks5": "socks5h://pdexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30:your_password@gate.proxyday.shop:6200"
}

Contoh penuh

Contoh ini menyemak harga, membuat pesanan daripada baki dan menyambung melalui IP Jepun.

Python (requests)
import requests

API = "https://proxyday.shop/api/v1"
HEAD = {"Authorization": "Bearer pdk_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://proxyday.shop/api/v1";
const HEAD = { Authorization: "Bearer pdk_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);

Pesanan yang dibuat melalui API sama seperti pesanan dari dashboard dan muncul dalam Sejarah. Gantikan pdk_your_api_key dengan kunci anda sendiri.

Sambungkan ProxyDay ke sistem anda sendiri

Buat akaun, kemudian cipta kunci API dalam dashboard.