modify
Modify a single existing order's price, size, or other parameters. This allows updating an order without cancelling and re-submitting.
Sample Data#
{
"signature": {
"r": "0xc99c77b2297349c8ab77d7a820a31e0d43646c9c938775b81b5aed101e89885f",
"s": "0x881c0298616ca974aad375d044e5796ed719eac0b86cf2f1348e309f623231d",
"v": 28
},
"action": {
"type": "modify",
"oid": 291708423670,
"order": {
"a": 191,
"b": true,
"p": "0.15042",
"s": "6583",
"r": false,
"t": {
"limit": {
"tif": "Alo"
}
},
"c": "0x55560089921887924531768146559426"
}
},
"nonce": 1768146528890,
"vaultAddress": "0x0bd00a003c3a494261789a9c87ff17f6e605e715"
}
View this transaction on Hypurrscan →
Field Reference#
Action Fields#
| Field | Type | Description |
|---|---|---|
type | string | Always "modify" |
oid | string | Order ID (or client order ID) to modify |
order | object | New order parameters |
Order Object Fields#
| Field | Type | Description |
|---|---|---|
a | number | Asset index |
b | boolean | Side: true for buy, false for sell |
p | string | New limit price |
s | string | New size |
r | boolean | Reduce-only flag |
t | object | Order type configuration |
c | string | Client order ID |
Optional Fields#
| Field | Type | Description |
|---|---|---|
vaultAddress | string | Vault executing the modification |
expiresAfter | number | Expiration timestamp |
Use Cases#
Order Update Tracking#
Monitor how traders adjust their orders:
def process_modify_action(action):
oid = action.get('oid')
order = action.get('order', {})
new_price = order.get('p')
new_size = order.get('s')
print(f"Order {oid[:10]}... modified: price={new_price}, size={new_size}")
Market Maker Analysis#
Track how frequently market makers update their quotes.
Price Improvement Detection#
Monitor price improvements on existing orders.
Related Action Types#
- order - Submit new orders
- batchModify - Modify multiple orders atomically
- cancel - Cancel orders