sui.core Table: fact_events Type: Base Table
Fact table logging all events emitted by Move smart contracts and system operations during
transaction execution on Sui. Each event is a structured data emission containing contract-specific
or protocol-level information, including event type, JSON payload, emitting module, and transaction
context. Enables deep dApp analytics, protocol monitoring, and behavioral analysis by exposing
granular details of on-chain activity. Events are indexed by transaction and checkpoint, supporting
real-time monitoring, anomaly detection, and business intelligence use cases. Essential for
understanding contract interactions, user engagement, and protocol-level trends in the Sui
ecosystem.
Data Coverage: This table contains full historical coverage from April 2023 - Present
(4.76B rows), covering all events since the launch of Sui mainnet.
Columns
| Column Name | Data Type | Description |
|---|---|---|
| CHECKPOINT_NUMBER | NUMBER | The sequential number of the checkpoint in which this record was finalized on the Sui blockchain. Checkpoints are consensus milestones that bundle and finalize multiple transactions, providing the primary unit of finality and recovery in Sui. Starts at 0 (genesis checkpoint) and increments by one for each new checkpoint. Used for time series analysis, transaction ordering, and measuring network throughput. Once a transaction is included in a checkpoint, it is permanently recorded and cannot be reverted. This dataset only includes checkpoints greater than or equal to 96605300. Example: 96605301. |
| BLOCK_TIMESTAMP | TIMESTAMP_NTZ | The network-agreed timestamp (in milliseconds since Unix epoch) when the checkpoint containing this record was finalized by Sui consensus. Represents the authoritative time of transaction finality, as determined by validator signatures. Used for temporal analytics, trend analysis, and aligning on-chain activity with real-world time. Example: ‘2024-06-01 12:34:56.789’. |
| TX_DIGEST | TEXT | A 32-byte cryptographic hash (Base58-encoded) uniquely identifying the transaction’s contents and structure. Serves as the primary key for transaction lookup, integrity verification, and cross-model joins. Enables cryptographic proof of transaction inclusion and supports lineage tracing across all Sui analytics. Example: ‘6Qk8…9Xz’. |
| TX_KIND | TEXT | The type of transaction executed. Values include ‘Programmable Transaction Block’ (PTB) for user-submitted transactions (up to 1,024 commands) and ‘System Transaction’ for validator/network operations. Determines execution path, available operations, and analytics grouping. Example: ‘ProgrammableTransactionBlock’. |
| TX_SENDER | TEXT | The 32-byte Sui address (hex with 0x prefix) that initiated and signed the transaction. Identifies the account responsible for the transaction and gas payment. Used for user activity tracking, wallet analytics, and authorization analysis. Example: ‘0xabc123…’. |
| MESSAGE_VERSION | TEXT | The version of the transaction data structure, supporting protocol evolution and backward compatibility. Currently uses ‘TransactionDataV1’. Ensures analytics remain robust across protocol upgrades. Example: ‘1’. |
| TX_SUCCEEDED | BOOLEAN | Boolean flag indicating transaction execution outcome. true = success, false = error. Used for outcome analysis, error monitoring, and success rate tracking. Example: true. |
| EVENT_INDEX | NUMBER | Zero-based index ordering events within a transaction. Ensures deterministic event ordering for sequence reconstruction and analytics. Example: 1. |
| TYPE | TEXT | Type/category of object state modification or event. Enum: created, modified, deleted, wrapped, unwrapped (for changes); event type string (for events). Used for lifecycle analysis and state transition tracking. Example: ‘created’. |
| EVENT_ADDRESS | TEXT | Sui address (32-byte hex) that triggered the event emission. Used for filtering, access control, and user activity analytics. Example: ‘0xabc123…’. |
| EVENT_MODULE | TEXT | Name of the Move module that emitted the event. Used for module-specific event filtering and analytics. Example: ‘coin’. |
| EVENT_RESOURCE | TEXT | Fully qualified type signature of the event struct. Format: {package_id}::{module}::{struct_name}<type_parameters>. Enables type-safe event deserialization and schema tracking. Example: 0x2::coin::TransferEvent<0x2::sui::SUI>. |
| PACKAGE_ID | TEXT | Unique identifier (object ID) of the Move package containing the event module. Used for package-level analytics, deployment tracking, and contract lineage. Example: ‘0x2’. |
| TRANSACTION_MODULE | TEXT | Name of the module executed in the transaction that emitted the event. Links events to transaction context for flow analysis. Example: ‘pay_sui’. |
| SENDER | TEXT | Sui address (32-byte hex) representing the transaction or event sender. Used for authorization, security analysis, and user activity tracking. Example: ‘0xabc123…’. |
| PARSED_JSON | VARIANT | JSON object representing the event data, with structure varying by event type. Provides structured, machine-readable event data for analytics, dApp monitoring, and real-time applications. Example: {"amount": "1000000", "recipient": "0xabc..."}. |
| FACT_EVENTS_ID | TEXT | Surrogate key for the events fact table. Generated unique identifier combining transaction digest and event index, ensuring each event emission is uniquely addressable. Used as the primary key for event tracking, analytics workflows, and cross-model joins. In Sui, this supports granular dApp analytics, protocol monitoring, and event-driven application logic by enabling precise event referencing and lineage analysis. |
| INSERTED_TIMESTAMP | TIMESTAMP_NTZ | Timestamp when the record was inserted into the analytics database. System-generated by the ETL pipeline, typically in TIMESTAMP_NTZ format. Used for data lineage, ETL monitoring, and freshness checks. In Sui analytics, this field is essential for tracking data ingestion latency, validating pipeline health, and supporting incremental model builds. Example: ‘2024-06-01 12:34:56.789’. |
| MODIFIED_TIMESTAMP | TIMESTAMP_NTZ | Timestamp when the record was last modified in the analytics database. System-generated for change tracking, data versioning, and consistency verification. In Sui, this supports incremental processing, late-arriving data correction, and auditability of analytics workflows. Used to monitor data staleness and trigger downstream updates. Example: ‘2024-06-01 12:34:56.789’. |