跳到主要内容

代理商店

NexIP 代理商店的一般代理商品查询、购买、订单核对与续费,以及短效代理的套餐、国家、额度购买与按国家提取。购买与续费只传业务参数,由服务端按当前价格核算并直接扣减账户余额。

各类 ID 不能混用:购买用 /ip/products 的 productId;续费的 items 是本地代理 ID(代理列表 的 id);短效提取的 nexIpId 是短效订单 ID。业务接口的公共约定见 服务与鉴权。

显示 8 / 8 个接口

GET/ip/products

代理商品列表

查询当前在售的一般代理商品与周期报价,productId 用于 /ip/buy。

鉴权Bearer API Key

请求参数

无参数

注意事项

  • 整单金额 = discountPrice × quantity × duration ÷ days,向上保留 2 位小数;/ip/buy 按此规则预检。
  • 本接口不接受查询参数,多传字段返回 -1100。

响应字段

字段类型说明
contextIdstring本次请求的登录与团队上下文标识,可作为后续请求的 X-Nex-Service-Context
dataobject[]商品列表
data[].productIdstring商品 ID,购买时原样提交
data[].typestring代理类型:native、broadcast、datacenter、mixed
data[].namestring商品名称
data[].countryCodestring国家码
data[].countryNamestring国家名称
data[].locationCodestring地区码
data[].locationNamestring地区名称
data[].daysnumber报价周期天数,不是购买数量
data[].pricenumber上游周期报价
data[].discountPricenumber实际售价,按 days 天计价
data[].currencystring币种

响应示例

{
"code": 0,
"msg": "成功",
"data": [
{
"productId": "us-native-lax",
"type": "native",
"name": "美国原生静态 IP",
"countryCode": "US",
"countryName": "美国",
"locationCode": "LAX",
"locationName": "洛杉矶",
"days": 30,
"price": 4.5,
"discountPrice": 5.4,
"currency": "USDT"
}
],
"contextId": "a3f5c2e1b7d94c0e8f6a1b2c3d4e5f60a3f5c2e1b7d94c0e8f6a1b2c3d4e5f6"
}
POST/ip/buy

购买代理

按商品、数量和天数购买一般代理并扣减余额;下单成功只表示已受理,代理异步交付。

鉴权Bearer API Key

请求参数

字段类型是否必填说明
productIdstring必填商品 ID,取自 /ip/products
quantitynumber必填代理数量,正整数
durationnumber必填购买天数,正整数

注意事项

  • 业务参数校验后直接提交一次,由服务端按当前价格核算并扣费;客户端不预查价格、库存或套餐,权限与余额由服务端校验。
  • 提交后不自动重试;超时或结果不明时先查 /ip/orders、/proxy/list 与 /billing/trades 核对,不要重复购买。
  • 同一登录与团队下参数完全相同的购买仍在处理中时返回 -1100;未选择团队时同样返回 -1100。
  • 交付在后台完成,交付前 resources 为空不代表失败;交付的代理会写入 /proxy/list(source=BUY)。

响应字段

字段类型说明
contextIdstring本次请求的登录与团队上下文标识,可作为后续请求的 X-Nex-Service-Context
dataobject新建的订单,state 通常为 PROCESSING
data.idnumber本地订单 ID;短效订单作为提取时的 nexIpId
data.orderNostring订单号
data.userIdnumber购买用户 ID
data.teamIdnumber资源所属团队 ID
data.actionstring订单动作:buy 购买、renew 续费
data.productTypestring订单类型:GENERAL 一般代理、SNAP 短效额度;历史一般订单可能为空
data.typestring代理产品类型
data.countryCodestring国家码
data.locationCodestring地区码
data.durationnumber购买或续费天数
data.quantitynumber申请数量;短效订单为总额度
data.quantitySuccessnumber已交付或已提取数量
data.amountInputnumber初始扣款金额,USDT
data.amountRefundnumber已退款金额
data.amountnumber扣除退款后的金额
data.statestring状态:PROCESSING、SUCCESS、FAILED
data.productstring产品快照的 JSON 文本
data.resourcesstring交付资源的 JSON 文本,含代理主机与明文凭据,可为 null
data.remarkstring订单说明,如活动赠送
data.createdAtstring创建时间
data.updatedAtstring更新时间

