代理API文档:订单与连接信息自动化
SMMProxy开发者API通过HTTPS REST提供余额查询、价格查询、代理订购、连接信息列表。在仪表盘API密钥菜单创建密钥后,通过Authorization标头Bearer验证。
立即开始
- 完成账户创建并首次充值。API密钥需在完成至少一次充值的账户中生成。
- 在仪表盘的API密钥菜单创建新密钥。密钥仅在创建时显示一次,请立即保存。
- 所有请求需包含Authorization: Bearer密钥。响应为JSON格式且始终包含ok字段。
基础地址: https://smmproxy.io/api/v1
curl -H "Authorization: Bearer smpk_YOUR_KEY" https://smmproxy.io/api/v1/balance
GET/api/v1/balance
余额查询
响应示例
{ "ok": true, "balance": "48.20", "currency": "USD" }GET/api/v1/products
查询产品、国家、价格
响应示例
{ "ok": true, "periods": ["1w","2w","1m","2m","3m","6m","9m","12m"],
"products": [{ "product": "isp", "unit": "ip", "countries": [{ "country": "us", "monthly": "1.29" }] }] }POST/api/v1/orders
代理订单(从余额中支付)
请求正文
{ "product": "isp", "country": "us", "quantity": 5, "period": "1m" }响应示例
{ "ok": true, "order": { "id": "OR-7K2M-Q8XD4P", "product": "isp", "country": "us",
"quantity": 5, "period": "1m", "total": "6.45", "expires_at": "2026-11-21T09:00:00.000Z" } }GET/api/v1/orders
订单列表(最近100条)
响应示例
{ "ok": true, "orders": [{ "id": "OR-7K2M-Q8XD4P", "status": "active", "total": "6.45" }] }GET/api/v1/proxies?order=OR-7K2M-Q8XD4P
连接信息列表
响应示例
{ "ok": true, "proxies": [{ "host": "198.51.100.24", "http_port": 10842, "socks5_port": 20842,
"username": "u7kq2m", "password": "Xc81pLq0Zr", "country": "us", "expires_at": "..." }] }订单金额
| 名称 | 格式 | 说明 |
|---|---|---|
| product | string | isp, mobile, ipv4, residential |
| country | string | 两位小写国家代码(如us, gb, de...) |
| quantity | integer | IP/端口数(住宅代理按GB) |
| period | string | 1w 2w 1m 2m 3m 6m 9m 12m(不包括住宅) |
| protocol | string | HTTP或SOCKS5,默认HTTP(两种端口都会提供) |
错误
| HTTP | error | 含义 |
|---|---|---|
| 401 | unauthorized | 密钥不存在或不匹配。不会扣款。 |
| 400 | invalid_request | 请重新检查产品、国家、数量和期限的值。不会扣款。 |
| 402 | insufficient_balance | 余额低于付款金额。请充值后重新发送。不会扣款。 |
| 503 | network_error | 订单传输时出现网络错误。不会扣款,稍后可以重新发送。 |
| 429 | rate_limited | 每分钟可发送300次。 |
Python示例
import requests
API = "https://smmproxy.io/api/v1"
H = {"Authorization": "Bearer smpk_YOUR_KEY"}
order = requests.post(f"{API}/orders", headers=H, json={
"product": "isp", "country": "us", "quantity": 5, "period": "1m"}).json()
if order["ok"]:
proxies = requests.get(f"{API}/proxies", headers=H, params={"order": order["order"]["id"]}).json()
for p in proxies["proxies"]:
print(f'{p["host"]}:{p["http_port"]}:{p["username"]}:{p["password"]}')Node.js示例
const API = "https://smmproxy.io/api/v1";
const H = { Authorization: "Bearer smpk_YOUR_KEY", "Content-Type": "application/json" };
const r = await fetch(API + "/orders", { method: "POST", headers: H,
body: JSON.stringify({ product: "mobile", country: "gb", quantity: 1, period: "1m" }) });
const j = await r.json();
console.log(j.ok ? j.order.id : j.error);