← Back to blog
BULK OPS nodetonet.com

Bulk operations — managing 100+ proxies without losing your afternoon

N Nodetonet Team
April 2, 2026 7 min read

The per-row dropdown on /proxies is friendly when you have five tunnels. At a hundred and forty it becomes purgatory. At some point you stop wanting to stop, change protocol, then restart one tunnel at a time, and you need a way to act on the whole fleet — or a precisely filtered slice of it — in a single shot.

Bulk operations are built exactly for that moment. The panel exposes them through a sticky selection bar that appears the instant you tick more than one row, and every action in that bar is also available on the REST API so your own provisioning scripts can drive the same logic. This guide covers both paths, the edge cases that bite at scale, and how to wire it all into an automated workflow.

Why row-by-row management breaks at scale

Every additional proxy you add multiplies the click-count for routine maintenance. Restarting a pool of twenty devices after a carrier outage, rotating IPs across a token group before a scraping run, or switching a batch from HTTP to SOCKS5 for a new client — each of these operations should take one action, not twenty separate ones. Without bulk tooling, operators end up writing fragile shell loops against the API or, worse, doing it by hand and missing some.

The panel's bulk system and the matching API endpoint eliminate that gap. Everything you can do per-row, you can do per-selection at any scale, with a consistent per-id result so you know exactly which items succeeded and which need a retry.

The selection bar in the panel

On /proxies, every row has a checkbox in its left gutter. Tick two or more and a sticky action bar slides up from the bottom of the table. Selections survive sorting and column filtering, so the most efficient workflow is: filter by tag, token, or protocol, select all on the filtered page, then act. Here is what each action does:

Action What it does Notes
Start Brings every selected tunnel up on the edge Already-running proxies are a no-op, not an error
Stop Gracefully tears down listeners and frees edge ports Idle proxies stop accruing usage; billing only runs while active
Change protocol Flips a batch between HTTP, HTTPS, and SOCKS5 Port number stays the same; only the wire protocol changes
Rotate IP Sends a rotation hint to every paired device in the selection Skips upstream-only proxies; falls back gracefully if a device does not support hot rotation
Delete Permanently removes the selected proxies Destructive and double-confirmed; surfaces a count before you commit

The matching API call

Every bulk action in the UI calls the same REST endpoint. You can call it directly from scripts, CI pipelines, or any orchestration layer:

POST /api/v1/proxies/bulk
Authorization: Bearer $KEY
Content-Type: application/json

{
  "action": "stop",
  "ids": ["px_8x2q...", "px_3KZL...", "px_NPJX..."]
}

Valid action values mirror the panel bar: start, stop, rotate, delete, and set_protocol. The last one takes an extra body field to name the target protocol:

{
  "action": "set_protocol",
  "protocol": "socks5",
  "ids": ["px_8x2q...", "px_3KZL..."]
}

The response is a per-id result map, not a single pass/fail. This is intentional: in a fleet of two hundred, you almost never want the entire batch to abort because one token was offline.

{
  "results": {
    "px_8x2q...": { "ok": true,  "state": "stopped" },
    "px_3KZL...": { "ok": false, "error": "token_offline" },
    "px_NPJX...": { "ok": true,  "state": "stopped" }
  },
  "summary": { "ok": 2, "failed": 1 }
}

A provisioning script should loop over results, collect the failed ids, and retry them once the offline mobile devices reconnect — rather than re-sending the full list.

Limits and what happens on the edge

One call accepts up to 200 ids. Larger fleets should be chunked client-side. The endpoint is fast but not streaming, and a very large single call can time out before the server has queued all orders on a slow connection. The 200-cap matches the panel's "select all on page" page size, so the two surfaces stay in sync without any client-side logic.

The endpoint is rate-limited to 5 calls per minute per personal API key. Customer API tokens — the scoped credentials you issue to reseller clients — cannot call /bulk at all. Bulk control is an account-owner primitive; customers interact with their assigned proxies through their own credentials. For the full distinction, read personal vs customer tokens.

Bulk stops are immediate — the edge severs the listener synchronously. Bulk starts are async — the endpoint returns once the orders are queued, but the listeners take 2–5 seconds each to actually bind on the edge server. If your script must wait for live confirmation, poll /api/v1/proxies?ids=... until all states flip to running.

Partial failure: the most common cause and the right fix

