Skip to main content
POST
Extend proxy
Charges your wallet and extends the proxy subscription at the provider level. The endpoint routes by the order’s proxy type: static proxies (residential, datacenter, ISP) are extended by whole months; mobile rotating proxies are re-billed for one cycle of the chosen tarification.
This action is billed immediately from your wallet balance. Ensure you have sufficient funds before calling this endpoint.
Mobile rotating proxies: extending re-applies the selected tarification at the provider, which resets any remaining time and traffic on the current cycle. It does not append. If the current cycle still has substantial time or traffic left, you may forfeit it. Extend close to expiry.

Path parameters

string
required
UUID of the order.

Headers

string
Replay-safe key. Required for mobile rotating extends. Optional for static-proxy extends. The same key returns the cached response without re-billing; a different body with the same key returns 409 ConflictError.

Request body

integer
Number of months to extend. Min 1, max 24. Required for static proxies (residential, datacenter, ISP).
integer
Zero-based index into the offer’s pricing_options. Required for mobile rotating proxies.
Provide exactly one of months or tarification_index. Sending both, or neither, returns 422 ValidationError. Sending the wrong field for the order’s proxy type returns 400 — the message identifies which field the proxy type expects.

Response

For static proxies the response is the updated proxy object with the new expires_at — same shape as the managed_proxy object in Get order. For mobile rotating proxies the response matches the mobile shape in Get order (the type: "mobile" variant) — see the example below for the full superset. Both shapes include an extend-specific field:
string | null
The expires_at value before this extend call. Only populated on extend responses; null everywhere else. Lets clients render a before/after diff.

Example — static proxy

Example — mobile rotating proxy

Operators can enable the orders.mobile.extend.too_early_guard feature flag to block mobile extends when more than 30 % of the current cycle is still remaining. The flag is off by default; when on, the API returns a 400 with a message asking the caller to extend closer to expiry.