Socks5Proxy

프록시 API 문서: REST API로 프록시 목록 받기

Socks5Proxy API는 대시보드에서 만든 API 키 하나로 계정 잔액, 구매한 요금제, 프록시 목록을 JSON이나 txt·csv로 가져오는 REST API이고, 기본 주소는 https://socks5proxy.io/api/v1, 키 하나당 분당 300회까지 호출할 수 있어요.

API로 무엇을 할 수 있나요?

프록시를 쓰는 프로그램이 직접 최신 목록을 가져가게 만들 때 API를 써요. 크롤러가 시작할 때마다 목록을 받아 오거나, 요금제를 새로 사거나 기간이 끝났을 때 서버가 알아서 목록을 바꾸게 할 수 있어요. 대시보드에서 내려받는 목록과 API로 받는 목록은 같은 데이터예요.

API는 읽기 전용이에요. 잔액 확인, 요금제 목록, 프록시 목록 조회를 지원하고, 결제와 구매는 대시보드에서 해요. 모든 응답은 UTF-8이고 날짜는 ISO 8601 UTC 형식이에요.

메서드경로설명
GET/account계정 코드, 잔액(USD), 사용 중인 요금제 수, 프록시 수
GET/plans구매한 요금제 목록(최근 200개), 상태와 만료 시각
GET/proxies사용 중인 프록시 목록(JSON), 나라·요금제로 거르기
GET/proxies/download프록시 목록을 txt 또는 csv 한 줄 형식으로

API 키는 어떻게 만들고 보내나요?

대시보드의 API 키 화면에서 키를 만들어요. 키는 spx_로 시작하는 44자리이고, 만든 순간 한 번만 보여요. 서버에는 키의 지문(해시)만 남기 때문에 잃어버리면 새 키를 만들면 되고, 새 키를 만들면 이전 키는 바로 쓸 수 없게 돼요.

요청마다 Authorization 헤더에 Bearer 방식으로 키를 넣어요. 주소 쿼리에 키를 넣는 방식은 받지 않아요. 키가 없거나 틀리면 401 unauthorized로 답해요.

curl -H "Authorization: Bearer spx_your_api_key" https://socks5proxy.io/api/v1/account

잔액과 계정 정보 조회: GET /account

계정 코드, 잔액, 사용 중인 요금제 수와 프록시 수를 돌려줘요. 잔액은 소수 둘째 자리까지의 글자(USD)예요.

curl -H "Authorization: Bearer spx_your_api_key" https://socks5proxy.io/api/v1/account

요금제 목록 조회: GET /plans

구매한 요금제를 최근 것부터 돌려줘요. status는 active(사용 중), expired(기간 끝남), canceled(취소) 가운데 하나예요. id는 요금제 코드(P-로 시작)이고 /proxies의 plan 값으로 쓸 수 있어요.

{
  "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"
    }
  ]
}

프록시 목록 조회: GET /proxies

사용 중인 요금제의 프록시를 JSON으로 돌려줘요. 프록시마다 주소, HTTP 포트, SOCKS5 포트, 사용자 이름, 비밀번호, 나라, 도시, 요금제 코드, 만료 시각이 들어 있어요.

country(두 글자 나라 코드, 예: us)와 plan(요금제 코드)으로 거를 수 있어요. protocol 값은 응답에 그대로 표시되고, JSON에는 두 포트가 모두 들어 있어요.

쿼리값설명
countryus, de, jp 등그 나라 프록시만
planP-XXXXX-XXXXX그 요금제 프록시만
protocolhttp, socks5기본 http
formatjson기본값, 다른 형식은 /proxies/download
curl -H "Authorization: Bearer spx_your_api_key" \
  "https://socks5proxy.io/api/v1/proxies?country=us&protocol=socks5"

목록 내려받기: GET /proxies/download

프로그램이 바로 읽을 수 있게 한 줄에 프록시 하나씩 글자로 돌려줘요. protocol이 socks5면 SOCKS5 포트를, http면 HTTP 포트를 넣어요. format=url은 protocol에 맞는 주소 앞머리(socks5:// 또는 http://)를 붙여요.

허용 IP 인증을 켜 둔 서버에서는 ip:port 형식으로 받아 사용자 이름 없이 바로 연결할 수 있어요. csv는 첫 줄에 열 이름이 있고 두 포트를 모두 담아요.

format한 줄 예시 (protocol=socks5)
ip:port:user:pass (기본)198.51.100.23:1080:spx_k2m8qa:q7rbx2wd9n
user:pass@ip:portspx_k2m8qa:q7rbx2wd9n@198.51.100.23:1080
ip:port198.51.100.23:1080
urlsocks5://spx_k2m8qa:q7rbx2wd9n@198.51.100.23:1080
csv198.51.100.23,8231,1080,spx_k2m8qa,q7rbx2wd9n,us,뉴욕
curl -H "Authorization: Bearer spx_your_api_key" \
  "https://socks5proxy.io/api/v1/proxies/download?format=url&protocol=socks5" -o proxies.txt

코드 예시: Python, Node.js, PHP

아래 예시는 목록을 받아 첫 번째 프록시로 요청을 보내요. Python은 SOCKS5를 쓰려면 requests[socks] 패키지가 필요하고, socks5h를 쓰면 도메인 이름 확인도 프록시 쪽에서 해요.

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())

오류 코드와 호출 한도

오류는 HTTP 상태 코드와 함께 { "error": { "code", "message" } } 형식으로 돌려줘요. 키 하나당 분당 300회까지 호출할 수 있고, 넘으면 1분 동안 429로 답해요. 목록은 구매나 만료 때만 바뀌므로 몇 분에 한 번 받아 두고 프로그램 안에서 다시 쓰는 방식을 권해요.

API 호출에는 요금이 들지 않아요. 잔액에서 빠지는 것은 대시보드에서 요금제를 살 때뿐이에요.

상태code뜻
401unauthorized키가 없거나 틀림, 새 키를 만들었다면 새 키로
400bad_formatformat 값이 목록에 없음
404not_found없는 경로
429rate_limited분당 300회를 넘음
프록시 API 문서, 프록시 목록 REST API 연동 | Socks5Proxy