Skip to main content
Schema: solana.defi Table: ez_lending_liquidations Type: Base Table

Description

This table captures liquidation events across Solana DeFi lending protocols including Kamino and MarginFi. Each row represents a single liquidation transaction where underwater loans are forcibly closed by liquidators who repay the debt and receive collateral at a discount. The data includes enriched transaction details with USD pricing for both debt and collateral tokens, supporting comprehensive analytics on protocol risk management, market stress events, and liquidation ecosystem dynamics.

Key Use Cases

  • Track liquidation activity and protocol risk management effectiveness
  • Analyze market stress events and borrower default patterns
  • Monitor liquidator behavior and profitability in risk management
  • Study collateral safety and asset-specific liquidation risks
  • Calculate liquidation penalties and protocol protection mechanisms
  • Support risk modeling and collateral requirement optimization

Important Relationships

  • Related to defi.ez_lending_borrows for analyzing loans that resulted in liquidation
  • Connected to market volatility events that trigger liquidation cascades
  • Links to price.ez_prices_hourly for both debt and collateral token valuations
  • Joins with core.fact_transactions for complete transaction context
  • Related to protocol-specific liquidation parameters and thresholds

Commonly-used Fields

  • block_timestamp: For time-series analysis and liquidation timing during market events
  • platform, protocol: For protocol-specific liquidation mechanism analysis
  • liquidator, borrower: For liquidation ecosystem participant behavior analysis
  • debt_token, collateral_token: For asset-specific liquidation risk assessment
  • debt_token_symbol, collateral_token_symbol: For human-readable asset identification
  • amount, amount_usd: For liquidation volume analysis and market impact assessment
  • protocol_market: For market-specific liquidation thresholds and risk parameters

Columns

Column NameData TypeDescription
PLATFORMTEXTThe name of the lending platform or protocol where the transaction occurred. This identifies the specific DeFi lending service provider.
Data type: STRING Business context: Used to categorize lending activity by platform, analyze platform-specific metrics, and compare lending volumes across different protocols. Analytics use cases: Platform performance analysis, market share tracking, and cross-platform lending behavior studies. Example: ‘kamino’, ‘marginfi v2’ | | PROTOCOL | TEXT | The core protocol name that powers the lending platform. This provides a standardized identifier for the underlying lending technology. Data type: STRING Business context: Used to group related platforms by their underlying protocol technology, enabling analysis of protocol adoption and usage. Analytics use cases: Protocol ecosystem analysis, technology adoption tracking, and protocol performance comparisons. Example: ‘kamino’, ‘marginfi’ | | VERSION | TEXT | The version identifier of the lending protocol being used. This helps track different iterations and upgrades of lending protocols. Data type: STRING Business context: Used to analyze adoption of protocol upgrades, compare performance across versions, and track protocol evolution. Analytics use cases: Version adoption analysis, upgrade impact assessment, and historical protocol development tracking. Example: ‘v1’, ‘v2’ | | BLOCK_TIMESTAMP | TIMESTAMP_NTZ | The timestamp (UTC) at which the block was produced on the Solana blockchain. This field is recorded as a TIMESTAMP data type and represents the precise moment the block was finalized and added to the chain. It is essential for time-series analysis, block production monitoring, and aligning transaction and event data to specific points in time. Used extensively for analytics involving block intervals, network activity trends, and historical lookups. Format: YYYY-MM-DD HH:MI:SS (UTC). | | BLOCK_ID | NUMBER | A unique identifier for the block in which this transaction was included on the Solana blockchain. Typically a sequential integer or hash, depending on the data source. Used to group transactions by block and analyze block-level activity. Example:
  • 123456789
Business Context:
  • Supports block-level analytics, such as block production rate and transaction throughput.
  • Useful for tracing transaction inclusion and block explorer integrations.
Relationships:
  • All transactions with the same ‘block_id’ share the same ‘block_timestamp’. | | TX_ID | TEXT | The unique transaction signature (hash) for each transaction on the Solana blockchain. This field is a base58-encoded string, typically 88 characters in length, and serves as the primary identifier for transactions across all Solana data models. Used to join transaction data with related tables (blocks, events, transfers, logs, decoded instructions) and to trace the full lifecycle and effects of a transaction. Essential for transaction-level analytics, debugging, and cross-referencing with block explorers or Solana APIs.
