Skip to main content

Writer Actions Dataset

Updated on
May 15, 2026

Overview

The Writer Actions stream contains system-level write operations recorded with an associated EVM transaction hash, including automated spot token transfers and ledger delta operations such as vault creation, staking transfers, and account activation events.

Stream Type: WRITER_ACTIONS
API Availability: gRPC Streaming API + JSON-RPC/WebSocket APIs
Volume: Low - Updates when system performs automated spot token transfers

Data Structure

Writer actions capture system operations for spot token transfers, indexed by user address, nonce, and EVM transaction hash:

{
"local_time": "2026-04-30T19:10:43.217059852",
"block_time": "2026-04-30T19:10:43.060250073",
"block_number": 978911025,
"events": [
{
"user": "0x200000000000000000000000000000000000012b",
"nonce": 1184153,
"evm_tx_hash": "0x172a41083c44c9568494fbec81d11292e192938674b861e410e4a7e965235c67",
"action": {
"type": "SystemSpotSendAction",
"destination": "0x46bbfef00cde256f834340c50286dd7b495ca418",
"token": 299,
"wei": 56697105031
}
}
]
}

Field Definitions

Event Structure

FieldTypeDescription
userstringSystem user address (usually starts with 0x200000...)
nonceintegerUnique nonce for the system operation
evm_tx_hashstringAssociated EVM transaction hash
actionobjectAction details (see Action Structure below)

Action Structure

Multiple action types appear in this stream. The two system transfer types (SystemSpotSendAction and SystemSendAssetAction) share these common fields:

FieldTypeDescription
typestringAction type; see System Transfer Types and Ledger Delta Types below
destinationstringDestination address for the token transfer
tokenintegerToken ID (numeric identifier for the specific token)
weiintegerTransfer amount in wei (smallest unit)

SystemSendAssetAction Additional Fields

SystemSendAssetAction events include three additional nullable fields not present on SystemSpotSendAction:

FieldTypeDescription
destinationDexOrSpotinteger|nullTarget DEX/spot index for the asset transfer (0 = default spot, null when not applicable)
fromSubAccountstring|nullSource sub-account address (null when not applicable)
sourceDexOrSpotinteger|nullSource DEX/spot index for the asset transfer (0 = default spot, null when not applicable)

Ledger Delta Action Types

The following action types also appear in the writer actions stream. They record state changes written atomically with an EVM transaction hash but carry a different field layout than the system transfer types above; destination, token, and wei do not apply. See the Events dataset for the full field definitions for each delta type.

Action TypeDescriptionKey Fields
internalTransferSystem-initiated internal asset movementusdc, user, destination, fee
vaultCreateCreation of a new managed investment vaultvault, usdc
vaultLeaderCommissionCommission payment to the vault leaderuser, usdc
cStakingTransferCross-chain staking deposit or withdrawal (e.g., bridging HYPE for staking)token, amount, isDeposit
accountActivationGasGas fee charged for activating a new accountamount, token
activateDexAbstractionActivates DEX abstraction and seeds the user's DEX sub-accountdex, token, amount

API Usage

gRPC Streaming
// Subscribe to writer actions
const request = {
subscribe: {
stream_type: 'WRITER_ACTIONS',
filters: {
user: { values: ['0x2000000000000000000000000000000000000001'] },
type: { values: ['SystemSpotSendAction', 'vaultCreate', 'cStakingTransfer'] }
}
}
};
JSON-RPC
# Get latest writer action blocks
curl -X POST https://your-endpoint.hype-mainnet.quiknode.pro/your-token/hypercore \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "hl_getLatestBlocks",
"params": {
"stream": "writer_actions",
"count": 10
},
"id": 1
}'
WebSocket
// Subscribe to writer actions with filters
ws.send(JSON.stringify({
method: 'hl_subscribe',
params: {
streamType: 'writer_actions',
filters: {
user: ['0x2000000000000000000000000000000000000001'],
type: ['SystemSpotSendAction', 'vaultCreate', 'cStakingTransfer']
}
}
}));

Example System Transfer Records

SystemSendAssetAction
{
"user": "0x6af3bccd77314d35d47317e1d1bc17df248c991f",
"nonce": 1184125,
"evm_tx_hash": "0x299c90b15e410587841ab057f84faafa4d076a26db53c34a35231fe7dc4361bf",
"action": {
"type": "SystemSendAssetAction",
"destination": "0x6043daf4fbd6bd60601d277312a0664551302e70",
"fromSubAccount": null,
"sourceDexOrSpot": 0,
"destinationDexOrSpot": 0,
"token": 0,
"wei": 1882600
}
}
SystemSpotSendAction - Token ID 299
{
"user": "0x200000000000000000000000000000000000012b",
"nonce": 1184153,
"evm_tx_hash": "0x172a41083c44c9568494fbec81d11292e192938674b861e410e4a7e965235c67",
"action": {
"type": "SystemSpotSendAction",
"destination": "0x46bbfef00cde256f834340c50286dd7b495ca418",
"token": 299,
"wei": 56697105031
}
}
SystemSpotSendAction - Token ID 268
{
"user": "0x200000000000000000000000000000000000010c",
"nonce": 1184131,
"evm_tx_hash": "0x350349ac511ce5c8b02964999538653a508b1ad770bc10e1921b563f0f67177c",
"action": {
"type": "SystemSpotSendAction",
"destination": "0x796bc4eb6cc934d3432d5d08c74f2d957f60e7bc",
"token": 268,
"wei": 427229100
}
}
SystemSpotSendAction - Token ID 0
{
"user": "0x2000000000000000000000000000000000000000",
"nonce": 1184132,
"evm_tx_hash": "0xba6756dc9cbd35cfe2deb90686271df9981c6442c7f85226ce0738d5494a4649",
"action": {
"type": "SystemSpotSendAction",
"destination": "0x6b9e773128f453f5c2c60935ee2de2cbc5390a24",
"token": 0,
"wei": 1738000000
}
}

Important Notes


  • System Operations: These are automated system-level operations, not user-initiated transfers
  • Multiple Action Types: In addition to SystemSpotSendAction and SystemSendAssetAction, ledger delta types such as internalTransfer, vaultCreate, vaultLeaderCommission, cStakingTransfer, accountActivationGas, and activateDexAbstraction can appear in this stream
  • Token IDs: Tokens are referenced by numeric IDs rather than symbol names (e.g., 0, 221, 269, 299) for the system transfer types
  • Wei Format: All amounts are in wei format (smallest denomination) as integers for the system transfer types
  • User Addresses: Often system addresses starting with 0x200000000000000000000000000000000000, but SystemSendAssetAction and ledger delta events can also have regular user addresses
  • EVM Integration: Each action has an associated EVM transaction hash for cross-system tracking

Token ID Reference

Common token IDs seen in system transfers:

  • Token ID 0 - Base token or ETH equivalent
  • Token ID 221 - System token (specific identity varies)
  • Token ID 269 - System token (specific identity varies)
  • Token ID 299 - System token (specific identity varies)

Note: Many token IDs appear in practice; the full mapping is available via the Hyperliquid spotMeta Info API endpoint.


  • Events - View balance changes and transfers that may trigger cross-environment moves
  • Blocks - See the raw HyperCore transactions that initiate these transfers
  • Trades - Monitor trading activity that may lead to asset movements
Share this doc