响应示例

{
"code": 0,
"msg": "成功",
"data": {
"id": 9001,
"orderNo": "NIP20261023000001",
"userId": 1001,
"teamId": 2001,
"action": "buy",
"productType": "GENERAL",
"type": "native",
"countryCode": "US",
"locationCode": "LAX",
"duration": 30,
"quantity": 2,
"quantitySuccess": 0,
"amountInput": 10.8,
"amountRefund": 0,
"amount": 10.8,
"state": "PROCESSING",
"product": "{\"productId\":\"us-native-lax\",\"days\":30,\"discountPrice\":5.4}",
"resources": null,
"remark": null,
"createdAt": "2026-10-23 10:00:00",
"updatedAt": "2026-10-23 10:00:00"
},
"contextId": "a3f5c2e1b7d94c0e8f6a1b2c3d4e5f60a3f5c2e1b7d94c0e8f6a1b2c3d4e5f6"
}
GET/ip/orders

代理订单列表

分页查询一般代理订单与短效额度记录,用于核对交付、续费与剩余额度。

鉴权Bearer API Key

请求参数

字段类型是否必填说明
pagenumber可选页码,默认 1
sizenumber可选每页数量,默认 20,上限 1000

注意事项

  • GENERAL 的 PROCESSING 表示等待交付;SNAP 的 PROCESSING 表示仍有可提取额度,剩余额度为 quantity - quantitySuccess。
  • 没有 PARTIAL_SUCCESS 状态,部分交付请结合 quantitySuccess、amountRefund 与 resources 判断。
  • 本接口不接受 keyword;resources 含明文代理凭据,请勿转发给不受信任的调用方。

响应字段

字段类型说明
contextIdstring本次请求的登录与团队上下文标识,可作为后续请求的 X-Nex-Service-Context
data.countnumber匹配到的总条数
data.sizenumber每页数量,回显请求值
data.pagenumber当前页码,回显请求值
data.totalnumber总页数
data.dataobject[]当前页记录
data.data[].idnumber本地订单 ID;短效订单作为提取时的 nexIpId
data.data[].orderNostring订单号
data.data[].userIdnumber购买用户 ID
data.data[].teamIdnumber资源所属团队 ID
data.data[].actionstring订单动作:buy 购买、renew 续费
data.data[].productTypestring订单类型:GENERAL 一般代理、SNAP 短效额度;历史一般订单可能为空
data.data[].typestring代理产品类型
data.data[].countryCodestring国家码
data.data[].locationCodestring地区码
data.data[].durationnumber购买或续费天数
data.data[].quantitynumber申请数量;短效订单为总额度
data.data[].quantitySuccessnumber已交付或已提取数量
data.data[].amountInputnumber初始扣款金额,USDT
data.data[].amountRefundnumber已退款金额
data.data[].amountnumber扣除退款后的金额
data.data[].statestring状态:PROCESSING、SUCCESS、FAILED
data.data[].productstring产品快照的 JSON 文本
data.data[].resourcesstring交付资源的 JSON 文本,含代理主机与明文凭据,可为 null
data.data[].remarkstring订单说明,如活动赠送
data.data[].createdAtstring创建时间
data.data[].updatedAtstring更新时间

响应示例

{
"code": 0,
"msg": "成功",
"data": {
"count": 1,
"size": 20,
"page": 1,
"total": 1,
"data": [
{
"id": 9001,
"orderNo": "NIP20261023000001",
"userId": 1001,
"teamId": 2001,
"action": "buy",
"productType": "GENERAL",
"type": "native",
"countryCode": "US",
"locationCode": "LAX",
"duration": 30,
"quantity": 2,
"quantitySuccess": 2,
"amountInput": 10.8,
"amountRefund": 0,
"amount": 10.8,
"state": "SUCCESS",
"product": "{\"productId\":\"us-native-lax\",\"days\":30,\"discountPrice\":5.4}",
"resources": "[{\"type\":\"native\",\"status\":\"SUCCESS\",\"proxyId\":\"up-3001\",\"countryCode\":\"US\",\"proxy\":{\"host\":\"198.51.100.30\",\"port\":\"1080\",\"username\":\"proxy-user\",\"password\":\"proxy-password\",\"protocol\":\"SOCKS5\",\"expireAt\":\"2026-11-22 10:00:00\"}}]",
"remark": null,
"createdAt": "2026-10-23 10:00:00",
"updatedAt": "2026-10-23 10:00:00"
}
]
},
"contextId": "a3f5c2e1b7d94c0e8f6a1b2c3d4e5f60a3f5c2e1b7d94c0e8f6a1b2c3d4e5f6"
}
POST/ip/renew