Example:
  • 5Nf6Q2k6v1Qw2k3v4Qw5Nf6Q2k6v1Qw2k3v4Qw5Nf6Q2k6v1Qw2k3v4Qw5Nf6Q2k6v1Qw2k3v4Qw
Business Context:
  • Enables precise tracking, auditing, and attribution of on-chain activity
  • Used for linking transactions to events, logs, and protocol actions
  • Critical for compliance, monitoring, and analytics workflows | | INDEX | NUMBER | The position of the transfer event within the list of events for a given Solana transaction. Used to order and reference transfers within a transaction. Indexing starts at 0 for the first event.
Data type: Integer Example:
  • 0 (first transfer in the transaction)
  • 2 (third transfer in the transaction)
Business Context:
  • Enables reconstruction of transfer order and analysis of intra-transaction asset movement.
  • Used to join, filter, or segment data for protocol analytics, error tracing, and event sequencing. | | INNER_INDEX | NUMBER | The position of the inner instruction or event within the list of inner instructions for a given Solana transaction. Used to order and reference nested (CPI) instructions. Indexing starts at 0 for the first inner instruction.
Example:
  • 0
  • 2
Business Context:
  • Enables precise identification and ordering of nested program calls (Cross-Program Invocations) within a transaction.
  • Critical for analyzing composability, protocol integrations, and the full execution path of complex transactions. | | PROGRAM_ID | TEXT | The unique public key (base58-encoded address) of a Solana program. This field identifies the on-chain program (smart contract) responsible for processing instructions, emitting events, or managing accounts. Used throughout Solana analytics models—including events, transactions, IDLs, and program activity tables—to join, filter, and analyze program-level data.
Example:
  • “4Nd1mY…”
  • “TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA”
Business Context:
  • Used as a join key for program activity, deployments, events, and interface changes.
  • Supports segmentation of activity by protocol, DEX, NFT marketplace, or other on-chain application. | | EVENT_TYPE | TEXT | A string categorizing the type of event or instruction, such as ‘transfer’, ‘mint’, ‘burn’, or protocol-specific actions.
Example:
  • ‘transfer’
  • ‘mint’
  • ‘burn’
Business Context:
  • Enables segmentation and filtering of on-chain activity for analytics and dashboards.
  • Used to group and analyze protocol-specific actions and user behaviors.
Relationships:
  • May be derived from decoded instruction data or protocol-specific logic. | | LIQUIDATOR | TEXT | The wallet address of the user or bot that initiated a liquidation event. This is the party that repays the debt and receives the collateral at a discount.
