Raydium CLMM
This document describes the output structure for the Raydium CLMM (Concentrated Liquidity Market Maker) decoder functions. The decoder handles five main event types: CREATE_POOL, SWAP, INCREASE_LIQUIDITY_V2, DECREASE_LIQUIDITY_V2, and OPEN_POSITION_TOKEN_22_NFT.
Common Properties
All decoded events include the following base properties from BaseTransactionRecord
:
uuid
bigint
string
Unique identifier for the transaction record
instructionPath
string
string
Path to the instruction within the transaction
parentProgramId
string | null
string | null
ID of the parent program if applicable
txSignature
string
string
Transaction signature
blockTime
number
number
Block timestamp
programId
string
string
Raydium CLMM program ID
eventType
string
string
Type of event (CREATE_POOL, SWAP, INCREASE_LIQUIDITY_V2, DECREASE_LIQUIDITY_V2, OPEN_POSITION_TOKEN_22_NFT)
decoderType
DecoderType
string
Decoder type identifier
blockHeight
number
number
Block height
slot
number
number
Blockchain slot number
txFee
number
number
Transaction fee in lamports
txFeeUiAmount
PreciseDecimal
string
UI-formatted transaction fee
CREATE_POOL Event
Concentrated liquidity pool creation event.
mint
string
string
Pool mint address
token0Mint
string
string
Token0 mint address
token0Vault
string
string
Token0 vault address
token1Vault
string
string
Token1 vault address
sqrtPriceX64
bigint
string
Square root price in X64 format
openTime
string
string
Pool opening timestamp
SWAP Event
Token swap event in concentrated liquidity pool.
amountIn
bigint
string
Input token amount
amountInUiAmount
PreciseDecimal
string
UI-formatted input amount
amountOut
bigint
string
Output token amount
amountOutUiAmount
PreciseDecimal
string
UI-formatted output amount
otherAmountThreshold
bigint
string
Amount threshold for the other token
otherAmountThresholdUiAmount
PreciseDecimal
string
UI-formatted amount threshold
sqrtPriceLimitX64
bigint
string
Square root price limit in X64 format
isBaseInput
boolean
boolean
Whether the base token is the input
inputMint
string
string
Input token mint address
outputMint
string
string
Output token mint address
inputTokenAccount
string
string
Input token account address
outputTokenAccount
string
string
Output token account address
inputVault
string
string
Input vault address
outputVault
string
string
Output vault address
pricePre
PreciseDecimal
string
Price before swap
pricePost
PreciseDecimal
string
Price after swap
slippageTolerance
number
number
Slippage tolerance percentage
slippagePercentage
number
number
Actual slippage percentage
slippageAmount
bigint
string
Slippage amount
slippageAmountUiAmount
PreciseDecimal
string
UI-formatted slippage amount
inputTokenPreBalance
bigint
string
Input token balance before swap
inputTokenPreBalanceUiAmount
PreciseDecimal
string
UI-formatted input token pre-balance
inputTokenPostBalance
bigint
string
Input token balance after swap
inputTokenPostBalanceUiAmount
PreciseDecimal
string
UI-formatted input token post-balance
outputTokenPreBalance
bigint
string
Output token balance before swap
outputTokenPreBalanceUiAmount
PreciseDecimal
string
UI-formatted output token pre-balance
outputTokenPostBalance
bigint
string
Output token balance after swap
outputTokenPostBalanceUiAmount
PreciseDecimal
string
UI-formatted output token post-balance
inputVaultPreBalance
bigint
string
Input vault balance before swap
inputVaultPreBalanceUiAmount
PreciseDecimal
string
UI-formatted input vault pre-balance
inputVaultPostBalance
bigint
string
Input vault balance after swap
inputVaultPostBalanceUiAmount
PreciseDecimal
string
UI-formatted input vault post-balance
outputVaultPreBalance
bigint
string
Output vault balance before swap
outputVaultPreBalanceUiAmount
PreciseDecimal
string
UI-formatted output vault pre-balance
outputVaultPostBalance
bigint
string
Output vault balance after swap
outputVaultPostBalanceUiAmount
PreciseDecimal
string
UI-formatted output vault post-balance
INCREASE_LIQUIDITY_V2 Event
Liquidity addition event for existing positions.
mint0
string
string
Token0 mint address
mint1
string
string
Token1 mint address
amountDeposited0
bigint
string
Amount of token0 deposited
amountDeposited0UiAmount
PreciseDecimal
string
UI-formatted token0 deposit amount
amountDeposited1
bigint
string
Amount of token1 deposited
amountDeposited1UiAmount
PreciseDecimal
string
UI-formatted token1 deposit amount
liquidity
bigint
string
Liquidity amount added
amount0Max
bigint
string
Maximum token0 amount
amount0MaxUiAmount
PreciseDecimal
string
UI-formatted max token0 amount
amount1Max
bigint
string
Maximum token1 amount
amount1MaxUiAmount
PreciseDecimal
string
UI-formatted max token1 amount
postTokenBalance0
bigint
string
Token0 balance after deposit
postTokenBalance0UiAmount
PreciseDecimal
string
UI-formatted token0 post-balance
postTokenBalance1
bigint
string
Token1 balance after deposit
postTokenBalance1UiAmount
PreciseDecimal
string
UI-formatted token1 post-balance
preTokenBalance0
bigint
string
Token0 balance before deposit
preTokenBalance0UiAmount
PreciseDecimal
string
UI-formatted token0 pre-balance
preTokenBalance1
bigint
string
Token1 balance before deposit
preTokenBalance1UiAmount
PreciseDecimal
string
UI-formatted token1 pre-balance
tokenVault0PostBalance
bigint
string
Vault0 balance after deposit
tokenVault0PostBalanceUiAmount
PreciseDecimal
string
UI-formatted vault0 post-balance
tokenVault1PostBalance
bigint
string
Vault1 balance after deposit
tokenVault1PostBalanceUiAmount
PreciseDecimal
string
UI-formatted vault1 post-balance
tokenVault0PreBalance
bigint
string
Vault0 balance before deposit
tokenVault0PreBalanceUiAmount
PreciseDecimal
string
UI-formatted vault0 pre-balance
tokenVault1PreBalance
bigint
string
Vault1 balance before deposit
tokenVault1PreBalanceUiAmount
PreciseDecimal
string
UI-formatted vault1 pre-balance
protocolPosition
string
string
Protocol position account
personalPosition
string
string
Personal position account
tickArrayLower
string
string
Lower tick array account
tickArrayUpper
string
string
Upper tick array account
tokenAccount0
string
string
Token0 account address
tokenAccount1
string
string
Token1 account address
tokenVault0
string
string
Token0 vault address
tokenVault1
string
string
Token1 vault address
DECREASE_LIQUIDITY_V2 Event
Liquidity removal event from existing positions.
mint0
string
string
Token0 mint address
mint1
string
string
Token1 mint address
protocolPosition
string
string
Protocol position account
personalPosition
string
string
Personal position account
tickArrayLower
string
string
Lower tick array account
tickArrayUpper
string
string
Upper tick array account
recipientTokenAccount0
string
string
Recipient token0 account
recipientTokenAccount1
string
string
Recipient token1 account
tokenVault0
string
string
Token0 vault address
tokenVault1
string
string
Token1 vault address
liquidity
bigint
string
Liquidity amount removed
amount0Min
bigint
string
Minimum token0 amount
amount0MinUiAmount
PreciseDecimal
string
UI-formatted min token0 amount
amount1Min
bigint
string
Minimum token1 amount
amount1MinUiAmount
PreciseDecimal
string
UI-formatted min token1 amount
amountWithdrawn0
bigint
string
Amount of token0 withdrawn
amountWithdrawn0UiAmount
PreciseDecimal
string
UI-formatted token0 withdrawal amount
amountWithdrawn1
bigint
string
Amount of token1 withdrawn
amountWithdrawn1UiAmount
PreciseDecimal
string
UI-formatted token1 withdrawal amount
postTokenBalance0
bigint
string
Token0 balance after withdrawal
postTokenBalance0UiAmount
PreciseDecimal
string
UI-formatted token0 post-balance
postTokenBalance1
bigint
string
Token1 balance after withdrawal
postTokenBalance1UiAmount
PreciseDecimal
string
UI-formatted token1 post-balance
preTokenBalance0
bigint
string
Token0 balance before withdrawal
preTokenBalance0UiAmount
PreciseDecimal
string
UI-formatted token0 pre-balance
preTokenBalance1
bigint
string
Token1 balance before withdrawal
preTokenBalance1UiAmount
PreciseDecimal
string
UI-formatted token1 pre-balance
tokenVault0PostBalance
bigint
string
Vault0 balance after withdrawal
tokenVault0PostBalanceUiAmount
PreciseDecimal
string
UI-formatted vault0 post-balance
tokenVault1PostBalance
bigint
string
Vault1 balance after withdrawal
tokenVault1PostBalanceUiAmount
PreciseDecimal
string
UI-formatted vault1 post-balance
tokenVault0PreBalance
bigint
string
Vault0 balance before withdrawal
tokenVault0PreBalanceUiAmount
PreciseDecimal
string
UI-formatted vault0 pre-balance
tokenVault1PreBalance
bigint
string
Vault1 balance before withdrawal
tokenVault1PreBalanceUiAmount
PreciseDecimal
string
UI-formatted vault1 pre-balance
OPEN_POSITION_TOKEN_22_NFT Event
New position opening event with Token-22 NFT.
positionNftAccount
string
string
Position NFT account address
tokenAccount0
string
string
Token0 account address
tokenAccount1
string
string
Token1 account address
tokenVault0
string
string
Token0 vault address
tokenVault1
string
string
Token1 vault address
token0Balance
bigint
string
Token0 balance
token1Balance
bigint
string
Token1 balance
token0BalanceUiAmount
PreciseDecimal
string
UI-formatted token0 balance
token1BalanceUiAmount
PreciseDecimal
string
UI-formatted token1 balance
tickLowerIndex
number
number
Lower tick index for the position
tickUpperIndex
number
number
Upper tick index for the position
tickArrayLowerStartIndex
number
number
Lower tick array start index
tickArrayUpperStartIndex
number
number
Upper tick array start index
liquidity
bigint
string
Initial liquidity amount
amount0Max
bigint
string
Maximum token0 amount
amount1Max
bigint
string
Maximum token1 amount
amount0MaxUiAmount
PreciseDecimal
string
UI-formatted max token0 amount
amount1MaxUiAmount
PreciseDecimal
string
UI-formatted max token1 amount
mint0
string
string
Token0 mint address
mint1
string
string
Token1 mint address
Data Types
bigint
: Large integer values for token amounts and liquiditystring
: Text values for addresses and identifiersnumber
: Numeric values for tick indices and timestampsboolean
: True/false values for input type indicatorsPreciseDecimal
: High-precision decimal representation for UI displayDecoderType
: Enum indicating the decoder type (RAYDIUM_CLMM)
Usage
The decoder automatically determines the event type and returns the appropriate structure. All monetary values are provided in both raw (bigint
) and UI-formatted (PreciseDecimal
) versions for flexibility in different use cases. The CLMM decoder handles concentrated liquidity positions with tick-based pricing and NFT-based position management.
Last updated