续费代理

直接续费指定的本地代理并扣减余额;资源归属、可续费状态和实际费用由服务端校验。

鉴权Bearer API Key

请求参数

字段类型是否必填说明
itemsnumber[]必填本地代理 ID(/proxy/list 的 id),1 到 1000 个且不能重复;不是订单 ID
durationnumber必填续费天数,正整数

注意事项

  • 业务参数校验后直接提交一次,由服务端按当前价格核算并扣费;客户端不预查价格、库存或套餐,权限与余额由服务端校验。
  • 提交后不自动重试;超时或结果不明时先查 /ip/orders、/proxy/list 与 /billing/trades 核对,不要重复购买。
  • 同一登录与团队下参数完全相同的购买仍在处理中时返回 -1100;未选择团队时同样返回 -1100。
  • 不再执行本地续费询价;服务端对资源和续费范围进行校验,业务错误原样透传。
  • 多个原订单分组不保证同成同败;失败或超时的批次不要整批重提。

响应字段

字段类型说明
contextIdstring本次请求的登录与团队上下文标识,可作为后续请求的 X-Nex-Service-Context
dataobject[]续费订单,每个原订单分组一笔,字段同 /ip/orders 条目
data[].idnumber续费订单 ID
data[].actionstring固定为 renew
data[].statestring订单状态
data[].amountnumber该组扣款金额

响应示例

{
"code": 0,
"msg": "成功",
"data": [
{
"id": 9003,
"orderNo": "NIP20261023000003",
"userId": 1001,
"teamId": 2001,
"action": "renew",
"productType": "GENERAL",
"type": "native",
"countryCode": "US",
"locationCode": "LAX",
"duration": 30,
"quantity": 1,
"quantitySuccess": 0,
"amountInput": 5.4,
"amountRefund": 0,
"amount": 5.4,
"state": "PROCESSING",
"product": "{\"productId\":\"us-native-lax\",\"days\":30,\"discountPrice\":5.4}",
"resources": null,
"remark": null,
"createdAt": "2026-10-23 10:00:00",
"updatedAt": "2026-10-23 10:00:00"
}
],
"contextId": "a3f5c2e1b7d94c0e8f6a1b2c3d4e5f60a3f5c2e1b7d94c0e8f6a1b2c3d4e5f6"
}
GET/ip/snap/plans

短效代理套餐

读取当前短效代理额度套餐,购买时 num 必须等于其中某个 ipNum。

鉴权Bearer API Key

请求参数

无参数

注意事项

  • 价格以每次读取的配置为准,不要缓存示例价格。

响应字段

字段类型说明
contextIdstring本次请求的登录与团队上下文标识,可作为后续请求的 X-Nex-Service-Context
dataobject[]套餐列表,来自应用配置 NEX_SNAP_IP_COMBO
data[].ipNumnumber套餐包含的提取额度
data[].pricenumber | string套餐总价,USDT

响应示例

{
"code": 0,
"msg": "成功",
"data": [
{
"ipNum": 100,
"price": "21.600"
},
{
"ipNum": 500,
"price": "98.000"
}
],
"contextId": "a3f5c2e1b7d94c0e8f6a1b2c3d4e5f60a3f5c2e1b7d94c0e8f6a1b2c3d4e5f6"
}
GET/ip/snap/products

短效代理国家

列出短效代理支持提取的国家,code 在提取时原样使用。

鉴权Bearer API Key

请求参数

无参数

注意事项

  • 列表只表示支持的国家,不代表实时库存。

响应字段

字段类型说明
contextIdstring本次请求的登录与团队上下文标识,可作为后续请求的 X-Nex-Service-Context
dataobject[]国家列表
data[].codestring两位国家码,作为 /ip/snap/pull 的 countryCode
data[].namestring国家英文名
data[].zhNamestring国家中文名
data[].flagstring国旗图标

