Network mode

Choose which mobile networks a dongle may use: 4G only, 3G only, 2G only, Auto (4G/3G/2G), or a combination the dongle's firmware offers (for example 4G + 3G). Locking a dongle to 4G stops it from falling back to slow 2G (EDGE); Auto is better where 4G coverage is weak.

Only devices with the capability netmode.set can do this (Huawei HiLink dongles). For other device types both endpoints answer 409 unsupported — see device type and capabilities. In the panel: proxy page → Connection → Network mode.

Read the current mode

GET /proxies/{id}/network-mode

Ability: read · 30 requests/min. Reads the dongle live through the node's tunnel (a few seconds).

curl
Python
Node.js
PHP
curl 'https://proxykite.com/api/v1/proxies/7/network-mode' \
  -H "Authorization: Bearer $HYP_TOKEN" \
  -H 'Accept: application/json'

Response 200

{"data": {"proxy_id": 7, "mode": "00", "label": "Auto (4G/3G/2G)", "network_band": "3FFFFFFF", "lte_band": "800C5",
  "options": [{"value": "00", "label": "Auto (4G/3G/2G)"}, {"value": "03", "label": "4G only"},
              {"value": "02", "label": "3G only"}, {"value": "01", "label": "2G only"}],
  "options_source": "dongle", "network_type": "EDGE", "connection_status": "901", "connected": true,
  "signal_bars": 3, "read_at": "2026-10-10T19:10:00+00:00"}}
Field
modethe dongle's current mode: 00 Auto, 03 4G only, 02 3G only, 01 2G only; combos 030201 4G + 3G + 2G, 0302 4G + 3G, 0301 4G + 2G, 0201 3G + 2G
optionsthe modes this dongle accepts, in menu order — offer only these
options_sourcedongle = the firmware's own list; default = the firmware has no list, the four basic modes are offered
network_typewhat the dongle is on right now: LTE, LTE+, HSPA+, WCDMA, EDGE, GPRS, …
connection_status901 connected, 900 connecting, 902 disconnected, 903 disconnecting
network_band, lte_bandthe dongle's band settings (kept unchanged when you switch the mode)

Change the mode

PUT /proxies/{id}/network-mode

Ability: manage · Who: account owner, team admin, or the reseller sub-user the proxy is assigned to · 6 changes a minute per dongle. Switches the mode, then reads it back from the dongle to confirm. The dongle reconnects for a few seconds (open connections through the proxy drop); read the mode again after ~20 s to see the new network_type. IP rotation switches the mode for a moment and always returns to the mode set here.

Body field
modeone of the options values, e.g. "03" for 4G only
curl
Python
Node.js
PHP
curl -X PUT 'https://proxykite.com/api/v1/proxies/7/network-mode' \
  -H "Authorization: Bearer $HYP_TOKEN" \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{"mode":"03"}'

Response 200 — the same object as above plus changed (false = it was already on that mode; nothing was sent) and previous:

{"ok": true, "data": {"proxy_id": 7, "mode": "03", "label": "4G only", "changed": true, "previous": "00",
  "network_type": "LTE", "connection_status": "900", "…": "…"}}
ErrorWhen
422 validation_failedmode missing or not in options
409 unsupportedthe device cannot change its network mode
409 dongle_busya rotation or status read is using the dongle — retry in a few seconds
429 rate_limitedmore than 6 changes a minute on this dongle (Retry-After header)
502 netmode_failedthe dongle refused, or reported another mode after the change
502 / 503 dongle_unreachablenode offline, tunnel down or dongle unplugged