Epoch
Operation of the Sui network is temporally partitioned into non-overlapping epochs, and the network aims to keep epochs roughly the same duration as each other. During a particular epoch the following data is fixed:
- the protocol version
- the reference gas price
- the set of participating validators
type Epoch {
  epochId: Int!
  referenceGasPrice: BigInt
  validatorSet: ValidatorSet
  startTimestamp: DateTime!
  endTimestamp: DateTime
  totalCheckpoints: BigInt
  totalTransactions: Int
  totalGasFees: BigInt
  totalStakeRewards: BigInt
  totalStakeSubsidies: BigInt
  fundSize: BigInt
  netInflow: BigInt
  fundInflow: BigInt
  fundOutflow: BigInt
  protocolConfigs: ProtocolConfigs!
  storageFund: StorageFund
  safeMode: SafeMode
  systemStateVersion: Int
  systemParameters: SystemParameters
  systemStakeSubsidy: StakeSubsidy
  liveObjectSetDigest: String
  checkpoints(
    first: Int
    after: String
    last: Int
    before: String
  ): CheckpointConnection!
  transactionBlocks(
    first: Int
    after: String
    last: Int
    before: String
    filter: TransactionBlockFilter
  ): TransactionBlockConnection!
}
Fields
Epoch.epochId ● Int! non-null scalar
The epoch's id as a sequence number that starts at 0 and is incremented by one at every epoch change.
Epoch.referenceGasPrice ● BigInt scalar
The minimum gas price that a quorum of validators are guaranteed to sign a transaction for.
Epoch.validatorSet ● ValidatorSet object
Validator related properties, including the active validators.
Epoch.startTimestamp ● DateTime! non-null scalar
The epoch's starting timestamp.
Epoch.endTimestamp ● DateTime scalar
The epoch's ending timestamp.
Epoch.totalCheckpoints ● BigInt scalar
The total number of checkpoints in this epoch.
Epoch.totalTransactions ● Int scalar
The total number of transaction blocks in this epoch.
Epoch.totalGasFees ● BigInt scalar
The total amount of gas fees (in MIST) that were paid in this epoch.
Epoch.totalStakeRewards ● BigInt scalar
The total MIST rewarded as stake.
Epoch.totalStakeSubsidies ● BigInt scalar
The amount added to total gas fees to make up the total stake rewards.
Epoch.fundSize ● BigInt scalar
The storage fund available in this epoch. This fund is used to redistribute storage fees from past transactions to future validators.
Epoch.netInflow ● BigInt scalar
The difference between the fund inflow and outflow, representing the net amount of storage fees accumulated in this epoch.
Epoch.fundInflow ● BigInt scalar
The storage fees paid for transactions executed during the epoch.
Epoch.fundOutflow ● BigInt scalar
The storage fee rebates paid to users who deleted the data associated with past transactions.
Epoch.protocolConfigs ● ProtocolConfigs! non-null object
The epoch's corresponding protocol configuration, including the feature flags and the configuration options.
Epoch.storageFund ● StorageFund object
SUI set aside to account for objects stored on-chain, at the start of the epoch. This is also used for storage rebates.
Epoch.safeMode ● SafeMode object
Information about whether this epoch was started in safe mode, which happens if the full epoch change logic fails for some reason.
Epoch.systemStateVersion ● Int scalar
The value of the
versionfield of0x5, the0x3::sui::SuiSystemStateobject. This version changes whenever the fields contained in the system state object (held in a dynamic field attached to0x5) change.
Epoch.systemParameters ● SystemParameters object
Details of the system that are decided during genesis.
Epoch.systemStakeSubsidy ● StakeSubsidy object
Parameters related to the subsidy that supplements staking rewards
Epoch.liveObjectSetDigest ● String scalar
A commitment by the committee at the end of epoch on the contents of the live object set at that time. This can be used to verify state snapshots.
Epoch.checkpoints ● CheckpointConnection! non-null object
The epoch's corresponding checkpoints.
Epoch.checkpoints.first●Intscalar
Epoch.checkpoints.after ● String scalar
Epoch.checkpoints.last ● Int scalar
Epoch.checkpoints.before ● String scalar
Epoch.transactionBlocks ● TransactionBlockConnection! non-null object
The epoch's corresponding transaction blocks.
Epoch.transactionBlocks.first●Intscalar
Epoch.transactionBlocks.after ● String scalar
Epoch.transactionBlocks.last ● Int scalar
Epoch.transactionBlocks.before ● String scalar
Epoch.transactionBlocks.filter ● TransactionBlockFilter input
Returned By
epoch  query
Member Of
ActiveJwk  object ● AuthenticatorStateExpireTransaction  object ● AuthenticatorStateUpdateTransaction  object ● ChangeEpochTransaction  object ● Checkpoint  object ● ConsensusCommitPrologueTransaction  object ● RandomnessStateUpdateTransaction  object ● StakedSui  object ● TransactionBlock  object ● TransactionBlockEffects  object