响应示例

{
"code": 0,
"msg": "成功",
"data": [
{
"code": "US",
"name": "United States",
"zhName": "美国",
"flag": "🇺🇸"
}
],
"contextId": "a3f5c2e1b7d94c0e8f6a1b2c3d4e5f60a3f5c2e1b7d94c0e8f6a1b2c3d4e5f6"
}
POST/ip/snap/buy

购买短效代理额度

按套餐购买短效代理额度并扣减余额;购买后不会立即生成代理,需按国家分批提取。

鉴权Bearer API Key

请求参数

字段类型是否必填说明
numnumber必填套餐额度,必须等于 /ip/snap/plans 某项的 ipNum

注意事项

  • 业务参数校验后直接提交一次,由服务端按当前价格核算并扣费;客户端不预查价格、库存或套餐,权限与余额由服务端校验。
  • 提交后不自动重试;超时或结果不明时先查 /ip/orders 与 /billing/trades 核对,不要重复购买。
  • 同一登录与团队下参数完全相同的购买仍在处理中时返回 -1100;未选择团队时同样返回 -1100。
  • 套餐是否可用由服务端校验,服务端业务错误原样透传。

响应字段

字段类型说明
contextIdstring本次请求的登录与团队上下文标识,可作为后续请求的 X-Nex-Service-Context
dataobject新建的短效订单,productType 为 SNAP
data.idnumber本地订单 ID,提取时作为 nexIpId
data.quantitynumber总额度
data.quantitySuccessnumber已提取数量,初始为 0
data.statestring订单状态,初始为 PROCESSING

响应示例

{
"code": 0,
"msg": "成功",
"data": {
"id": 9002,
"orderNo": "NIP20261023000002",
"userId": 1001,
"teamId": 2001,
"action": "buy",
"productType": "SNAP",
"type": null,
"countryCode": null,
"locationCode": null,
"duration": null,
"quantity": 100,
"quantitySuccess": 0,
"amountInput": 21.6,
"amountRefund": 0,
"amount": 21.6,
"state": "PROCESSING",
"product": null,
"resources": null,
"remark": null,
"createdAt": "2026-10-23 10:00:00",
"updatedAt": "2026-10-23 10:00:00"
},
"contextId": "a3f5c2e1b7d94c0e8f6a1b2c3d4e5f60a3f5c2e1b7d94c0e8f6a1b2c3d4e5f6"
}
POST/ip/snap/pull

提取短效代理

从已购短效额度中按国家提取代理;消耗额度,不是只读查询。

鉴权Bearer API Key

请求参数

字段类型是否必填说明
nexIpIdnumber必填短效订单的本地 ID,取自 /ip/snap/buy 或 /ip/orders
countryCodestring必填两位大写国家码,取自 /ip/snap/products 的 code
numnumber必填本次提取数量,正整数且不超过剩余额度

注意事项

  • 提取的代理由服务端写入代理列表并累计到订单 resources,可在 /proxy/list 中按 ID 选用。
  • 提取消耗额度且不自动重试;超时或结果不明时先刷新 /ip/orders 核对 quantitySuccess,不要再次提取。
  • 额度不足时服务端返回 -1208;响应包含明文代理凭据。

响应字段

字段类型说明
contextIdstring本次请求的登录与团队上下文标识,可作为后续请求的 X-Nex-Service-Context
dataobject[]本次提取的代理
data[].hoststring代理主机
data[].portstring | number代理端口
data[].usernamestring代理认证用户名
data[].passwordstring代理认证密码(明文)
data[].protocolstring代理协议
data[].expireAtstring到期时间

响应示例

{
"code": 0,
"msg": "成功",
"data": [
{
"host": "us.snap.example.net",
"port": 20001,
"username": "snap-user",
"password": "snap-password",
"protocol": "SOCKS5",
"expireAt": "2026-10-23 10:30:00"
}
],
"contextId": "a3f5c2e1b7d94c0e8f6a1b2c3d4e5f60a3f5c2e1b7d94c0e8f6a1b2c3d4e5f6"
}