> ## Documentation Index
> Fetch the complete documentation index at: https://docs.allium.so/llms.txt
> Use this file to discover all available pages before exploring further.

# Blocks

Canton does not have native blocks. Each block is a synthetic 1-second time window derived from the genesis timestamp. Block N covers the interval `[genesis + N seconds, genesis + (N+1) seconds)`.

### Table Details

| Property          | Value                             |
| ----------------- | --------------------------------- |
| Table Name        | `canton.raw.blocks`               |
| Table Status      | Production-Ready                  |
| Unique Key        | `block_timestamp`, `block_number` |
| Clustering Key(s) | `to_date("block_timestamp")`      |

### Table Columns

| Column Name            | Data Type         | Description                                                                                                                                           |
| ---------------------- | ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| block\_number          | NUMBER(38,0)      | Synthetic block index derived as `floor(unix(record_time) - genesis_epoch)`. One block per second starting from genesis on 2024-06-24T21:00:00Z.      |
| migration\_id          | NUMBER(38,0)      | Synchronizer migration epoch. Canton upgrades increment this value (currently 0–4). The active migration\_id must match the time range being queried. |
| genesis\_epoch         | NUMBER(38,0)      | Unix timestamp of Canton's genesis block (1719266400, corresponding to 2024-06-24T21:00:00Z). Used to compute block\_number from record\_time.        |
| genesis\_timestamp     | TIMESTAMP\_NTZ(9) | Timestamp of Canton's genesis block (2024-06-24T21:00:00Z). The start of the 1-second windowed block numbering scheme.                                |
| block\_timestamp       | TIMESTAMP\_NTZ(9) | Start of the 1-second window for this synthetic block, equal to `genesis_timestamp + block_number seconds`.                                           |
| block\_timestamp\_unix | NUMBER(38,0)      | Unix timestamp of block\_timestamp. Equal to `genesis_epoch + block_number`.                                                                          |
| update\_count          | NUMBER(38,0)      | Number of Canton transactions (updates) whose record\_time falls within this 1-second block window.                                                   |
| event\_count           | NUMBER(38,0)      | Total number of events across all updates in this block window. Each update produces multiple events (created\_event and exercised\_event).           |
| \_created\_at          | TIMESTAMP\_NTZ(9) | Timestamp of when the entry was created in the database.                                                                                              |
| \_updated\_at          | TIMESTAMP\_NTZ(9) | Timestamp of when the entry was last updated in the database.                                                                                         |