The single most common reason a row returns ok: false is the token being offline. A paired phone that has lost its connection cannot receive a rotation hint or complete a protocol change. The bulk endpoint surfaces this per-id rather than failing the whole call. The right response is to filter the failures by error type: token_offline items are safe to retry later; not_found items indicate stale ids that should be removed from your fleet manifest.

For pools that must stay available even when individual devices drop, consider automatic failover and token groups — the round-robin selection ensures traffic is never sent to a device that is not currently connected.

Integrating bulk operations into a workflow

The most effective pattern for automated fleet management is a three-step loop. First, retrieve all proxy ids using a list call to the API. Second, filter or group them by the criteria relevant to your task — protocol, tag, token, or last-seen time. Third, send the filtered ids to /bulk in pages of up to 200. Repeat the third step until no ids remain.

For programmatic provisioning — creating a fleet from scratch rather than operating an existing one — see creating tunnels programmatically with Python, which complements this guide end to end. To understand per-client controls like quota limits and thread limits, those are set at the client level, not via the bulk endpoint — they remain in place regardless of start/stop cycles.

Protocol choices at scale

When deciding which protocol to use across a large fleet, the set_protocol action makes it easy to experiment. HTTP and HTTPS are the right default for browser-driven scraping and most API clients. SOCKS5 is better when you need raw TCP forwarding — non-HTTP traffic, custom tooling, or any client that negotiates the protocol itself. You can read the full trade-offs in HTTP vs SOCKS5: which to pick. Because a bulk protocol change keeps the same port, you can switch a batch without updating any client configuration that references the endpoint — only the wire protocol changes at the proxy layer.

Get started

If you have not yet talked to the API, start with your first REST call to obtain your personal key and understand authentication. Once you are managing a meaningful fleet, the bulk endpoint is the single fastest way to operate it. Create an account to get access to the full panel and API, or explore the full feature set to see what else is available alongside bulk operations.

Frequently asked questions

How many proxies can I act on in one bulk API call?
One call to POST /api/v1/proxies/bulk accepts up to 200 proxy ids. For fleets larger than that, chunk the ids client-side and send multiple calls — the endpoint processes each page independently and returns a per-id result map for each.
Can I bulk-rotate IP addresses through the panel without using the API?
Yes. Tick any number of rows on /proxies and the sticky action bar that appears includes a Rotate IP button. It sends a rotation hint to every paired device in the selection simultaneously. For how rotation works in detail, see token rotation: when and why.
Does bulk start happen instantly or do I need to wait?
Bulk starts are asynchronous. The API returns as soon as the orders are queued, but each listener takes a few seconds to actually bind on the edge server. If your workflow depends on the proxies being live, poll GET /api/v1/proxies?ids=... until each id shows a running state.
What happens if some proxies fail during a bulk action?
The bulk endpoint returns a per-id result map, so failures do not abort the rest of the batch. Inspect the error field for each failed id: token_offline means the paired device is not connected and you should retry later; not_found means the id is stale and should be removed from your list.
Can reseller customers use bulk operations?
No. Customer API tokens — the scoped credentials you issue to clients — cannot call /bulk. Bulk control is an account-owner primitive. Customers manage their assigned proxies through per-proxy controls and their own customer-facing credentials. Read personal vs customer tokens for the full permission model.
Can I change the protocol of a hundred proxies without updating client credentials?
Yes. The set_protocol bulk action changes only the wire protocol on the same port. Any client already pointing at the host and port will automatically use the new protocol after the change — no endpoint reconfiguration needed. Use this to flip a batch from HTTP to SOCKS5, or back, without touching your downstream tooling.
Is there a way to target all proxies on a specific edge server in bulk?
The bulk endpoint works on explicit id lists, so you first need to retrieve the ids of proxies on that edge server using the list endpoint filtered by server. Then pass those ids to /bulk. Read choosing the right edge server to understand how traffic is routed per server.
How does bulk IP rotation differ from automatic rotating proxies?
Bulk IP rotation sends a one-time hint to the selected devices asking them to change their exit IP immediately. Automatic rotating proxies (via token groups) cycle the IP on every request or on a timer without any manual action. Use bulk rotation when you want a coordinated one-shot refresh across your fleet; use automatic rotation for ongoing per-request IP diversity.
N

Nodetonet Team

Building Nodetonet — a prepaid proxy + tunneling platform that replaces ngrok, Cloudflared and a residential proxy provider with a single panel.

Related posts