Skip to main content
Schema: near.core Table: ez_actions Type: Base Table

Description

This table provides a comprehensive, action-level view of all blockchain activities on NEAR Protocol, combining transaction and receipt data to create detailed action records. Each record represents a specific action within a transaction, including function calls, token transfers, account creation, and other blockchain operations. The table normalizes complex receipt structures into standardized action records, enabling granular analysis of smart contract interactions, user behaviors, and protocol activities across the NEAR ecosystem.

Key Use Cases

  • Detailed smart contract interaction analysis and function call tracking
  • Action-level user behavior analysis and pattern recognition
  • Gas consumption analysis at the action level for optimization
  • Cross-contract call tracking and dependency analysis
  • Protocol-specific action monitoring and analytics
  • DeFi protocol interaction analysis and volume tracking
  • Account creation and management pattern analysis

Important Relationships

  • Combines data from core.fact_transactions and core.fact_receipts for comprehensive action analysis
  • Provides detailed context for core.fact_token_transfers and core.ez_token_transfers
  • Supports defi.ez_dex_swaps with detailed swap action analysis
  • Enables defi.ez_bridge_activity with cross-chain action tracking
  • Powers defi.ez_intents with intent-based action analysis
  • Supports stats.ez_core_metrics_hourly with action-level metrics

Commonly-used Fields

  • action_name: Essential for categorizing and filtering specific action types
  • block_timestamp: Primary field for time-series analysis and trend detection
  • tx_hash and receipt_id: Critical for linking to transaction and receipt context
  • action_data: Important for detailed action parameter analysis
  • receipt_signer_id and receipt_receiver_id: Essential for user and contract analysis
  • receipt_gas_burnt: Important for gas consumption analysis and optimization
  • action_index: Critical for action ordering within transactions

Columns

Column NameData TypeDescription
BLOCK_IDNUMBERThe height of the chain this block corresponds with.
BLOCK_TIMESTAMPTIMESTAMP_NTZThe date and time at which the block began.
TX_HASHTEXTUnique identifier (hash) of this transaction.
TX_SUCCEEDEDBOOLEANBoolean indicating if the transaction was successful (rarely used, most tx succeed, it is receipts that can fail). This field tracks the overall success status of the transaction. While most transactions succeed at the transaction level, individual receipts within the transaction can still fail. This field is less commonly used for filtering since receipt-level success tracking provides more granular information about specific operations within the transaction.
TX_RECEIVERTEXTThe transaction receiver, similar to an origin_to in EVM, but can be a contract OR if a relayer is used, the receiver is the user. This field identifies the account that is the intended recipient of the transaction. In direct transactions, this is typically the contract or account being called. In relay transactions, this represents the end user account that the relayer is acting on behalf of.
TX_SIGNERTEXTAccount that originally signed the transaction, can be a relayer. This field identifies the account that cryptographically signed the transaction, authorizing it to be executed on the blockchain. In relay transactions, this may be a relayer account rather than the end user, while in direct transactions, it represents the actual user or contract initiating the transaction.
TX_GAS_USEDNUMBERGas used for the transaction. This field represents the amount of computational resources consumed to execute the transaction. Gas is measured in units, and the actual cost is calculated by multiplying gas used by the gas price. In raw number format, to adjust divide by POW(10,12). Higher gas usage indicates more complex operations or larger computational requirements.
TX_FEENUMBER
RECEIPT_IDTEXTThe identifying hash for a receipt.
RECEIPT_PREDECESSOR_IDTEXTAccount that called the relevant receipt (often the same as tx_signer, but can be system as well). This field identifies the account that directly invoked the receipt being processed. In simple transactions, this is typically the same as the transaction signer. However, in cross-contract calls or system operations, this may be a different account or the system account. This is crucial for understanding the call chain and access control in NEAR’s execution model.
RECEIPT_RECEIVER_IDTEXTAccount reacting to the receipt from predecessor_id, can be relay, a contract, or a user of a relay, etc. This field identifies the account that is processing the receipt and executing the associated action. In most cases, this is a smart contract that is being called, but it can also be a user account in relay transactions or the system account for certain operations. This differs from tx_receiver and is specific to the receipt being processed.
RECEIPT_SIGNER_IDTEXTSigner of the receipt, often same as tx_signer, sometimes system in the case of systemic gas refunds. This field identifies the account that has the authority to execute the receipt. In most cases, this is the same as the transaction signer, but in system operations like gas refunds, this may be the system account. The signer is the account that originally signed the transaction that began the blockchain activity, which may or may not include cross-contract calls.
RECEIPT_SUCCEEDEDBOOLEANBoolean indicating whether the receipt was successfully processed. This field tracks the execution status of the receipt, which is crucial for understanding transaction outcomes. While most transactions succeed, individual receipts within a transaction can fail due to various reasons such as insufficient gas, contract errors, or invalid parameters. This field is essential for filtering successful operations and analyzing failure patterns.
RECEIPT_GAS_BURNTNUMBERGas burned for the receipt action. This field represents the amount of computational resources consumed specifically for the receipt being processed. Gas burning is the mechanism by which NEAR charges for computational work, and this field tracks the exact amount burned for this particular receipt action. In raw number format with 16 decimal places, to adjust divide by POW(10,16) or multiply by 1e-16.
RECEIPT_STATUS_VALUEOBJECTStatus information (object) for this transaction.
ACTION_INDEXNUMBERIndex of the action within the transaction. This field indicates the position of the action in the sequence of actions within the transaction. Actions are processed in order, and this index helps maintain the chronological sequence and relationship between multiple actions in a single transaction. The first action has index 0, the second has index 1, and so on.
IS_DELEGATEDBOOLEANWhether the action was delegated, typically a FunctionCall acting on another account on its behalf, often where receipt predecessor_id is not the receipt signer or receiver. This field indicates when an action is being executed by one account on behalf of another, which is common in relay transactions, cross-contract calls, or when using access keys with limited permissions. Note: Actions with action_name = ‘Delegate’ themselves are marked as FALSE, while the actions within them are marked as TRUE.
ACTION_NAMETEXTName of the action performed. Most often one of: Transfer, FunctionCall, Delegate, AddKey, CreateAccount. Rarely: DeleteKey, DeleteAccount, Stake, DeployContract. This field identifies the specific type of action that was executed within the transaction. FunctionCall actions are the most common for smart contract interactions, while Transfer actions handle token movements, and other actions manage account permissions and creation.
ACTION_DATAOBJECTJSON object containing argument data for the receipt action. This field stores the parameters and arguments passed to the action, particularly for FunctionCall actions. The data structure varies by action type - for FunctionCall actions, it may include method names, arguments, and attached deposits. For Transfer actions, it contains the amount being transferred. This field enables detailed analysis of what specific operations were performed within each action.
ACTION_GAS_PRICENUMBERGas price parsed from the receipt_actions JSON object, specifically from the nested path receipt:Action:gas_price. Used to determine the cost per unit of gas for the specific action.
_PARTITION_BY_BLOCK_NUMBERNUMBERBlock number grouping for ingestion partition
ACTIONS_IDTEXTThe action_id is a concatenation of receipt_id and the index of the action within a receipt. This is unique for each record. The primary hash depends on the source of the action, as both a transaction and a receipt can process actions.
INSERTED_TIMESTAMPTIMESTAMP_NTZThe timestamp at which the record was initially created and inserted into this table.
MODIFIED_TIMESTAMPTIMESTAMP_NTZThe timestamp at which this record was last modified by an internal process.
_INVOCATION_IDTEXTA job ID to identify the run that last modified a record.