Byreal CLMM historical data as Parquet
Every Byreal CLMM instruction and event in Solana history, decoded with an Anchor IDL that we checked against real transactions. Trawl gives you 12 event tables and 35 instruction tables, with a column for each account, argument and field. Calls from other programs (CPI) are in the result too.
Updated
The preset
- Program
- REALQqNEomY6cQGZJUGwywTBD2UmDT32rZcNnfxQ5N2
- Preset
byreal-clmm- Tables
- 12 event tables and 35 instruction tables, and
part-*with the raw bytes of each match - Transactions
- Successful only. Failed transactions changed nothing on the chain, and they are about 16% of the output.
"include_failed": truekeeps them. - Price
- $4 for one recent epoch, $4.62 for one week of chain
- Sample
- Free, 315 KB
The price is the same for every program: you pay for the archive the scan reads, not for the rows. Pricing.
# ask for a price: a 402 with the quote, no payment yet curl -X POST https://trawl.run/scan \ -H 'Content-Type: application/json' \ -d '{"preset":"byreal-clmm","start_epoch":1058,"end_epoch":1058}' -- then, in DuckDB, on the files of the job SELECT slot, signature, pool_state, sender, token_account_0 FROM 'ev-swap_event-*.parquet' ORDER BY slot LIMIT 10;
Add "filter": {"accounts": ["<wallet>"]} to keep only the transactions
that touch one wallet. How a filter changes a preset.
Free sample
1,000 slots of epoch 1079, 6 November 2026, 13:41 to 13:45 UTC: every row the preset gives for them. 590 decoded instructions, 590 events and 0 raw rows, in 4 Parquet files. The zip also holds the IDL that decoded them, the schema, the provenance and a SHA-256 list. The samples of all presets cover the same slots, so they join on signature.
# check the zip, then each file in it
echo 'a62af9e25c8256cbc4c599652b4578126adfa77e9847363058b9529eb305ef64 trawl-sample-byreal-clmm-e1079.zip' | sha256sum -c
unzip trawl-sample-byreal-clmm-e1079.zip && cd trawl-sample-byreal-clmm-e1079
sha256sum -c SHA256SUMS
Slots 466,130,000 to 466,130,999. PROVENANCE.txt names the scan build and the SHA-256 of the IDL, which is the same as in the provenance of a paid job with this preset.
Event tables
One table for each event in the IDL. Each row also has log_index and the context columns. An event
that the program writes two ways gives one row.
ev-collect_personal_fee_eventposition_nft_mint base58 string, recipient_token_account_0 base58 string, recipient_token_account_1 base58 string, amount_0 u64, amount_1 u64ev-collect_protocol_fee_eventpool_state base58 string, recipient_token_account_0 base58 string, recipient_token_account_1 base58 string, amount_0 u64, amount_1 u64ev-config_change_eventindex u16, owner base58 string, protocol_fee_rate u32, trade_fee_rate u32, tick_spacing u16, fund_fee_rate u32, fund_owner base58 stringev-create_personal_position_eventpool_state base58 string, minter base58 string, nft_owner base58 string, tick_lower_index i32, tick_upper_index i32, liquidity decimal string, deposit_amount_0 u64, deposit_amount_1 u64, deposit_amount_0_transfer_fee u64, deposit_amount_1_transfer_fee u64ev-decrease_liquidity_eventposition_nft_mint base58 string, liquidity decimal string, decrease_amount_0 u64, decrease_amount_1 u64, fee_amount_0 u64, fee_amount_1 u64, reward_amounts JSON string, transfer_fee_0 u64, transfer_fee_1 u64ev-increase_liquidity_eventposition_nft_mint base58 string, liquidity decimal string, amount_0 u64, amount_1 u64, amount_0_transfer_fee u64, amount_1_transfer_fee u64ev-liquidity_calculate_eventpool_liquidity decimal string, pool_sqrt_price_x64 decimal string, pool_tick i32, calc_amount_0 u64, calc_amount_1 u64, trade_fee_owed_0 u64, trade_fee_owed_1 u64, transfer_fee_0 u64, transfer_fee_1 u64ev-liquidity_change_eventpool_state base58 string, tick i32, tick_lower i32, tick_upper i32, liquidity_before decimal string, liquidity_after decimal stringev-modify_amm_admin_group_eventfee_keeper base58 string, reward_config_manager base58 string, reward_claim_manager base58 string, pool_manager base58 string, emergency_manager base58 string, normal_manager base58 stringev-pool_created_eventtoken_mint_0 base58 string, token_mint_1 base58 string, tick_spacing u16, pool_state base58 string, sqrt_price_x64 decimal string, tick i32, token_vault_0 base58 string, token_vault_1 base58 stringev-swap_eventpool_state base58 string, sender base58 string, token_account_0 base58 string, token_account_1 base58 string, amount_0 u64, transfer_fee_0 u64, amount_1 u64, transfer_fee_1 u64, zero_for_one bool, sqrt_price_x64 decimal string, liquidity decimal string, tick i32ev-update_reward_infos_eventreward_growth_global_x64 JSON stringInstruction tables
One table for each instruction in the IDL: the named accounts, then the arguments. Each row also has the context
columns: slot, tx_index, signature, success, fee, program_id, ix_index, is_inner, inner_index, stack_height, accounts. What each one
holds.
ix-claim_offchain_rewardclaimer, authority, admin_group, pool_id, token_mint, claimer_token_account, reward_vault_token_account, reward_config, token_program, associated_token_programargs:
amount u64ix-close_positionnft_owner, position_nft_mint, position_nft_account, personal_position, system_program, token_programix-close_protocol_positionadmin_group, fee_keeper, protocol_position, system_programix-collect_fund_feeadmin_group, pool_state, token_vault_0, token_vault_1, vault_0_mint, vault_1_mint, recipient_token_account_0, recipient_token_account_1, token_program, token_program_2022, associated_token_programargs:
amount_0_requested u64, amount_1_requested u64ix-collect_protocol_feeadmin_group, pool_state, token_vault_0, token_vault_1, vault_0_mint, vault_1_mint, recipient_token_account_0, recipient_token_account_1, token_program, token_program_2022, associated_token_programargs:
amount_0_requested u64, amount_1_requested u64ix-collect_remaining_rewardsreward_funder, admin_group, funder_token_account, pool_state, reward_token_vault, reward_vault_mint, token_program, token_program_2022, memo_programargs:
reward_index u8ix-create_amm_configowner, admin_group, amm_config, system_programargs:
index u16, tick_spacing u16, trade_fee_rate u32, protocol_fee_rate u32, fund_fee_rate u32ix-create_operation_accountowner, admin_group, operation_state, system_programix-create_poolpool_creator, pool_manager, admin_group, amm_config, pool_state, offchain_reward_config, token_mint_0, token_mint_1, token_vault_0, token_vault_1, observation_state, tick_array_bitmap, token_program_0, token_program_1, system_program, rentargs:
sqrt_price_x64 decimal string, open_time u64ix-create_pool_decay_feepool_creator, pool_manager, admin_group, amm_config, pool_state, offchain_reward_config, token_mint_0, token_mint_1, token_vault_0, token_vault_1, observation_state, tick_array_bitmap, token_program_0, token_program_1, system_program, rentargs:
params JSON stringix-create_support_mint_associatedowner, admin_group, token_mint, support_mint_associated, system_programix-decrease_liquiditynft_owner, nft_account, personal_position, pool_state, protocol_position, token_vault_0, token_vault_1, tick_array_lower, tick_array_upper, recipient_token_account_0, recipient_token_account_1, token_programargs:
liquidity decimal string, amount_0_min u64, amount_1_min u64ix-decrease_liquidity_v2nft_owner, nft_account, personal_position, pool_state, protocol_position, token_vault_0, token_vault_1, tick_array_lower, tick_array_upper, recipient_token_account_0, recipient_token_account_1, token_program, token_program_2022, memo_program, vault_0_mint, vault_1_mintargs:
liquidity decimal string, amount_0_min u64, amount_1_min u64ix-deposit_offchain_rewardpayer, authority, admin_group, pool_id, token_mint, payer_token_account, reward_vault_token_account, reward_config, token_program, associated_token_program, system_programargs:
amount u64ix-increase_liquiditynft_owner, nft_account, pool_state, protocol_position, personal_position, tick_array_lower, tick_array_upper, token_account_0, token_account_1, token_vault_0, token_vault_1, token_programargs:
liquidity decimal string, amount_0_max u64, amount_1_max u64ix-increase_liquidity_v2nft_owner, nft_account, pool_state, protocol_position, personal_position, tick_array_lower, tick_array_upper, token_account_0, token_account_1, token_vault_0, token_vault_1, token_program, token_program_2022, vault_0_mint, vault_1_mintargs:
liquidity decimal string, amount_0_max u64, amount_1_max u64, base_flag boolix-init_amm_admin_grouppayer, admin_group, system_programargs:
params JSON stringix-initialize_rewardreward_funder, admin_group, funder_token_account, amm_config, pool_state, operation_state, reward_token_mint, reward_token_vault, reward_token_program, system_program, rentargs:
param JSON stringix-open_positionpayer, position_nft_owner, position_nft_mint, position_nft_account, metadata_account, pool_state, protocol_position, tick_array_lower, tick_array_upper, personal_position, token_account_0, token_account_1, token_vault_0, token_vault_1, rent, system_program, token_program, associated_token_program, metadata_programargs:
tick_lower_index i32, tick_upper_index i32, tick_array_lower_start_index i32, tick_array_upper_start_index i32, liquidity decimal string, amount_0_max u64, amount_1_max u64ix-open_position_v2payer, position_nft_owner, position_nft_mint, position_nft_account, metadata_account, pool_state, protocol_position, tick_array_lower, tick_array_upper, personal_position, token_account_0, token_account_1, token_vault_0, token_vault_1, rent, system_program, token_program, associated_token_program, metadata_program, token_program_2022, vault_0_mint, vault_1_mintargs:
tick_lower_index i32, tick_upper_index i32, tick_array_lower_start_index i32, tick_array_upper_start_index i32, liquidity decimal string, amount_0_max u64, amount_1_max u64, with_metadata bool, base_flag boolix-open_position_with_token22_nftpayer, position_nft_owner, position_nft_mint, position_nft_account, pool_state, protocol_position, tick_array_lower, tick_array_upper, personal_position, token_account_0, token_account_1, token_vault_0, token_vault_1, rent, system_program, token_program, associated_token_program, token_program_2022, vault_0_mint, vault_1_mintargs:
tick_lower_index i32, tick_upper_index i32, tick_array_lower_start_index i32, tick_array_upper_start_index i32, liquidity decimal string, amount_0_max u64, amount_1_max u64, with_metadata bool, base_flag boolix-set_pool_quote_flagauthority, admin_group, pool_stateargs:
token1_as_quote boolix-set_pool_trade_fee_rateauthority, admin_group, pool_stateargs:
trade_fee_rate u32ix-set_reward_paramsauthority, admin_group, amm_config, pool_state, operation_state, token_program, token_program_2022args:
reward_index u8, emissions_per_second_x64 decimal string, open_time u64, end_time u64ix-set_swap_dynamic_fee_paramsauthority, admin_group, pool_stateargs:
params JSON stringix-swappayer, amm_config, pool_state, input_token_account, output_token_account, input_vault, output_vault, observation_state, token_program, tick_arrayargs:
amount u64, other_amount_threshold u64, sqrt_price_limit_x64 decimal string, is_base_input boolix-swap_v2payer, amm_config, pool_state, input_token_account, output_token_account, input_vault, output_vault, observation_state, token_program, token_program_2022, memo_program, input_vault_mint, output_vault_mintargs:
amount u64, other_amount_threshold u64, sqrt_price_limit_x64 decimal string, is_base_input boolix-swap_v3_dynpayer, amm_config, pool_state, input_token_account, output_token_account, input_vault, output_vault, observation_state, token_program, token_program_2022, memo_program, input_vault_mint, output_vault_mintargs:
amount u64, other_amount_threshold u64, sqrt_price_limit_x64 decimal string, is_base_input boolix-transfer_reward_ownerauthority, admin_group, pool_stateargs:
new_owner base58 stringix-update_amm_admin_grouppayer, admin_groupargs:
params JSON stringix-update_amm_configowner, admin_group, amm_configargs:
param u8, value u32ix-update_operation_accountowner, admin_group, operation_state, system_programargs:
param u8, keys JSON stringix-update_pool_statusauthority, admin_group, pool_stateargs:
status u8ix-update_reward_infospool_stateix-withdraw_offchain_rewardauthority, admin_group, pool_id, token_mint, receiver_token_account, reward_vault_token_account, reward_config, token_program, associated_token_programargs:
amount u64Files are split by epoch and at 2 GB: eEEEE-ix-<name>-tNN-SSSS.parquet. Large integers stay
exact: u128 is a decimal string. All decoded types.
Get Byreal CLMM data for your range.
Select an epoch range and get a firm price. You pay only when you send the job.