Dokumen API Proxy: Terima Daftar Proxy melalui REST API
API Socks5Proxy adalah REST API yang menggunakan satu kunci API dibuat di dashboard untuk mendapatkan balance akun, paket yang dibeli, daftar proxy dalam JSON atau txt·csv. Alamat dasar adalah https://socks5proxy.io/api/v1, setiap kunci dapat dipanggil hingga 300 kali per menit.
Apa yang bisa dilakukan dengan API?
Gunakan API saat program yang menggunakan proxy perlu mengambil daftar terbaru secara langsung. Crawler dapat mengambil daftar setiap kali dimulai, atau server dapat secara otomatis mengubah daftar saat paket baru dibeli atau berakhir. Daftar yang diunduh dari dashboard dan melalui API adalah data yang sama.
API hanya untuk membaca. Mendukung pengecekan saldo, daftar paket, dan pengambilan daftar proxy. Pembayaran dan pembelian dilakukan di dashboard. Semua respon dalam UTF-8 dan tanggal dalam format ISO 8601 UTC.
| Metode | Rute | Deskripsi |
|---|---|---|
| GET | /account | Kode akun, saldo (USD), jumlah plan aktif, jumlah proxy |
| GET | /plans | Daftar paket yang dibeli (200 terbaru), status, dan waktu kedaluwarsa |
| GET | /proxies | Daftar proxy yang sedang digunakan (JSON), filter berdasarkan negara/paket |
| GET | /proxies/download | Daftar proxy dalam format txt atau csv satu baris |
Bagaimana cara membuat dan mengirim API key?
Buat kunci API di layar kunci API di dashboard. Kunci dimulai dengan spx_ dan terdiri dari 44 karakter, dan hanya akan ditampilkan sekali saat dibuat. Server hanya menyimpan hash kunci, jadi jika Anda kehilangannya, Anda bisa membuat kunci baru, dan kunci sebelumnya akan segera dinonaktifkan.
Tambahkan kunci dengan metode Bearer di header Authorization setiap permintaan. Kami tidak menerima kunci yang dimasukkan dalam query string. Jika kunci tidak ada atau salah, akan direspons dengan 401 unauthorized.
curl -H "Authorization: Bearer spx_your_api_key" https://socks5proxy.io/api/v1/accountCek informasi saldo dan akun: GET /account
Mengembalikan kode akun, saldo, jumlah plan aktif, dan jumlah proxy. Saldo dalam format USD dengan dua desimal.
curl -H "Authorization: Bearer spx_your_api_key" https://socks5proxy.io/api/v1/account{
"code": "S5-7KQ2-M8PX-4HDA",
"balance": "125.40",
"currency": "USD",
"active_plans": 2,
"proxies": 125,
"created_at": "2026-10-22T08:15:02.114Z"
}Lihat daftar paket: GET /plans
Mengembalikan paket yang dibeli dari yang terbaru. Status bisa active (sedang digunakan), expired (periode berakhir), atau canceled (dibatalkan). ID adalah kode paket (dimulai dengan P-) dan dapat digunakan sebagai nilai plan di /proxies.
{
"plans": [
{
"id": "P-8WQ4C-NM2KT",
"product": "dc-private",
"product_name": "Private Datacenter Proxy",
"ips": 100,
"months": 1,
"country": "us",
"status": "active",
"amount": "49.40",
"created_at": "2026-10-22T08:20:11.002Z",
"expires_at": "2026-11-22T08:20:11.002Z"
}
]
}Lihat Daftar Proxy: GET /proxies
Mengembalikan proxy dari paket yang sedang digunakan dalam format JSON. Setiap proxy berisi alamat, port HTTP, port SOCKS5, username, password, negara, kota, kode paket, dan waktu kedaluwarsa.
Anda dapat memfilter dengan country (kode negara dua huruf, contoh: us) dan plan (kode paket). Nilai protocol ditampilkan dalam respons, dan JSON berisi kedua port.
| Query | Nilai | Deskripsi |
|---|---|---|
| country | us, de, jp, dll. | Hanya proxy dari negara itu |
| plan | P-XXXXX-XXXXX | Hanya proxy dari paket itu |
| protocol | http, socks5 | HTTP dasar |
| format | json | Default, format lain di /proxies/download |
curl -H "Authorization: Bearer spx_your_api_key" \
"https://socks5proxy.io/api/v1/proxies?country=us&protocol=socks5"{
"count": 1,
"protocol": "socks5",
"proxies": [
{
"host": "198.51.100.23",
"http_port": 8231,
"socks5_port": 1080,
"username": "spx_k2m8qa",
"password": "q7rbx2wd9n",
"country": "us",
"city": "New York",
"plan": "P-8WQ4C-NM2KT",
"product": "dc-private",
"product_name": "Private Datacenter Proxy",
"expires_at": "2026-11-22T08:20:11.002Z"
}
]
}Unduh daftar: GET /proxies/download
Dikembalikan dalam satu baris per proxy agar program dapat langsung membacanya. Jika protocol adalah socks5, port SOCKS5 akan digunakan; jika http, port HTTP akan digunakan. format=url menambahkan awalan alamat yang sesuai (socks5:// atau http://) sesuai dengan protocol.
Di server dengan otorisasi IP yang diaktifkan, Anda dapat terhubung langsung dengan format ip:port tanpa nama pengguna. CSV memiliki nama kolom di baris pertama dan mencakup kedua port.
| format | Contoh satu baris (protocol=socks5) |
|---|---|
| ip:port:user:pass (default) | 198.51.100.23:1080:spx_k2m8qa:q7rbx2wd9n |
| user:pass@ip:port | spx_k2m8qa:q7rbx2wd9n@198.51.100.23:1080 |
| ip:port | 198.51.100.23:1080 |
| url | socks5://spx_k2m8qa:q7rbx2wd9n@198.51.100.23:1080 |
| csv | 198.51.100.23,8231,1080,spx_k2m8qa,q7rbx2wd9n,us,New York |
curl -H "Authorization: Bearer spx_your_api_key" \
"https://socks5proxy.io/api/v1/proxies/download?format=url&protocol=socks5" -o proxies.txtContoh kode: Python, Node.js, PHP
Contoh di bawah ini mengambil daftar proxy dan mengirim permintaan menggunakan proxy pertama. Python memerlukan paket requests[socks] untuk SOCKS5, dan socks5h juga akan menyelesaikan nama domain melalui proxy.
import requests
API = "https://socks5proxy.io/api/v1"
H = {"Authorization": "Bearer spx_your_api_key"}
proxies = requests.get(f"{API}/proxies", headers=H, params={"country": "us"}).json()["proxies"]
p = proxies[0]
url = f"socks5h://{p['username']}:{p['password']}@{p['host']}:{p['socks5_port']}"
r = requests.get("https://api.ipify.org?format=json", proxies={"http": url, "https": url}, timeout=30)
print(r.json())import { ProxyAgent, fetch } from "undici";
const API = "https://socks5proxy.io/api/v1";
const H = { Authorization: "Bearer spx_your_api_key" };
const { proxies } = await (await fetch(`${API}/proxies?country=us`, { headers: H })).json();
const p = proxies[0];
const agent = new ProxyAgent(`http://${p.username}:${p.password}@${p.host}:${p.http_port}`);
const r = await fetch("https://api.ipify.org?format=json", { dispatcher: agent });
console.log(await r.json());<?php
$ch = curl_init("https://socks5proxy.io/api/v1/proxies/download?format=ip:port:user:pass&protocol=http");
curl_setopt_array($ch, [
CURLOPT_HTTPHEADER => ["Authorization: Bearer spx_your_api_key"],
CURLOPT_RETURNTRANSFER => true,
]);
$lines = explode("\n", trim(curl_exec($ch)));
[$host, $port, $user, $pass] = explode(":", $lines[0]);
echo "$host:$port\n";Kode error dan batas panggilan
Error dikembalikan dengan kode status HTTP dalam format { "error": { "code", "message" } }. Setiap kunci bisa dipanggil maksimal 300 kali per menit, jika melebihi akan mendapat respons 429 selama 1 menit. Daftar hanya berubah saat pembelian atau kedaluwarsa, jadi disarankan untuk mengambilnya sekali setiap beberapa menit dan menggunakannya kembali dalam program.
Panggilan API tidak dikenakan biaya. Saldo hanya berkurang saat membeli paket di dashboard.
| Status | code | Arti |
|---|---|---|
| 401 | unauthorized | Jika kunci tidak ada atau salah, atau jika Anda membuat kunci baru, gunakan kunci baru |
| 400 | bad_format | nilai format tidak ada dalam daftar |
| 404 | not_found | Rute tidak ditemukan |
| 429 | rate_limited | Melebihi 300 per menit |