Batch modify orders
Hyperliquid node API
Batch modify orders | Hyperliquid exchange
Modifies multiple existing orders in a single atomic request on the Hyperliquid exchange. Chainstack Hyperliquid exchange reference.
POST
Batch modify orders
You can only use this endpoint on the official Hyperliquid public API. It is not available through Chainstack, as the open-source node implementation does not support it yet. See Hyperliquid methods for the full availability breakdown.
This endpoint requires signature authentication. See our comprehensive Authentication via Signatures guide for implementation details.
Get your own node endpoint todayStart for free and get your app to production levels immediately. No credit card required.You can sign up with your GitHub, X, Google, or Microsoft account.
Parameters
Required parameters
-
action(object, required) — The batch modify action object containing:type(string) — Must be"batchModify"modifies(array) — Array of modification objects, each containing:oid(number or string) — Order ID to modify, or cloid if using client order IDorder(object) — New order parameters:a(number) — Asset indexb(boolean) — Is buy order (true for buy/long, false for sell/short)p(string) — New limit prices(string) — New size in units of the base assetr(boolean) — Reduce only ordert(object) — Order type specification:- For limit orders:
{"limit": {"tif": "Alo" | "Ioc" | "Gtc"}} - For trigger orders:
{"trigger": {"isMarket": boolean, "triggerPx": string, "tpsl": "tp" | "sl"}}
- For limit orders:
c(string, optional) — New client order ID (128-bit hex string)
-
nonce(number, required) — Current timestamp in milliseconds (must be recent) -
signature(object, required) — EIP-712 signature of the action
Optional parameters
vaultAddress(string, optional) — Address when trading on behalf of a vault or subaccountexpiresAfter(number, optional) — Timestamp in milliseconds after which the request is rejected
Returns
Returns an object with batch modification status:status—"ok"if request processedresponse— Contains modification details:type—"batchModify"data.statuses— Array of modification results for each order
Example request
Batch processing
- Atomic execution — All modifications are processed together
- Independent validation — Each modification is validated independently
- Partial success — Some orders may succeed while others fail
- Efficiency — Single signature and request for multiple modifications
Use cases
- Market making — Update multiple orders across different price levels
- Portfolio management — Adjust multiple positions simultaneously
- Grid trading — Modify entire grids of orders efficiently
- Strategy updates — Bulk update orders when strategy parameters change
Batch modifications are processed sequentially in the order provided. If one modification fails, it doesn’t affect the others in the batch.
Body
application/json
Current timestamp in milliseconds
EIP-712 signature of the action with r, s, v components
Address when trading on behalf of a vault or subaccount (optional)
Timestamp in milliseconds after which the request is rejected (optional)
Last modified on May 18, 2026