How to renew or release a static residential IP

Before a static residential IP expires, check the order and balance, then renew it using the official docs. Release it only when you no longer need it. queued does not mean provisioned. Refunds follow product policy. Not for mainland China.

Static residential proxies are billed per IP per month and provide a relatively fixed exit during the term. To extend that term, follow the official renew flow; when you no longer need the resource, follow release / cancel. This page covers what to check before renewal, how to read duration fields, and why a released instance cannot be used again. For the API overview see API integration.

When you create a static order, the API may first return queued: true. That only means the order was accepted; it does not mean the instance is already provisioned. Renewal applies to an existing order or instance you are allowed to manage. A sticky session is not a renewable static IP; see sticky vs static. Authorized targets only. Not supported in mainland China.

What to prepare

ItemWhere it comes from
Platform order numberorder_no / orderNo in the order list; prefer this for renew and release
Instance number, if you renew only some IPsinstanceNo in the list. If you omit instances, the docs say every instance on that order is renewed
Wallet balanceCheck the dashboard or current balance before you renew; see Balance
Product typeShared vs dedicated is covered in shared vs dedicated. Do not read a resource-type field in an API example as a marketed ISP SKU

Placeholders only (not production): order number example ORDER_NO_EXAMPLE, token example TOKEN_EXAMPLE_NOT_REAL. Do not submit these fake values to the live API.

Checks before you renew

The docs ask you to confirm the target order in the static order list, confirm you are allowed to renew it, confirm the balance is sufficient, and use the same duration rules as static order creation. If the balance is too low or the order cannot be renewed, the API returns a non-zero code or an HTTP error.

Duration fieldCommon meaning in the docsNotes
unit of 1DaysOrdinary static products often use duration 30; some products also allow 90 or 365. The docs example duration: 30, unit: 1, cycleTimes: 1 is processed as one month
unit of 3MonthsCommon duration values are 1, 3, 6, and 12; you can also send unit: 3, duration: 1
unit of 4YearsA common duration is 1
Actual valuesFollow the product configurationDo not treat this table as a menu that every plan offers

If the console has a renew control, follow the labels on screen, and still confirm the order number, expiry, and balance.

Renew-by-order example

export ZTPROXY_BASE="https://backend.ztproxy.net/api"
export ZTPROXY_TOKEN="TOKEN_EXAMPLE_NOT_REAL"

curl -X POST "$ZTPROXY_BASE/open/app/static/order/renew" \
  -H "Authorization: Bearer $ZTPROXY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "order_no": "ORDER_NO_EXAMPLE",
    "duration": 30,
    "unit": 1,
    "cycleTimes": 1
  }'

The docs also allow renewing selected instances only. After renewal, query the order list again and confirm expiry and instance status. When you report an address to a partner, use the real IP from the console; see static IP allowlists.

How to release an IP you no longer need

When you no longer need the static order, you can cancel or release it with a reason, as documented. Keep these limits in mind:

PointDocumented stance
Release behaviorDepends on the product and order status; do not assume every state can be released
After releaseA released instance cannot be used again
ConfirmationQuery the order list again and confirm the final status
Refunds or unused timeFollow the product policy. This page does not invent an automatic refund amount or ratio

Do not keep sending a released IP to a partner as a valid address. Dynamic traffic has no static-IP renewal step; it is consumed in GB. See dynamic and remaining traffic.

Scope and compliance

Use this only against targets you are authorized to access. This is not a bypass guide. Prices follow the console and Pricing (dynamic about $0.40/GB, about $0.20/GB on the 100 TB package; shared static about $1.50 and dedicated about $5 per IP per month). USDT and USDC are accepted; Visa and Mastercard are still being applied for. Not supported in mainland China.

FAQ

Can I renew as soon as queued is true?

Confirm that the instance is already provisioned. queued: true only means the create request was accepted. Resource-side details and the final status come from the order list.

What is renewed if I omit instances?

The docs say the system renews every instance on that order by default.

What if the balance is too low?

Create or renew fails with a non-zero code or an HTTP error. Top up first; see USDT top-up.

Do I always get a refund for unused days after release?

Not necessarily. The docs say refunds and unused time follow the product policy. Do not publish one refund ratio as the default.

If a sticky session ends, do I use this renew API?

No. Sticky is a short window on dynamic extract, documented up to 60 minutes, and is not a static IP you can renew. See sticky sessions.

Can I use this to bypass login walls?

No. Authorized targets only.

Is renewal the same for shared and dedicated static IPs?

Both use static renewal, but duration and whether renewal is allowed follow that product's configuration. See shared vs dedicated.

Which price should I trust?

The console and Pricing.

Next steps

  1. Confirm the order number, instances, and expiry in the order list.
  2. Renew only after the balance is sufficient, then re-check the final status.
  3. Release the order when you no longer need it, and do not keep publishing a released address.