API 静态代理
API 静态代理
创建静态代理购买订单
使用钱包余额创建包含一个或多个地区的静态代理购买订单。成功响应只表示订单已经受理并支付成功,资源随后异步交付;不同地区可能分别成功或失败。
接口信息
| 项目 | 内容 |
|---|---|
| Method | POST |
| Path | /open-api/v1/static/purchase-orders |
| 认证 | X-API-Key |
| Content-Type | application/json |
| 处理方式 | 异步 |
| 请求号 | 必填,保护期 24 小时 |
请求体
| 字段 | 类型 | 必填 | 说明 | 约束 |
|---|---|---|---|---|
request_no |
string | 是 | 仅用于防止重复受理的调用方请求号 | 1~64 位,仅字母、数字、_、- |
static_type |
string | 是 | 全部地区共用的静态代理类型 | ISP 或 ISP_NATIVE |
duration_days |
integer | 是 | 全部地区共用的购买时长,天 | ISP 支持 7、30;ISP_NATIVE 支持 7、30、90 |
regions |
object[] | 是 | 采购地区集合 | 不能为空;地区不得重复;单地区也必须使用数组 |
regions[].region_code |
string | 是 | 地区编码 | 使用静态代理地区接口返回的值 |
regions[].quantity |
integer | 是 | 该地区购买数量 | 1~300,且不能超过下单时可用库存 |
callback_url |
string | 否 | 订单结束提醒地址 | 绝对 HTTP/HTTPS 公网地址,最长 2048 个字符 |
请求体和每个 regions 元素都不能包含未列出的字段。资源连接协议固定为 HTTP;不能指定协议、价格、支付方式、优惠或其他未列出的参数。
请求示例
curl --request POST \
--url 'https://api.puraroute.com/gin/open-api/v1/static/purchase-orders' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <YOUR_API_KEY>' \
--data '{
"request_no": "static-buy-20260824-001",
"static_type": "ISP",
"duration_days": 30,
"regions": [
{"region_code": "US_CA", "quantity": 2},
{"region_code": "JP_TK", "quantity": 1}
],
"callback_url": "https://customer.example.com/proxy/order-callback"
}'
响应参数
| 字段 | 类型 | 说明 |
|---|---|---|
order_no |
string | 静态代理购买订单号 |
status |
string | 返回响应时的订单状态:UNFULFILLED、PROCESSING、SUCCESS、PARTIAL_SUCCESS 或 FAILED |
static_type |
string | ISP 或 ISP_NATIVE |
duration_days |
integer | 购买时长 |
quantity |
integer | 全部地区购买数量合计 |
order_amount |
string | 订单总金额,USD |
currency |
string | 固定为 USD |
create_time |
string | 订单创建时间,GMT+8 ISO-8601 |
regions |
object[] | 全部采购地区的金额摘要 |
regions[].region_code |
string | 地区编码 |
regions[].quantity |
integer | 该地区购买数量 |
regions[].order_amount |
string | 该地区金额,USD |
成功响应示例
{
"code": 0,
"msg": "success",
"data": {
"order_no": "PO1912345678901234567",
"status": "PROCESSING",
"static_type": "ISP",
"duration_days": 30,
"quantity": 3,
"order_amount": "30.0000",
"currency": "USD",
"create_time": "2026-08-24T15:30:00.000+08:00",
"regions": [
{"region_code": "US_CA", "quantity": 2, "order_amount": "20.0000"},
{"region_code": "JP_TK", "quantity": 1, "order_amount": "10.0000"}
]
},
"next": null
}
可能的错误码
code |
说明 | 建议处理 |
|---|---|---|
300006 |
请求号重复 | 查询购买订单,不要重放 |
300184 |
钱包余额不足 | 补充余额后使用新的请求号重新购买 |
300320 |
当前类型、地区或周期没有可用价格 | 重新查询可用地区或联系客户支持 |
300323 |
某个地区当前不可购买 | 重新查询地区 |
300324 |
暂时无法取得实时库存 | 稍后查询库存;不要盲目重复创建请求 |
300325 |
某个地区库存不足 | 降低对应地区数量或稍后查询库存 |
400001 |
认证失败 | 检查 API Key |
400009 |
时长、地区集合、回调地址或请求体不符合要求 | 修正请求 |
500000 |
系统处理失败,创建结果可能无法确认 | 先查询订单,不要立即换请求号重建 |
保存返回的 order_no,通过查询静态代理购买订单持续查询。订单可能最终为 SUCCESS、PARTIAL_SUCCESS 或 FAILED;成功资源通过查询静态代理资源获取。订单失败不会自动退款,请联系客户支持处理。
request_no 不是结果查询键,也不会重放第一次响应。详见请求号与重复提交。