Data type: STRING (base58 Solana address) Business context: Used to track liquidation activity, analyze liquidator behavior, and monitor risk management in lending protocols. Analytics use cases: Liquidation analysis, risk assessment, liquidator profitability studies, and protocol health monitoring. Example: ‘4Nd1mYw4r…’ | | BORROWER | TEXT | The wallet address of the user who is borrowing assets from the lending protocol. This is the recipient of the borrowed funds who becomes responsible for repayment. Data type: STRING (base58 Solana address) Business context: Used to track borrowing behavior, analyze user borrowing patterns, and identify active borrowers in the lending ecosystem. Analytics use cases: Borrower behavior analysis, loan tracking, credit risk assessment, and user segmentation. Example: ‘4Nd1mYw4r…’ | | COLLATERAL_TOKEN | TEXT | The token address of the asset that was used as collateral and is being seized during a liquidation event. This represents the asset the borrower loses to cover their debt. Data type: STRING (base58 Solana address) Business context: Used to track which assets are commonly used as collateral and which are frequently liquidated, helping assess collateral risk. Analytics use cases: Collateral analysis, liquidation risk assessment, and asset safety evaluation in lending protocols. Example: ‘So11111111111111111111111111111111111111112’ (SOL) | | COLLATERAL_TOKEN_SYMBOL | TEXT | The human-readable symbol of the collateral token being seized during liquidation. This provides an easy-to-understand identifier for the collateral asset. Data type: STRING Business context: Used for reporting and analytics to make collateral assets easily identifiable without needing to decode token addresses. Analytics use cases: Collateral reporting, risk analysis dashboards, and user-friendly liquidation analytics. Example: ‘SOL’, ‘ETH’, ‘BTC’ | | COLLATERAL_TOKEN_IS_VERIFIED | BOOLEAN | A flag indicating if the asset has been verified by the Flipside team. | | DEBT_TOKEN | TEXT | The token address of the asset that was borrowed and is being repaid during a liquidation event. This represents the debt that the liquidator is covering. Data type: STRING (base58 Solana address) Business context: Used to track which assets are commonly borrowed and defaulted on, helping assess lending risk by asset type. Analytics use cases: Debt analysis, default risk assessment, and borrowing pattern analysis in lending protocols. Example: ‘EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v’ (USDC) | | DEBT_TOKEN_SYMBOL | TEXT | The human-readable symbol of the debt token being repaid during liquidation. This provides an easy-to-understand identifier for the debt asset. Data type: STRING Business context: Used for reporting and analytics to make debt assets easily identifiable without needing to decode token addresses. Analytics use cases: Debt reporting, risk analysis dashboards, and user-friendly liquidation analytics. Example: ‘USDC’, ‘USDT’, ‘SOL’ | | DEBT_TOKEN_IS_VERIFIED | BOOLEAN | A flag indicating if the asset has been verified by the Flipside team. | | PROTOCOL_MARKET | TEXT | The protocol-specific token or market identifier that represents the lending pool or reserve. This is typically a wrapped version of the underlying asset used by the protocol for accounting. Data type: STRING (base58 Solana address) Business context: Used to identify specific lending markets within protocols, track market-specific metrics, and analyze asset utilization rates. Analytics use cases: Market performance analysis, asset utilization tracking, and protocol-specific lending pool analytics. Example: ‘cETH’, ‘aUSDC’, or protocol-specific market tokens | | AMOUNT_RAW | NUMBER | Unadjusted amount of tokens as it appears on-chain before decimal precision adjustments are applied. This preserves the exact on-chain representation of the token amount for precise calculations and verification. Data type: NUMBER Business context: Used for precise calculations, audit trails, and verification against on-chain data. Essential for maintaining data integrity and performing exact mathematical operations without rounding errors. Analytics use cases: Precision calculations, data validation, audit verification, and exact token accounting for high-value transactions. Example: For 1.5 USDC (6 decimals), amount_raw would be 1500000; for 2.0 SOL (9 decimals), amount_raw would be 2000000000 | | AMOUNT | FLOAT | The amount of the asset transferred in the event. For native SOL, this is decimal adjusted and is not in Lamports. For SPL tokens, this is decimal adjusted according to the token’s mint. Represents the value moved from sender to recipient in a single transfer event. Data type: Numeric (integer for lamports, decimal for tokens) Example:
  • USDC: 50.00 (represents 50 USDC tokens)
Business Context:
  • Used to analyze transaction volumes, user activity, and protocol flows.
  • Supports aggregation of asset movement for analytics and reporting. | | AMOUNT_USD | FLOAT | The USD value of the transferred amount, calculated using the token price at the time of the transfer. This field enables value-based analytics and comparisons across different tokens.
Data type: Numeric (decimal) Example:
  • 123.45 (represents $123.45 USD)
Business Context:
  • Used for tracking transaction volumes, wallet activity, and payment flows in USD terms.
  • Supports analytics on large value transfers, protocol revenue, and user behavior. | | EZ_LENDING_LIQUIDATIONS_ID | TEXT | A unique, stable identifier for each record in this table. The primary key (PK) ensures that every row is uniquely identifiable and supports efficient joins, lookups, and data integrity across models. The PK may be a natural key (such as a blockchain transaction hash) or a surrogate key generated from one or more fields, depending on the table’s structure and requirements. | | INSERTED_TIMESTAMP | TIMESTAMP_NTZ | | | MODIFIED_TIMESTAMP | TIMESTAMP_NTZ | |