OpenAPI 接口文档
OpenAPI 接口文档
创建静态代理购买订单
使用钱包余额创建静态代理购买订单。成功响应表示订单已受理且支付成功,随后进入异步处理;此时资源尚未可用。正常处理时,要么整单全部购买成功,要么整单失败,不会出现部分采购成功。
接口信息
| 项目 | 内容 |
|---|---|
| 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 |
region_code |
string | 是 | 地区编码 | 使用静态代理地区接口返回的值 |
duration_days |
integer | 是 | 购买时长,天 | 仅 7、30、90;还必须符合下方类型与时长组合 |
quantity |
integer | 是 | 购买数量 | 正整数,不能超过下单时可用库存,并需符合当前购买规格 |
callback_url |
string | 否 | 订单结束提醒地址 | 绝对 HTTP/HTTPS 公网地址,最长 2048 个字符 |
静态类型支持的购买时长如下:
static_type |
可用的 duration_days |
|---|---|
ISP |
7、30 |
ISP_NATIVE |
7、30、90 |
duration_days 不是 7、30 或 90 时返回 400009。返回 300320 表示资源价格不存在或与请求规格不匹配;实际 msg 按 X-LANG 返回,省略或不支持时使用 en_US。
创建订单前可调用获取静态代理购买报价。报价不预留库存,也不锁定价格;本接口仍会重新核对库存并按下单时的价格计算订单金额。
通过本接口创建的购买订单,其资源连接协议固定为 HTTP。请求体不能包含协议、支付方式、优惠信息或其他未列出的字段。
请求示例
curl --request POST \
--url 'https://api-test.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",
"region_code": "107",
"duration_days": 30,
"quantity": 2,
"callback_url": "https://customer.example.com/proxy/order-callback"
}'
类型和地区示例只说明格式。调用时请使用查询静态代理地区返回的值。
响应参数
| 字段 | 类型 | 说明 |
|---|---|---|
order_no |
string | 静态代理购买订单号 |
status |
string | 固定为 PURCHASING |
static_type |
string | ISP 或 ISP_NATIVE |
region_code |
string | 地区编码 |
duration_days |
integer | 购买时长 |
quantity |
integer | 购买数量 |
order_amount |
string | 订单金额,USD |
currency |
string | 固定为 USD |
create_time |
string | 订单创建时间,GMT+8 ISO-8601 |
成功响应示例
{
"code": 0,
"msg": "success",
"data": {
"order_no": "PO1912345678901234567",
"status": "PURCHASING",
"static_type": "ISP",
"region_code": "107",
"duration_days": 30,
"quantity": 2,
"order_amount": "20.0000",
"currency": "USD",
"create_time": "2026-08-24T15:30:00.000+08:00"
},
"next": null
}
可能的错误码
code |
说明 | 建议处理 |
|---|---|---|
300006 |
请求号重复 | 查询购买订单,不要重放 |
300184 |
钱包余额不足 | 补充余额后使用新的请求号重新购买 |
300320 |
资源价格不存在或与请求规格不匹配。 | — |
300323 |
地区当前不可购买 | 重新查询地区 |
300324 |
暂时无法取得实时库存 | 先查询库存;不要重复相同创建请求 |
300325 |
库存不足 | 降低数量或稍后重新查询库存 |
400001 |
认证失败 | 检查 API Key |
400009 |
时长不是 7、30、90,或其他参数、回调地址、请求体不符合要求 |
修正请求 |
500000 |
系统处理失败,创建结果可能无法确认 | 先查询订单,不要立即使用新请求号再创建 |
订单受理后如果最终为 FAILED,不会自动退款。请联系客户支持人工处理。
创建成功后,保存 order_no 并查询订单详情。回调规则见回调通知。
request_no 仅用于防止重复受理,不是结果查询键,也不会重放第一次结果。详见请求号与重复提交。