Changelog

Changes to the customer API, rotation links and webhooks. Newest first. Additive changes (new fields, new endpoints) do not change the /api/v1 prefix; breaking changes would get a new version.

2026-10-10

  • New: GET / PUT /nodes/{id}/uplink — choose how the box reaches our server (Ethernet only, Ethernet with backup dongles, or dongles only) and see which link it uses now. Node object gains uplink. New alert types uplink_backup, uplink_primary, uplink_none. Needs agent 1.7.0. See Tunnel uplink.

  • New: GET / PUT /proxies/{id}/network-mode — read the dongle's network mode live (plus what network it is on now, e.g. EDGE / LTE) and switch it to 4G only, 3G only, 2G only, Auto or a combo the dongle offers. Capability netmode.set is now yes on HiLink dongles. See Network mode.

  • New: data_connection (connected / disconnected / unknown) and data_connection_reason on the proxy object and the interface object — whether the device has mobile data, separate from status. See the proxy object.

  • New interface fields: lan (agent ≥ 1.6.0), lan_mismatch, apn, warnings.shared_address, warnings.possible_duplicate_of. See the interface object.

  • New: PATCH /proxies/{id}/interface/apn sets the APN for devices with the new capability data_connect (USB modems, agent ≥ 1.6.0). See Set the APN.

  • New: GET /nodes, GET /nodes/{id}, PATCH /nodes/{id} (name and location) and the node object (display_name, location, isp, public_ip, …). Proxy node gains name, display_name, country_code, city; proxies gain country_code and isp of the exit IP. See Nodes.

  • New: traffic insights per proxy (off by default; agent ≥ 1.5.0): traffic object on every proxy, PATCH /proxies/{id} traffic_view / traffic_log / traffic_retention_days / traffic_sni, GET /proxies/{id}/traffic, …/traffic/top, …/traffic/recent, POST …/traffic/live-token (Server-Sent Events), …/traffic/logs, …/traffic/logs/export (CSV). See Traffic insights.

  • New: every proxy has a device object — type (hilink, mm, android, generic), model, permanent uid and capabilities (yes / setup / no). Things a device cannot do answer 409 unsupported. See device type and capabilities.

  • New: DELETE /proxies/{id}, GET /proxies/deleted, POST /proxies/{id}/restore — a deleted proxy frees its port at once and can be restored for 7 days. See delete and restore.

  • Changed: the sim object belongs to the SIM card (moves with it to another dongle) and gains id, identified, iccid_last4, sms_limits.

  • New: proxies can sit on different cloud routers. host may be a hostname (gw-<code>.vpslake.com) instead of an IP. While a node is scheduled to move to another cloud router, proxies carry pending_host, pending_port and switch_at; webhooks proxy.address_changing (before) and proxy.address_changed (after). Logins and rotation links do not change.

  • New: SMS and bandwidth limits per proxy (day / week / month) — limits object on every proxy, GET /proxies/{id}/limits, change with PATCH /proxies/{id} {"limits":…}. New disabled_reason bandwidth_limit. See Proxies.

  • New: POST /proxies/{id}/sms sends an SMS from the dongle; 429 sms_limit_reached when a limit is used up. See SMS.

  • Changed: PATCH /proxies/{id} no longer needs label when limits (or sim) is sent.

  • New: website rules per proxy — GET/PUT /proxies/{id}/rules (block list / allow list; needs agent 1.3.0 on the box).

  • New: ports — GET/PUT /proxies/{id}/ports, GET /proxies/{id}/ports/free: one port for both protocols (default) or separate HTTP and SOCKS5 ports, numbers of your choice.

  • New fields on the proxy object: ports and site_rules. users[].socks5 now uses the SOCKS5 port (the same port unless the proxy is in split mode).

  • New: alerts — GET/PATCH /alerts/settings (email, Telegram, event types, timezone) and GET /alerts (history). See Alerts.

  • New: sim object on GET /proxies/{id} and in PATCH /proxies/{id} (phone, operator, plan, next recharge date, reminder). See Proxies.

  • New: PATCH /proxies/{id} renames a proxy (label). See Proxies.

  • New: this documentation site at https://proxykite.com/docs/.

2026-10-09

  • New: interface management — GET/PATCH /proxies/{id}/interface, POST /proxies/{id}/interface/reset, GET /nodes/{id}/interfaces, POST /nodes/{id}/rescan. See Interfaces and Nodes.
  • Changed: a plain GET on a rotation link no longer rotates. Use POST, or GET with ?confirm=1. A plain GET answers 400 confirm_required (or a page with a Rotate now button in a browser).
  • Changed: POST /proxies/{id}/interface/reset is refused (422) for dongles in system mode.
  • New: API v1 launched — proxies, rotation, auto-rotate, passwords, whitelist, usage, SMS, rotation history, export; webhooks with rotation.completed, node.online, node.offline, quota.exceeded.