ProxyWing
浏览端点

ProxyWing 开发者 API

数据中心

为数据中心代理下单、列出、延期、轮换凭据以及将 IP 加入白名单。

GET /datacenter/products

列出数据中心产品

返回可购买的数据中心代理产品,以及各位置的价格。

验证 · Bearer
请求 GET /datacenter/products
curl -X GET "https://api.proxywing.com/v1/datacenter/products" \
  -H "Authorization: Bearer pk_live_XXXXXXXX"
响应 200 · application/json
{
  "products": [
    {
      "product_id": "dcprod_3",
      "location": "UK",
      "quantity": 1,
      "price_monthly": 1.8
    }
  ]
}
POST /datacenter/orders

订购数据中心代理

使用账户余额购买数据中心代理产品并立即开通。可选择 monthly、quarterly、semiannually 或 annually 作为 billing_cycle——周期越长,按产品每周期的折扣价计费(与网页结算的费率相同),total 字段会准确报告实际扣费金额。请提供 Idempotency-Key 请求头,这样超时请求的重试绝不会重复扣费。响应中的 order_id 是后续所有针对该资源的调用所使用的 ID,且仅在订单开通后才可获知——订单仍处于 awaiting_payment 状态时,该值为 null。请先支付账单,然后重新读取余额结清订单的响应,或轮询相应的列表端点以获取该资源。此端点必须提供 Idempotency-Key——省略将返回 400,且不会产生任何扣费。

验证 · Bearer Idempotency-Key

请求体参数

  • product_id string 必填

    要订购的产品,取自 GET /datacenter/products。

  • billing_cycle string 可选

    计费周期:"monthly"(默认)、"quarterly"、"semiannually" 或 "annually"。周期越长,按产品每周期的折扣价计费。(也接受月数 1/3/6/12 作为别名。)

  • promo_code string 可选

    可选的优惠码。通过 API 仅可使用折扣低于 100% 的百分比折扣优惠码(会使总额归零的优惠码将被拒绝)。

请求 POST /datacenter/orders
curl -X POST "https://api.proxywing.com/v1/datacenter/orders" \
  -H "Authorization: Bearer pk_live_XXXXXXXX" \
  -H "Idempotency-Key: b3f2a1c4-7e9d-4a2b-8c6f-1d5e9a0b3c7f" \
  -H "Content-Type: application/json" \
  -d '{"product_id":"dcprod_3","billing_cycle":"annually"}'
响应 200 · application/json
{
  "order_id": "ord_3JO0ArTC2d2keb5YTlom",
  "invoice_id": "inv_200001",
  "product_id": "dcprod_3",
  "billing_cycle": "annually",
  "total": 19.44,
  "status": "paid"
}
GET /datacenter/orders/{ord_id}/renewal-options

获取续费期限

返回订单可用的延期期限——1、3、6 和 12 个月——及各自的价格。较长期限采用该产品每周期的折扣价,因此 3/6/12 个月的费用低于月价乘以月数。请将其中一个 months 值作为 cycle 传给延期端点。此处只能为按月计费的服务报价;非按月计费的服务目前会返回 500,而不是规范的 4xx。

验证 · Bearer

路径参数

  • ord_id string 必填

    订单 ID,例如 ord_100001,可从 GET /datacenter/proxies 获取。

请求 GET /datacenter/orders/{ord_id}/renewal-options
curl -X GET "https://api.proxywing.com/v1/datacenter/orders/{ord_id}/renewal-options" \
  -H "Authorization: Bearer pk_live_XXXXXXXX"
响应 200 · application/json
{
  "order_id": "ord_100001",
  "next_due_date": "2026-09-02",
  "options": [
    {
      "months": 1,
      "total": 1.8,
      "label": "1 Month",
      "discount_pct": 0
    },
    {
      "months": 3,
      "total": 5.15,
      "label": "3 Months",
      "discount_pct": 5
    },
    {
      "months": 6,
      "total": 10.05,
      "label": "6 Months",
      "discount_pct": 7
    },
    {
      "months": 12,
      "total": 19.44,
      "label": "12 Months",
      "discount_pct": 10
    }
  ]
}
POST /datacenter/orders/{ord_id}/extend

续期数据中心订单

为订单对应的服务生成续费账单,并从账户余额中结清。支付后,服务的下一个到期日和代理到期时间将顺延 cycle 个月——status 为 "paid",next_due_date 确认新的到期日。周期越长,按产品每周期的折扣价计费(参见 GET /datacenter/orders/{ord_id}/renewal-options)。如果余额不足以支付 total,账单将保持未结状态,status 为 "awaiting_payment";充值后重复调用即可结清同一张账单(绝不会叠加第二张账单)。请提供 Idempotency-Key 请求头,这样重试绝不会重复续期。Idempotency-Key 为必填项——省略将在产生任何扣费之前返回 400。只有按月计费周期的服务才能通过 API 续期,且服务必须处于活跃或已暂停状态;其他情况均会被拒绝。按季度、半年或年度周期订购的服务无法在此续期。

验证 · Bearer Idempotency-Key

路径参数

  • ord_id string 必填

    要续期的订单 ID,例如 ord_100001。

