spotUser payload - Spot User Configuration
Decode Hyperliquid `spotUser` payloads for spot user configuration, returned through Dwellir's read-only L1 gRPC API.
Read-only action reference
Dwellir's Hyperliquid gRPC API returns this decoded action payload through
StreamBlocks and
GetBlock. It does not submit or execute this action.
Submit supported user write actions through Hyperliquid's native
POST /exchange
endpoint.
The decoded spotUser payload records a signed update to a user's spot-account preferences.
How to Read It
The sample payload shows the toggleSpotDusting configuration, which changes account-level behavior for spot dusting. This action is a stateful preference update. Signature, nonce, and final execution result come from the surrounding signed-action envelope and the paired response in StreamBlocks.
Sample Data
{
"signature": {
"r": "0xfb9cd389323a6b281ee513f1b1ddd0fffc21caf970e4d621da117af34c8ae800",
"s": "0x7c5d80c2e1a15f46eed277e953453e87c1f65e7ba74b621a520d779ee6766e2b",
"v": 28
},
"action": {
"type": "spotUser",
"toggleSpotDusting": {
"optOut": true
}
},
"nonce": 1768151177912,
"expiresAfter": 1768151192082
}View this transaction on Hypurrscan
Field Reference
Envelope Fields
| Field | Type | Description |
|---|---|---|
signature | object | ECDSA signature for the signed action |
nonce | number | Replay-protection nonce used for ordering and uniqueness |
expiresAfter | number | Optional expiry timestamp for time-bounded execution |
Action Fields
| Field | Type | Description |
|---|---|---|
type | string | Always "spotUser" |
toggleSpotDusting | object | Spot dusting preference payload |
toggleSpotDusting Fields
| Field | Type | Description |
|---|---|---|
optOut | boolean | Whether the user opts out of the dusting behavior shown in the sample payload |
Processing Guidance
- Treat
spotUseras an account settings update, not an economic transfer. - Preserve unknown nested fields if the protocol adds more spot-user preferences later. Dispatch first on
action.type, then parse the nested settings defensively. - Use the paired response from the same block bundle to determine whether the preference change actually took effect.
- If your product surfaces account settings history, store the transaction hash and nonce alongside the parsed preference payload.
Common Use Cases
Settings History
Record when users changed spot-account behavior and tie the change back to the exact signed action that produced it.
Account State Reconstruction
Replay spotUser actions in block order to rebuild a user's spot-account preferences over time.
Related Action Payloads
- spotSend for spot-asset transfers
- StreamBlocks for block and response pairing