请求体参数

  • cycle integer 必填

    续期时长(以月为单位):1、3、6 或 12。各时长的价格请参见 GET /renewal-options。

  • cycle_type string 必填

    必须为 "monthly"——唯一支持的周期单位。

请求 POST /datacenter/orders/{ord_id}/extend
curl -X POST "https://api.proxywing.com/v1/datacenter/orders/{ord_id}/extend" \
  -H "Authorization: Bearer pk_live_XXXXXXXX" \
  -H "Idempotency-Key: b3f2a1c4-7e9d-4a2b-8c6f-1d5e9a0b3c7f" \
  -H "Content-Type: application/json" \
  -d '{"cycle":3,"cycle_type":"monthly"}'
响应 200 · application/json
{
  "order_id": "ord_100001",
  "invoice_id": "inv_200002",
  "status": "paid",
  "total": 5.15,
  "next_due_date": "2026-12-02"
}
GET /datacenter/proxies

列出数据中心代理

返回账户中的所有数据中心订单,以及每个订单当前有效的代理凭据。每个订单的 id 是稳定的:同一订单每次调用都返回相同的 ord_...,且始终可以解析,因此您可以将其保存。列表顺序不保证——请按 ID 匹配,而不是按位置。

验证 · Bearer
请求 GET /datacenter/proxies
curl -X GET "https://api.proxywing.com/v1/datacenter/proxies" \
  -H "Authorization: Bearer pk_live_XXXXXXXX"
响应 200 · application/json
{
  "orders": [
    {
      "id": "ord_100001",
      "location": "UK",
      "status": "active",
      "expires_at": "2026-08-02T10:14:00",
      "proxies": [
        {
          "id": "prx_8fJ2Wm4Qx1Pv7Ra0Ub9c",
          "ip": "203.0.113.60",
          "http_port": 47668,
          "socks_port": 47669,
          "username": "SAMPLEU1",
          "password": "sample_password",
          "location": "UK",
          "expires_at": "2026-08-02T10:14:00"
        }
      ]
    }
  ]
}
POST /datacenter/orders/{ord_id}/change-password

更改代理密码

轮换订单的代理身份验证密码。使用旧密码的现有会话将立即失效。

验证 · Bearer

路径参数

  • ord_id string 必填

    要轮换代理密码的订单 ID。

请求 POST /datacenter/orders/{ord_id}/change-password
curl -X POST "https://api.proxywing.com/v1/datacenter/orders/{ord_id}/change-password" \
  -H "Authorization: Bearer pk_live_XXXXXXXX"
响应 200 · application/json
{
  "status": "password_changed"
}
GET /datacenter/orders/{ord_id}/whitelist

列出白名单 IP

返回当前在数据中心订单白名单中的 IP(无需用户名/密码即可使用代理的 IP)。

验证 · Bearer

路径参数

  • ord_id string 必填

    订单 ID,可从 GET /datacenter/proxies 获取。

请求 GET /datacenter/orders/{ord_id}/whitelist
curl -X GET "https://api.proxywing.com/v1/datacenter/orders/{ord_id}/whitelist" \
  -H "Authorization: Bearer pk_live_XXXXXXXX"
响应 200 · application/json
{
  "order_id": "ord_100001",
  "ips": [
    "203.0.113.9",
    "203.0.113.10"
  ]
}
POST /datacenter/orders/{ord_id}/whitelist

将 IP 加入白名单

将 IP 地址添加到订单的白名单,从而无需用户名/密码即可通过 IP 身份验证进行访问。

验证 · Bearer

路径参数

  • ord_id string 必填

    要在其上将 IP 加入白名单的订单 ID。

请求体参数

  • ip string 必填

    要加入白名单的 IPv4 或 IPv6 地址,例如 203.0.113.9。

请求 POST /datacenter/orders/{ord_id}/whitelist
curl -X POST "https://api.proxywing.com/v1/datacenter/orders/{ord_id}/whitelist" \
  -H "Authorization: Bearer pk_live_XXXXXXXX" \
  -H "Content-Type: application/json" \
  -d '{"ip":"203.0.113.9"}'
响应 200 · application/json
{
  "status": "whitelisted",
  "ip": "203.0.113.9"
}
DELETE /datacenter/orders/{ord_id}/whitelist/{ip}

移除白名单 IP

从数据中心订单的白名单中移除一个 IP,并返回更新后的白名单。该操作是幂等的——移除不在白名单中的 IP 仍会返回 200,因此超时后重试是安全的。当该条目已从我们的记录中移除、但代理尚未应用此更改时,返回 503 whitelist_sync_pending;在应用之前,该 IP 仍可能被接受,因此请重试以确认。

验证 · Bearer

路径参数

  • ord_id string 必填

    订单 ID,可从 GET /datacenter/proxies 获取。

  • ip string 必填

    要移除的白名单 IP,例如 203.0.113.9。

请求 DELETE /datacenter/orders/{ord_id}/whitelist/{ip}
curl -X DELETE "https://api.proxywing.com/v1/datacenter/orders/{ord_id}/whitelist/{ip}" \
  -H "Authorization: Bearer pk_live_XXXXXXXX"
响应 200 · application/json
{
  "order_id": "ord_100001",
  "ips": [
    "203.0.113.10"
  ]
}