Documentation
¶
Index ¶
- type BlobsPageData
- type BlocksPageData
- type BlocksPageDataForkGraph
- type BlocksPageDataSlot
- type ChainDiagram
- type ChainFork
- type ChainForksDiagramData
- type ChainForksPageData
- type ChainSpecs
- type ClientCLDataMapPeerMapEdge
- type ClientCLPageDataNode
- type ClientCLPageDataNodeENRValue
- type ClientCLPageDataNodeMetadata
- type ClientCLPageDataNodePeerDAS
- type ClientCLPageDataNodePeers
- type ClientCLPageDataPeerDASWarnings
- type ClientCLPageDataPeerMap
- type ClientCLPageDataPeerMapNode
- type ClientCLPagePeerDAS
- type ClientELDataMapPeerMapEdge
- type ClientELPageDataForkConfig
- type ClientELPageDataNodePeers
- type ClientELPageDataPeerMap
- type ClientELPageDataPeerMapNode
- type ClientsCLPageData
- type ClientsCLPageDataClient
- type ClientsELPageData
- type ClientsELPageDataClient
- type ClientsELPageDataNode
- type ConsolidationsPageData
- type ConsolidationsPageDataQueuedConsolidation
- type ConsolidationsPageDataRecentConsolidation
- type DepositsPageData
- type DepositsPageDataIncludedDeposit
- type DepositsPageDataIncludedDepositTxDetails
- type DepositsPageDataInitiatedDeposit
- type DepositsPageDataQueuedDeposit
- type DepositsPageDataQueuedDepositTxDetails
- type DiagramCanonicalLine
- type DiagramFork
- type ElConsolidationsPageData
- type ElConsolidationsPageDataConsolidation
- type ElConsolidationsPageDataConsolidationTxDetails
- type ElWithdrawalsPageData
- type ElWithdrawalsPageDataWithdrawal
- type ElWithdrawalsPageDataWithdrawalTxDetails
- type EpochPageData
- type EpochPageDataSlot
- type EpochParticipation
- type EpochsPageData
- type EpochsPageDataEpoch
- type ErrorPageData
- type EthConfigObject
- type ExecutionTimeDetail
- type ExitsPageData
- type ExitsPageDataExitingValidator
- type ExitsPageDataRecentExit
- type ForksPageData
- type ForksPageDataClient
- type ForksPageDataFork
- type IncludedDepositsPageData
- type IncludedDepositsPageDataDeposit
- type IncludedDepositsPageDataDepositTxDetails
- type IndexPageData
- type IndexPageDataBlocks
- type IndexPageDataEpochs
- type IndexPageDataForkGraph
- type IndexPageDataForks
- type IndexPageDataSlots
- type InitiatedDepositsPageData
- type InitiatedDepositsPageDataDeposit
- type LatestBlobBlock
- type MevBlocksPageData
- type MevBlocksPageDataBlock
- type MevBlocksPageDataRelay
- type QueuedConsolidationsPageData
- type QueuedConsolidationsPageDataConsolidation
- type QueuedDepositsPageData
- type QueuedDepositsPageDataDeposit
- type QueuedDepositsPageDataDepositTxDetails
- type QueuedWithdrawalsPageData
- type QueuedWithdrawalsPageDataWithdrawal
- type SearchAheadEpochsResult
- type SearchAheadExecBlocksResult
- type SearchAheadGraffitiResult
- type SearchAheadSlotsResult
- type SearchAheadValidatorNameResult
- type SearchAheadValidatorResult
- type SearchBlockResult
- type SearchGraffitiResult
- type SlashingsPageData
- type SlashingsPageDataSlashing
- type SlotPageAttestation
- type SlotPageAttesterSlashing
- type SlotPageBLSChange
- type SlotPageBlob
- type SlotPageBlobDetails
- type SlotPageBlockBadge
- type SlotPageBlockData
- type SlotPageConsolidationRequest
- type SlotPageData
- type SlotPageDeposit
- type SlotPageDepositRequest
- type SlotPageExecutionData
- type SlotPageProposerSlashing
- type SlotPageTransaction
- type SlotPageVoluntaryExit
- type SlotPageWithdrawal
- type SlotPageWithdrawalRequest
- type SlotStatus
- type SlotsFilteredPageData
- type SlotsFilteredPageDataSlot
- type SlotsPageData
- type SlotsPageDataForkGraph
- type SlotsPageDataSlot
- type StorageCalculatorData
- type SubmitConsolidationPageData
- type SubmitConsolidationPageDataValidator
- type SubmitDepositPageData
- type SubmitDepositPageDataDeposit
- type SubmitDepositPageDataDeposits
- type SubmitDepositPageDataValidator
- type SubmitWithdrawalPageData
- type SubmitWithdrawalPageDataValidator
- type ValidatorPageData
- type ValidatorPageDataAttestation
- type ValidatorPageDataBlock
- type ValidatorPageDataConsolidation
- type ValidatorPageDataConsolidationTxDetails
- type ValidatorPageDataDeposit
- type ValidatorPageDataDepositTxDetails
- type ValidatorPageDataWithdrawal
- type ValidatorPageDataWithdrawalTxDetails
- type ValidatorSlotsPageData
- type ValidatorSlotsPageDataSlot
- type ValidatorsActivityPageData
- type ValidatorsActiviyPageDataGroup
- type ValidatorsOfflinePageData
- type ValidatorsPageData
- type ValidatorsPageDataStatusOption
- type ValidatorsPageDataValidator
- type ValidatorsSummaryClientBreak
- type ValidatorsSummaryMatrixCell
- type ValidatorsSummaryPageData
- type VoluntaryExitsPageData
- type VoluntaryExitsPageDataExit
- type WithdrawalsPageData
- type WithdrawalsPageDataQueuedWithdrawal
- type WithdrawalsPageDataRecentWithdrawal
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BlobsPageData ¶ added in v1.19.5
type BlobsPageData struct {
BlobsLast1h uint64 `json:"blobs_last_1h"`
BlobsLast24h uint64 `json:"blobs_last_24h"`
BlobsLast7d uint64 `json:"blobs_last_7d"`
BlobsLast18d uint64 `json:"blobs_last_18d"`
BlocksWithBlobsLast1h uint64 `json:"blocks_with_blobs_last_1h"`
BlocksWithBlobsLast24h uint64 `json:"blocks_with_blobs_last_24h"`
BlocksWithBlobsLast7d uint64 `json:"blocks_with_blobs_last_7d"`
BlocksWithBlobsLast18d uint64 `json:"blocks_with_blobs_last_18d"`
BlobGasLast1h uint64 `json:"blob_gas_last_1h"`
BlobGasLast24h uint64 `json:"blob_gas_last_24h"`
BlobGasLast7d uint64 `json:"blob_gas_last_7d"`
BlobGasLast18d uint64 `json:"blob_gas_last_18d"`
LatestBlobBlocks []*LatestBlobBlock `json:"latest_blob_blocks"`
StorageCalculator *StorageCalculatorData `json:"storage_calculator"`
}
type BlocksPageData ¶ added in v1.16.0
type BlocksPageData struct {
Blocks []*BlocksPageDataSlot `json:"blocks"`
SlotCount uint64 `json:"slot_count"`
FirstSlot uint64 `json:"first_slot"`
LastSlot uint64 `json:"last_slot"`
ForkTreeWidth int `json:"forktree_width"`
DisplayChain bool `json:"dp_chain"`
DisplayNumber bool `json:"dp_number"`
DisplaySlot bool `json:"dp_slot"`
DisplayStatus bool `json:"dp_status"`
DisplayTime bool `json:"dp_time"`
DisplayProposer bool `json:"dp_proposer"`
DisplayAttestations bool `json:"dp_attestations"`
DisplayDeposits bool `json:"dp_deposits"`
DisplaySlashings bool `json:"dp_slashings"`
DisplayTxCount bool `json:"dp_txcount"`
DisplaySyncAgg bool `json:"dp_syncagg"`
DisplayGraffiti bool `json:"dp_graffiti"`
DisplayElExtraData bool `json:"dp_elextra"`
DisplayGasUsage bool `json:"dp_gasusage"`
DisplayGasLimit bool `json:"dp_gaslimit"`
DisplayMevBlock bool `json:"dp_mevblock"`
DisplayBlockSize bool `json:"dp_blocksize"`
DisplayRecvDelay bool `json:"dp_recvdelay"`
DisplayExecTime bool `json:"dp_exectime"`
DisplayColCount uint64 `json:"display_col_count"`
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
CurrentPageSlot uint64 `json:"page_slot"`
PrevPageIndex uint64 `json:"prev_page_index"`
PrevPageSlot uint64 `json:"prev_page_slot"`
NextPageIndex uint64 `json:"next_page_index"`
NextPageSlot uint64 `json:"next_page_slot"`
LastPageSlot uint64 `json:"last_page_slot"`
FirstPageLink string `json:"first_page_link"`
PrevPageLink string `json:"prev_page_link"`
NextPageLink string `json:"next_page_link"`
LastPageLink string `json:"last_page_link"`
UrlParams map[string]string `json:"url_params"`
MaxSlot uint64 `json:"max_slot"`
}
BlocksPageData is a struct to hold info for the blocks page
type BlocksPageDataForkGraph ¶ added in v1.16.0
type BlocksPageDataSlot ¶ added in v1.16.0
type BlocksPageDataSlot struct {
Slot uint64 `json:"slot"`
Epoch uint64 `json:"epoch"`
Ts time.Time `json:"ts"`
Finalized bool `json:"scheduled"`
Scheduled bool `json:"finalized"`
Status uint8 `json:"status"`
Synchronized bool `json:"synchronized"`
Proposer uint64 `json:"proposer"`
ProposerName string `json:"proposer_name"`
AttestationCount uint64 `json:"attestation_count"`
DepositCount uint64 `json:"deposit_count"`
ExitCount uint64 `json:"exit_count"`
ProposerSlashingCount uint64 `json:"proposer_slashing_count"`
AttesterSlashingCount uint64 `json:"attester_slashing_count"`
SyncParticipation float64 `json:"sync_participation"`
EthTransactionCount uint64 `json:"eth_transaction_count"`
BlobCount uint64 `json:"blob_count"`
WithEthBlock bool `json:"with_eth_block"`
EthBlockNumber uint64 `json:"eth_block_number"`
Graffiti []byte `json:"graffiti"`
ElExtraData []byte `json:"el_extra_data"`
GasUsed uint64 `json:"gas_used"`
GasLimit uint64 `json:"gas_limit"`
BlockSize uint64 `json:"block_size"`
BlockRoot []byte `json:"block_root"`
ParentRoot []byte `json:"parent_root"`
RecvDelay int32 `json:"recv_delay"`
MinExecTime uint32 `json:"min_exec_time"`
MaxExecTime uint32 `json:"max_exec_time"`
AvgExecTime uint32 `json:"avg_exec_time"`
ExecutionTimes []ExecutionTimeDetail `json:"execution_times"`
ForkGraph []*BlocksPageDataForkGraph `json:"fork_graph"`
IsMevBlock bool `json:"is_mev_block"`
MevBlockRelays string `json:"mev_block_relays"`
}
type ChainDiagram ¶ added in v1.18.3
type ChainDiagram struct {
Epochs []uint64 `json:"epochs"` // Changed from slots to epochs
Forks []*DiagramFork `json:"forks"`
CanonicalLine *DiagramCanonicalLine `json:"canonical_line"`
}
type ChainFork ¶ added in v1.18.3
type ChainFork struct {
ForkId uint64 `json:"fork_id"`
BaseSlot uint64 `json:"base_slot"`
BaseRoot []byte `json:"base_root"`
LeafSlot uint64 `json:"leaf_slot"` // First block of this fork (where it diverged)
LeafRoot []byte `json:"leaf_root"`
HeadSlot uint64 `json:"head_slot"` // Current head of this fork
HeadRoot []byte `json:"head_root"`
ParentFork uint64 `json:"parent_fork"`
Participation float64 `json:"participation"` // Overall average participation
ParticipationByEpoch []*EpochParticipation `json:"participation_by_epoch"` // Participation per epoch
IsCanonical bool `json:"is_canonical"`
Length uint64 `json:"length"` // Number of slots in the fork
BlockCount uint64 `json:"block_count"` // Actual number of blocks in the fork
}
type ChainForksDiagramData ¶ added in v1.18.3
type ChainForksDiagramData struct {
Diagram *ChainDiagram `json:"diagram"`
StartSlot uint64 `json:"start_slot"`
EndSlot uint64 `json:"end_slot"`
StartEpoch uint64 `json:"start_epoch"`
EndEpoch uint64 `json:"end_epoch"`
FinalitySlot uint64 `json:"finality_slot"`
RequestedStartSlot uint64 `json:"requested_start_slot"` // Original requested start
RequestedSizeEpochs uint64 `json:"requested_size_epochs"` // Original requested size
PrevPageSlot *uint64 `json:"prev_page_slot"`
NextPageSlot *uint64 `json:"next_page_slot"`
Error string `json:"error,omitempty"` // Error message if something went wrong
}
ChainForksDiagramData contains all the data needed for AJAX diagram requests
type ChainForksPageData ¶ added in v1.18.3
type ChainForksPageData struct {
ChainSpecs *ChainSpecs `json:"chain_specs"`
}
ChainForksPageData is a struct to hold minimal info for the chain forks visualization page template
type ChainSpecs ¶ added in v1.18.3
type ChainSpecs struct {
SlotsPerEpoch uint64 `json:"slots_per_epoch"`
SecondsPerSlot uint64 `json:"seconds_per_slot"`
GenesisTime uint64 `json:"genesis_time"` // Genesis time in unix timestamp
CurrentSlot uint64 `json:"current_slot"` // Current head slot
EpochsFor12h uint64 `json:"epochs_for_12h"` // Pre-calculated epoch counts for time selectors
EpochsFor1d uint64 `json:"epochs_for_1d"`
EpochsFor7d uint64 `json:"epochs_for_7d"`
EpochsFor14d uint64 `json:"epochs_for_14d"`
}
ChainSpecs contains chain specification values needed for visualization
type ClientCLDataMapPeerMapEdge ¶ added in v1.10.0
type ClientCLDataMapPeerMapEdge struct {
From string `json:"from"`
To string `json:"to"`
Interaction string `json:"interaction"`
}
ClientCLDataMapPeerMapEdge represents an edge in the peer graph
type ClientCLPageDataNode ¶ added in v1.12.1
type ClientCLPageDataNode struct {
PeerID string `json:"peer_id"`
NodeID string `json:"node_id"`
Type string `json:"type"` // "internal" or "external" . internal nodes are clients, external nodes are peers of clients
Alias string `json:"alias"` // only relevant for internal peers (clients)
ENR string `json:"enr"`
ENRKeyValues []*ClientCLPageDataNodeENRValue `json:"enr_kv"`
MetadataKeyValues []*ClientCLPageDataNodeENRValue `json:"metadata_kv"`
Peers []*ClientCLPageDataNodePeers `json:"peers"` // only relevant for internal peers
PeerDAS *ClientCLPageDataNodePeerDAS `json:"peer_das"`
PeersIn []string `json:"peers_in"`
PeersOut []string `json:"peers_out"`
Metadata *ClientCLPageDataNodeMetadata `json:"metadata,omitempty"`
ClientSpecs map[string]interface{} `json:"client_specs"`
}
ClientCLPageDataNode represents a generic node on the CL network. Can be a client or a peer of a client This is useful to generate a generic view of all nodes we know about in the network.
type ClientCLPageDataNodeENRValue ¶ added in v1.12.1
type ClientCLPageDataNodeENRValue struct {
Key string `json:"key"`
Value interface{} `json:"value"`
}
type ClientCLPageDataNodeMetadata ¶ added in v1.18.0
type ClientCLPageDataNodeMetadata struct {
Attnets string `json:"attnets,omitempty"`
Syncnets string `json:"syncnets,omitempty"`
SeqNumber string `json:"seq_number,omitempty"`
CustodyGroupCount string `json:"custody_group_count,omitempty"` // MetadataV3 field for Fulu
}
ClientCLPageDataNodeMetadata represents the metadata from the node identity
type ClientCLPageDataNodePeerDAS ¶ added in v1.12.1
type ClientCLPageDataNodePeers ¶ added in v1.12.1
type ClientCLPageDataNodePeers struct {
PeerID string `json:"peer_id"`
State string `json:"state"`
Direction string `json:"direction"`
ENR string `json:"enr"`
ENRKeyValues []*ClientCLPageDataNodeENRValue `json:"enr_kv"`
LastSeenP2PAddress string `json:"last_seen_p2p_address"`
}
ClientCLPageDataNodePeers represents the peers of a client
type ClientCLPageDataPeerDASWarnings ¶ added in v1.12.1
type ClientCLPageDataPeerDASWarnings struct {
HasWarnings bool `json:"has_warnings"`
// MissingENRs indicates that the client is missing ENRs for some peers
MissingENRs bool `json:"missing_enrs"`
MissingENRsPeers []string `json:"missing_enrs_peers"`
// MissingCGCFromENR indicates that the client is missing the CGC from the ENR for some peers
MissingCGCFromENR bool `json:"missing_cgc_from_enr"`
MissingCGCFromENRPeers []string `json:"missing_cgc_from_enr_peers"`
// MissingSpecValues indicates that wer were unable to parse the spec values, thus using defaults
MissingSpecValues bool `json:"missing_spec_values"`
// MissingPeersOnColumn
EmptyColumns []uint64 `json:"missing_peers_on_column"`
}
type ClientCLPageDataPeerMap ¶ added in v1.10.0
type ClientCLPageDataPeerMap struct {
ClientPageDataMapNode []*ClientCLPageDataPeerMapNode `json:"nodes"`
ClientDataMapEdges []*ClientCLDataMapPeerMapEdge `json:"edges"`
}
ClientCLPageDataPeerMap represents the data required to draw the network graph
type ClientCLPageDataPeerMapNode ¶ added in v1.10.0
type ClientCLPageDataPeerMapNode struct {
ID string `json:"id"`
Label string `json:"label"`
Group string `json:"group"`
Shape string `json:"shape"`
Value int `json:"value"`
}
ClientCLPageDataPeerMapNode represents a node in the peer graph
type ClientCLPagePeerDAS ¶ added in v1.12.1
type ClientCLPagePeerDAS struct {
ColumnDistribution map[uint64][]string `json:"column_distribution"` // Column index -> list of peer IDs // Peer ID -> Peer info
TotalRows int `json:"total_rows"` // Amount of rows to show on the webpage. Each row has 32 columns
NumberOfColumns uint64 `json:"number_of_columns"` // Should match NUMBER_OF_COLUMNS from spec
CustodyRequirement uint64 `json:"custody_requirement"` // Should match CUSTODY_REQUIREMENT from spec
DataColumnSidecarSubnetCount uint64 `json:"data_column_sidecar_subnet_count"` // Should match DATA_COLUMN_SIDECAR_SUBNET_COUNT from spec
Warnings ClientCLPageDataPeerDASWarnings `json:"warnings"`
}
ClientCLPagePeerDAS represents the DAS information from all clients and peers. Used to construct the PeerDAS column custody view.
type ClientELDataMapPeerMapEdge ¶ added in v1.10.0
type ClientELPageDataForkConfig ¶ added in v1.19.0
type ClientELPageDataForkConfig struct {
Current *EthConfigObject `json:"current"`
Next *EthConfigObject `json:"next"`
Last *EthConfigObject `json:"last"`
}
type ClientELPageDataNodePeers ¶ added in v1.12.1
type ClientELPageDataNodePeers struct {
ID string `json:"id"`
Alias string `json:"alias"`
Enode string `json:"enode"`
Name string `json:"name"`
Type string `json:"type"`
State string `json:"state"`
Direction string `json:"direction"`
Caps []string `json:"caps"`
Protocols map[string]interface{} `json:"protocols"`
}
type ClientELPageDataPeerMap ¶ added in v1.10.0
type ClientELPageDataPeerMap struct {
ClientPageDataMapNode []*ClientELPageDataPeerMapNode `json:"nodes"`
ClientDataMapEdges []*ClientELDataMapPeerMapEdge `json:"edges"`
}
type ClientELPageDataPeerMapNode ¶ added in v1.10.0
type ClientsCLPageData ¶ added in v1.10.0
type ClientsCLPageData struct {
Clients []*ClientsCLPageDataClient `json:"clients"`
ClientCount uint64 `json:"client_count"`
PeerMap *ClientCLPageDataPeerMap `json:"peer_map"`
ShowSensitivePeerInfos bool `json:"show_sensitive_peer_infos"`
ShowPeerDASInfos bool `json:"show_peer_das_infos"`
PeerDASInfos *ClientCLPagePeerDAS `json:"peer_das"`
// DAS Guardian configuration
DisableDasGuardianCheck bool `json:"disable_das_guardian_check"`
EnableDasGuardianMassScan bool `json:"enable_das_guardian_mass_scan"`
Nodes map[string]*ClientCLPageDataNode `json:"nodes"`
Sorting string `json:"sorting"`
IsDefaultSorting bool `json:"is_default_sorting"`
CurrentForkDigest []byte `json:"current_fork_digest"`
FuluActivationEpoch uint64 `json:"fulu_activation_epoch"`
ExpectedChainSpec map[string]interface{} `json:"expected_chain_spec"`
ExpectedConfigFields []string `json:"expected_config_fields"`
ExpectedPresetFields []string `json:"expected_preset_fields"`
ExpectedDomainTypeFields []string `json:"expected_domain_type_fields"`
}
ClientsCLPageData is a struct to hold info for the clients page
type ClientsCLPageDataClient ¶ added in v1.10.0
type ClientsCLPageDataClient struct {
Index int `json:"index"`
Name string `json:"name"`
Version string `json:"version"`
HeadSlot uint64 `json:"head_slot"`
HeadRoot []byte `json:"head_root"`
Status string `json:"status"`
LastRefresh time.Time `json:"refresh"`
LastError string `json:"error"`
PeerID string `json:"peer_id"`
NodeENR string `json:"node_enr"`
PeerCount uint32 `json:"peer_count"`
PeersInboundCounter uint32 `json:"peers_inbound_counter"`
PeersOutboundCounter uint32 `json:"peers_outbound_counter"`
SpecWarnings []string `json:"spec_warnings"`
}
ClientsCLPageDataClient represents a configured endpoint CL client
type ClientsELPageData ¶ added in v1.10.0
type ClientsELPageData struct {
Clients []*ClientsELPageDataClient `json:"clients"`
ClientCount uint64 `json:"client_count"`
PeerMap *ClientELPageDataPeerMap `json:"peer_map"`
ShowSensitivePeerInfos bool `json:"show_sensitive_peer_infos"`
Nodes map[string]*ClientsELPageDataNode `json:"nodes"`
Sorting string `json:"sorting"`
IsDefaultSorting bool `json:"is_default_sorting"`
ExpectedEthConfig *ClientELPageDataForkConfig `json:"expected_eth_config"`
}
ClientsELPageData is a struct to hold info for the clients page
type ClientsELPageDataClient ¶ added in v1.10.0
type ClientsELPageDataClient struct {
Index int `json:"index"`
Name string `json:"name"`
Version string `json:"version"`
HeadSlot uint64 `json:"head_slot"`
HeadRoot []byte `json:"head_root"`
Status string `json:"status"`
LastRefresh time.Time `json:"refresh"`
LastError string `json:"error"`
PeerCount uint32 `json:"peer_count"`
DidFetchPeers bool `json:"peers_fetched"`
PeersInboundCounter uint32 `json:"peers_inbound_counter"`
PeersOutboundCounter uint32 `json:"peers_outbound_counter"`
PeerID string `json:"peer_id"`
ConfigWarnings []string `json:"config_warnings"`
ClientConfig *ClientELPageDataForkConfig `json:"client_config"`
}
type ClientsELPageDataNode ¶ added in v1.12.1
type ClientsELPageDataNode struct {
PeerID string `json:"peer_id"`
Name string `json:"name"`
Version string `json:"version"`
Status string `json:"status"`
PeerName string `json:"peer_name"`
Enode string `json:"enode"`
IPAddr string `json:"ip_addr"`
ListenAddr string `json:"listen_addr"`
Peers []*ClientELPageDataNodePeers `json:"peers"`
DidFetchPeers bool `json:"peers_fetched"`
ForkConfig *ClientELPageDataForkConfig `json:"fork_config"`
}
type ConsolidationsPageData ¶ added in v1.19.0
type ConsolidationsPageData struct {
TotalConsolidationCount uint64 `json:"total_consolidation_count"`
ConsolidatingValidatorCount uint64 `json:"consolidating_validator_count"`
ConsolidatingAmount uint64 `json:"consolidating_amount"`
QueuedConsolidationCount uint64 `json:"queued_consolidation_count"`
QueueDurationEstimate time.Time `json:"queue_duration_estimate"`
HasQueueDuration bool `json:"has_queue_duration"`
RecentConsolidations []*ConsolidationsPageDataRecentConsolidation `json:"recent_consolidations"`
RecentConsolidationCount uint64 `json:"recent_consolidation_count"`
QueuedConsolidations []*ConsolidationsPageDataQueuedConsolidation `json:"queued_consolidations"`
QueuedTabCount uint64 `json:"queued_tab_count"`
TabView string `json:"tab_view"`
}
ConsolidationsPageData is a struct to hold info for the consolidations overview page
type ConsolidationsPageDataQueuedConsolidation ¶ added in v1.19.0
type ConsolidationsPageDataQueuedConsolidation struct {
SourcePublicKey []byte `json:"src_pubkey"`
TargetPublicKey []byte `json:"tgt_pubkey"`
SourceValidatorExists bool `json:"src_validator_exists"`
SourceValidatorIndex uint64 `json:"src_validator_index"`
SourceValidatorName string `json:"src_validator_name"`
SourceValidatorStatus string `json:"src_validator_status"`
SourceEffectiveBalance uint64 `json:"src_effective_balance"`
TargetValidatorExists bool `json:"tgt_validator_exists"`
TargetValidatorIndex uint64 `json:"tgt_validator_index"`
TargetValidatorName string `json:"tgt_validator_name"`
EstimatedTime time.Time `json:"estimated_time"`
ShowUpcheck bool `json:"show_upcheck"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
}
type ConsolidationsPageDataRecentConsolidation ¶ added in v1.19.0
type ConsolidationsPageDataRecentConsolidation struct {
IsIncluded bool `json:"is_included"`
SlotNumber uint64 `json:"slot"`
SlotRoot []byte `json:"slot_root"`
Time time.Time `json:"time"`
Status uint64 `json:"status"`
Result uint8 `json:"result"`
ResultMessage string `json:"result_message"`
TxStatus uint64 `json:"tx_status"`
SourceAddr []byte `json:"src_addr"`
SourceValidatorValid bool `json:"src_vvalid"`
SourceValidatorIndex uint64 `json:"src_vindex"`
SourceValidatorName string `json:"src_vname"`
SourcePublicKey []byte `json:"src_pubkey"`
TargetValidatorValid bool `json:"tgt_vvalid"`
TargetValidatorIndex uint64 `json:"tgt_vindex"`
TargetValidatorName string `json:"tgt_vname"`
TargetPublicKey []byte `json:"tgt_pubkey"`
LinkedTransaction bool `json:"linked_tx"`
TransactionHash []byte `json:"tx_hash"`
}
type DepositsPageData ¶
type DepositsPageData struct {
EnteringValidatorCount uint64 `json:"entering_val"`
EnteringEtherAmount uint64 `json:"entering_ether"`
ExitingValidatorCount uint64 `json:"exiting_val"`
ValidatorsPerEpoch uint64 `json:"churn_epoch"`
EtherChurnPerEpoch uint64 `json:"churn_ether"`
ValidatorsPerDay uint64 `json:"churn_day"`
EtherChurnPerDay uint64 `json:"churn_ether_day"`
NewDepositProcessAfter time.Time `json:"new_deposit_process_after"`
InitiatedDeposits []*DepositsPageDataInitiatedDeposit `json:"initiated_deposits"`
InitiatedDepositCount uint64 `json:"initiated_deposit_count"`
IncludedDeposits []*DepositsPageDataIncludedDeposit `json:"included_deposits"`
IncludedDepositCount uint64 `json:"included_deposit_count"`
QueuedDeposits []*DepositsPageDataQueuedDeposit `json:"queued_deposits"`
QueuedDepositCount uint64 `json:"queued_deposit_count"`
IsElectraActive bool `json:"is_electra_active"`
TabView string `json:"tab_view"`
}
DepositsPageData is a struct to hold info for the deposits page
type DepositsPageDataIncludedDeposit ¶
type DepositsPageDataIncludedDeposit struct {
Index uint64 `json:"index"`
HasIndex bool `json:"has_index"`
PublicKey []byte `json:"pubkey"`
Withdrawalcredentials []byte `json:"wtdcreds"`
Amount uint64 `json:"amount"`
SlotNumber uint64 `json:"slot"`
SlotRoot []byte `json:"slot_root"`
Time time.Time `json:"time"`
Orphaned bool `json:"orphaned"`
ValidatorStatus string `json:"vstatus"`
ShowUpcheck bool `json:"show_upcheck"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
IsQueued bool `json:"is_queued"`
QueuePosition uint64 `json:"queue_position"`
EstimatedTime time.Time `json:"estimated_time"`
DepositorAddress []byte `json:"depositor_address"`
HasTransaction bool `json:"has_transaction"`
TransactionDetails *DepositsPageDataIncludedDepositTxDetails `json:"tx_details"`
InvalidSignature bool `json:"invalid_signature"`
ValidatorExists bool `json:"validator_exists"`
ValidatorIndex uint64 `json:"validator_index"`
ValidatorName string `json:"validator_name"`
}
type DepositsPageDataIncludedDepositTxDetails ¶ added in v1.15.0
type DepositsPageDataInitiatedDeposit ¶
type DepositsPageDataInitiatedDeposit struct {
Index uint64 `json:"index"`
Address []byte `json:"address"`
PublicKey []byte `json:"pubkey"`
Withdrawalcredentials []byte `json:"wtdcreds"`
Amount uint64 `json:"amount"`
TxHash []byte `json:"txhash"`
Time time.Time `json:"time"`
Block uint64 `json:"block"`
BlockHash []byte `json:"block_hash"`
Orphaned bool `json:"orphaned"`
Valid bool `json:"valid"`
ValidatorStatus string `json:"vstatus"`
ShowUpcheck bool `json:"show_upcheck"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
ValidatorExists bool `json:"validator_exists"`
ValidatorIndex uint64 `json:"validator_index"`
ValidatorName string `json:"validator_name"`
}
type DepositsPageDataQueuedDeposit ¶ added in v1.15.0
type DepositsPageDataQueuedDeposit struct {
Index uint64 `json:"index"`
HasIndex bool `json:"has_index"`
PublicKey []byte `json:"pubkey"`
Withdrawalcredentials []byte `json:"wtdcreds"`
Amount uint64 `json:"amount"`
QueuePosition uint64 `json:"queue_position"`
EstimatedTime time.Time `json:"estimated_time"`
ValidatorStatus string `json:"vstatus"`
ShowUpcheck bool `json:"show_upcheck"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
HasTransaction bool `json:"has_transaction"`
TransactionHash []byte `json:"tx_hash"`
TransactionDetails *DepositsPageDataQueuedDepositTxDetails `json:"tx_details"`
ValidatorExists bool `json:"validator_exists"`
ValidatorIndex uint64 `json:"validator_index"`
ValidatorName string `json:"validator_name"`
}
type DepositsPageDataQueuedDepositTxDetails ¶ added in v1.15.0
type DepositsPageDataQueuedDepositTxDetails struct {
BlockNumber uint64 `json:"block"`
BlockHash string `json:"block_hash"`
BlockTime uint64 `json:"block_time"`
TxOrigin string `json:"tx_origin"`
TxTarget string `json:"tx_target"`
TxHash string `json:"tx_hash"`
ValidSignature bool `json:"valid_signature"`
}
type DiagramCanonicalLine ¶ added in v1.18.3
type DiagramFork ¶ added in v1.18.3
type DiagramFork struct {
ForkId uint64 `json:"fork_id"`
BaseSlot uint64 `json:"base_slot"`
BaseRoot []byte `json:"base_root"`
LeafSlot uint64 `json:"leaf_slot"` // First block of fork (where it diverged)
LeafRoot []byte `json:"leaf_root"`
HeadSlot uint64 `json:"head_slot"` // Current head of this fork
HeadRoot []byte `json:"head_root"`
Length uint64 `json:"length"`
BlockCount uint64 `json:"block_count"` // Actual number of blocks
Participation float64 `json:"participation"` // Overall average
ParticipationByEpoch []*EpochParticipation `json:"participation_by_epoch"` // Per epoch data
ParentFork uint64 `json:"parent_fork"`
IsCanonical bool `json:"is_canonical"` // Whether this is part of canonical chain
}
type ElConsolidationsPageData ¶ added in v1.12.0
type ElConsolidationsPageData struct {
FilterMinSlot uint64 `json:"filter_mins"`
FilterMaxSlot uint64 `json:"filter_maxs"`
FilterAddress string `json:"filter_address"`
FilterPublicKey string `json:"filter_pubkey"`
FilterMinSrcIndex uint64 `json:"filter_minsi"`
FilterMaxSrcIndex uint64 `json:"filter_maxsi"`
FilterSrcValidatorName string `json:"filter_svname"`
FilterMinTgtIndex uint64 `json:"filter_minti"`
FilterMaxTgtIndex uint64 `json:"filter_maxti"`
FilterTgtValidatorName string `json:"filter_tvname"`
FilterWithOrphaned uint8 `json:"filter_orphaned"`
ElRequests []*ElConsolidationsPageDataConsolidation `json:"consolidations"`
RequestCount uint64 `json:"request_count"`
FirstIndex uint64 `json:"first_index"`
LastIndex uint64 `json:"last_index"`
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
PrevPageIndex uint64 `json:"prev_page_index"`
NextPageIndex uint64 `json:"next_page_index"`
LastPageIndex uint64 `json:"last_page_index"`
FirstPageLink string `json:"first_page_link"`
PrevPageLink string `json:"prev_page_link"`
NextPageLink string `json:"next_page_link"`
LastPageLink string `json:"last_page_link"`
UrlParams map[string]string `json:"url_params"`
}
ElConsolidationsPageData is a struct to hold info for the el_consolidations page
type ElConsolidationsPageDataConsolidation ¶ added in v1.12.0
type ElConsolidationsPageDataConsolidation struct {
IsIncluded bool `json:"is_included"`
SlotNumber uint64 `json:"slot"`
SlotRoot []byte `json:"slot_root"`
Time time.Time `json:"time"`
Status uint64 `json:"status"`
Result uint8 `json:"result"`
ResultMessage string `json:"result_message"`
TxStatus uint64 `json:"tx_status"`
SourceAddr []byte `json:"src_addr"`
SourceValidatorValid bool `json:"src_vvalid"`
SourceValidatorIndex uint64 `json:"src_vindex"`
SourceValidatorName string `json:"src_vname"`
SourcePublicKey []byte `json:"src_pubkey"`
TargetValidatorValid bool `json:"tgt_vvalid"`
TargetValidatorIndex uint64 `json:"tgt_vindex"`
TargetValidatorName string `json:"tgt_vname"`
TargetPublicKey []byte `json:"tgt_pubkey"`
LinkedTransaction bool `json:"linked_tx"`
TransactionHash []byte `json:"tx_hash"`
TransactionDetails *ElConsolidationsPageDataConsolidationTxDetails `json:"tx_details"`
}
type ElConsolidationsPageDataConsolidationTxDetails ¶ added in v1.12.1
type ElWithdrawalsPageData ¶ added in v1.12.0
type ElWithdrawalsPageData struct {
FilterMinSlot uint64 `json:"filter_mins"`
FilterMaxSlot uint64 `json:"filter_maxs"`
FilterAddress string `json:"filter_address"`
FilterMinIndex uint64 `json:"filter_mini"`
FilterMaxIndex uint64 `json:"filter_maxi"`
FilterValidatorName string `json:"filter_vname"`
FilterWithOrphaned uint8 `json:"filter_orphaned"`
FilterWithType uint8 `json:"filter_type"`
FilterPublicKey string `json:"filter_pubkey"`
ElRequests []*ElWithdrawalsPageDataWithdrawal `json:"withdrawals"`
RequestCount uint64 `json:"request_count"`
FirstIndex uint64 `json:"first_index"`
LastIndex uint64 `json:"last_index"`
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
PrevPageIndex uint64 `json:"prev_page_index"`
NextPageIndex uint64 `json:"next_page_index"`
LastPageIndex uint64 `json:"last_page_index"`
FirstPageLink string `json:"first_page_link"`
PrevPageLink string `json:"prev_page_link"`
NextPageLink string `json:"next_page_link"`
LastPageLink string `json:"last_page_link"`
UrlParams map[string]string `json:"url_params"`
}
ElWithdrawalsPageData is a struct to hold info for the el_withdrawals page
type ElWithdrawalsPageDataWithdrawal ¶ added in v1.12.0
type ElWithdrawalsPageDataWithdrawal struct {
IsIncluded bool `json:"is_included"`
SlotNumber uint64 `json:"slot"`
SlotRoot []byte `json:"slot_root"`
Time time.Time `json:"time"`
Status uint64 `json:"status"`
Result uint8 `json:"result"`
ResultMessage string `json:"result_message"`
TxStatus uint64 `json:"tx_status"`
SourceAddr []byte `json:"source_addr"`
Amount uint64 `json:"amount"`
ValidatorValid bool `json:"vvalid"`
ValidatorIndex uint64 `json:"vindex"`
ValidatorName string `json:"vname"`
PublicKey []byte `json:"pubkey"`
LinkedTransaction bool `json:"linked_tx"`
TransactionHash []byte `json:"tx_hash"`
TransactionDetails *ElWithdrawalsPageDataWithdrawalTxDetails `json:"tx_details"`
}
type ElWithdrawalsPageDataWithdrawalTxDetails ¶ added in v1.12.1
type EpochPageData ¶
type EpochPageData struct {
Epoch uint64 `json:"epoch"`
PreviousEpoch uint64 `json:"prev_epoch"`
NextEpoch uint64 `json:"next_epoch"`
Ts time.Time `json:"ts"`
Synchronized bool `json:"synchronized"`
Finalized bool `json:"finalized"`
AttestationCount uint64 `json:"attestation_count"`
DepositCount uint64 `json:"deposit_count"`
ExitCount uint64 `json:"exit_count"`
WithdrawalCount uint64 `json:"withdrawal_count"`
WithdrawalAmount uint64 `json:"withdrawal_amount"`
ProposerSlashingCount uint64 `json:"proposer_slashing_count"`
AttesterSlashingCount uint64 `json:"attester_slashing_count"`
EligibleEther uint64 `json:"eligibleether"`
TargetVoted uint64 `json:"target_voted"`
HeadVoted uint64 `json:"head_voted"`
TotalVoted uint64 `json:"total_voted"`
TargetVoteParticipation float64 `json:"target_vote_participation"`
HeadVoteParticipation float64 `json:"head_vote_participation"`
TotalVoteParticipation float64 `json:"total_vote_participation"`
SyncParticipation float64 `json:"sync_participation"`
ValidatorCount uint64 `json:"validator_count"`
AverageValidatorBalance uint64 `json:"avg_validator_balance"`
BlockCount uint64 `json:"block_count"`
CanonicalCount uint64 `json:"canonical_count"`
MissedCount uint64 `json:"missed_count"`
ScheduledCount uint64 `json:"scheduled_count"`
OrphanedCount uint64 `json:"orphaned_count"`
EthTransactionCount uint64 `json:"eth_transaction_count"`
BlobCount uint64 `json:"blob_count"`
Slots []*EpochPageDataSlot `json:"slots"`
}
EpochPageData is a struct to hold info for the epoch page
type EpochPageDataSlot ¶
type EpochPageDataSlot struct {
Slot uint64 `json:"slot"`
Epoch uint64 `json:"epoch"`
Ts time.Time `json:"ts"`
Scheduled bool `json:"scheduled"`
Status uint8 `json:"status"`
Proposer uint64 `json:"proposer"`
ProposerName string `json:"proposer_name"`
AttestationCount uint64 `json:"attestation_count"`
DepositCount uint64 `json:"deposit_count"`
ExitCount uint64 `json:"exit_count"`
ProposerSlashingCount uint64 `json:"proposer_slashing_count"`
AttesterSlashingCount uint64 `json:"attester_slashing_count"`
SyncParticipation float64 `json:"sync_participation"`
EthTransactionCount uint64 `json:"eth_transaction_count"`
BlobCount uint64 `json:"blob_count"`
EthBlockNumber uint64 `json:"eth_block_number"`
WithEthBlock bool `json:"with_eth_block"`
Graffiti []byte `json:"graffiti"`
BlockRoot []byte `json:"block_root"`
}
type EpochParticipation ¶ added in v1.18.3
type EpochsPageData ¶
type EpochsPageData struct {
Epochs []*EpochsPageDataEpoch `json:"epochs"`
EpochCount uint64
FirstEpoch uint64
LastEpoch uint64
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
CurrentPageEpoch uint64 `json:"page_epoch"`
PrevPageIndex uint64 `json:"prev_page_index"`
PrevPageEpoch uint64 `json:"prev_page_epoch"`
NextPageIndex uint64 `json:"next_page_index"`
NextPageEpoch uint64 `json:"next_page_epoch"`
LastPageEpoch uint64 `json:"last_page_epoch"`
UrlParams map[string]string `json:"url_params"`
MaxEpoch uint64 `json:"max_epoch"`
}
EpochsPageData is a struct to hold info for the epochs page
type EpochsPageDataEpoch ¶
type EpochsPageDataEpoch struct {
Epoch uint64 `json:"epoch"`
Ts time.Time `json:"ts"`
Finalized bool `json:"finalized"`
Justified bool `json:"justified"`
Synchronized bool `json:"synchronized"`
CanonicalBlockCount uint64 `json:"canonical_block_count"`
OrphanedBlockCount uint64 `json:"orphaned_block_count"`
AttestationCount uint64 `json:"attestation_count"`
DepositCount uint64 `json:"deposit_count"`
ExitCount uint64 `json:"exit_count"`
ProposerSlashingCount uint64 `json:"proposer_slashing_count"`
AttesterSlashingCount uint64 `json:"attester_slashing_count"`
EligibleEther uint64 `json:"eligibleether"`
TargetVoted uint64 `json:"target_voted"`
HeadVoted uint64 `json:"head_voted"`
TotalVoted uint64 `json:"total_voted"`
TargetVoteParticipation float64 `json:"target_vote_participation"`
HeadVoteParticipation float64 `json:"head_vote_participation"`
TotalVoteParticipation float64 `json:"total_vote_participation"`
EthTransactionCount uint64 `json:"eth_transaction_count"`
BlobCount uint64 `json:"blob_count"`
}
type ErrorPageData ¶
type EthConfigObject ¶ added in v1.19.0
type EthConfigObject struct {
ActivationTime uint64 `json:"activationTime"`
BlobSchedule struct {
Max uint64 `json:"max"`
Target uint64 `json:"target"`
BaseFeeUpdateFraction uint64 `json:"baseFeeUpdateFraction"`
} `json:"blobSchedule"`
ChainId string `json:"chainId"`
ForkId string `json:"forkId"`
Precompiles map[string]string `json:"precompiles"`
SystemContracts map[string]string `json:"systemContracts"`
}
type ExecutionTimeDetail ¶ added in v1.17.0
type ExitsPageData ¶ added in v1.19.0
type ExitsPageData struct {
TotalVoluntaryExitCount uint64 `json:"total_voluntary_exit_count"`
TotalRequestedExitCount uint64 `json:"total_requested_exit_count"`
ExitingValidatorCount uint64 `json:"exiting_validator_count"`
ExitingAmount uint64 `json:"exiting_amount"`
QueueDurationEstimate time.Time `json:"queue_duration_estimate"`
HasQueueDuration bool `json:"has_queue_duration"`
TabView string `json:"tab_view"`
RecentExits []*ExitsPageDataRecentExit `json:"recent_exits"`
RecentExitCount uint64 `json:"recent_exit_count"`
ExitingValidators []*ExitsPageDataExitingValidator `json:"exiting_validators"`
ExitingValidatorTabCount uint64 `json:"exiting_validator_tab_count"`
}
ExitsPageData is a struct to hold info for the exits overview page
type ExitsPageDataExitingValidator ¶ added in v1.19.0
type ExitsPageDataExitingValidator struct {
ValidatorIndex uint64 `json:"validator_index"`
ValidatorName string `json:"validator_name"`
ValidatorStatus string `json:"validator_status"`
PublicKey []byte `json:"pubkey"`
WithdrawalCreds []byte `json:"wdcreds"`
EffectiveBalance uint64 `json:"effective_balance"`
ExitEpoch uint64 `json:"exit_epoch"`
EstimatedTime time.Time `json:"estimated_time"`
ShowUpcheck bool `json:"show_upcheck"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
}
type ExitsPageDataRecentExit ¶ added in v1.19.0
type ExitsPageDataRecentExit struct {
SlotNumber uint64 `json:"slot"`
SlotRoot []byte `json:"slot_root"`
Time time.Time `json:"time"`
Orphaned bool `json:"orphaned"`
ValidatorIndex uint64 `json:"vindex"`
ValidatorName string `json:"vname"`
PublicKey []byte `json:"pubkey"`
WithdrawalCreds []byte `json:"wdcreds"`
ValidatorStatus string `json:"vstatus"`
ShowUpcheck bool `json:"show_upcheck"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
}
type ForksPageData ¶
type ForksPageData struct {
Forks []*ForksPageDataFork `json:"forks"`
ForkCount uint64 `json:"fork_count"`
}
ForksPageData is a struct to hold info for the forks page
type ForksPageDataClient ¶
type ForksPageDataFork ¶
type ForksPageDataFork struct {
HeadSlot uint64 `json:"head_slot"`
HeadRoot []byte `json:"head_root"`
Clients []*ForksPageDataClient `json:"clients"`
ClientCount uint64 `json:"client_count"`
}
type IncludedDepositsPageData ¶
type IncludedDepositsPageData struct {
FilterMinIndex uint64 `json:"filter_mini"`
FilterMaxIndex uint64 `json:"filter_maxi"`
FilterPubKey string `json:"filter_publickey"`
FilterValidatorName string `json:"filter_vname"`
FilterMinAmount uint64 `json:"filter_mina"`
FilterMaxAmount uint64 `json:"filter_maxa"`
FilterWithOrphaned uint8 `json:"filter_orphaned"`
FilterWithValid uint8 `json:"filter_valid"`
FilterAddress string `json:"filter_address"`
Deposits []*IncludedDepositsPageDataDeposit `json:"deposits"`
DepositCount uint64 `json:"deposit_count"`
FirstIndex uint64 `json:"first_index"`
LastIndex uint64 `json:"last_index"`
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
PrevPageIndex uint64 `json:"prev_page_index"`
NextPageIndex uint64 `json:"next_page_index"`
LastPageIndex uint64 `json:"last_page_index"`
FirstPageLink string `json:"first_page_link"`
PrevPageLink string `json:"prev_page_link"`
NextPageLink string `json:"next_page_link"`
LastPageLink string `json:"last_page_link"`
UrlParams map[string]string `json:"url_params"`
}
IncludedDepositsPageData is a struct to hold info for the included_deposits page
type IncludedDepositsPageDataDeposit ¶
type IncludedDepositsPageDataDeposit struct {
Index uint64 `json:"index"`
HasIndex bool `json:"has_index"`
PublicKey []byte `json:"pubkey"`
Withdrawalcredentials []byte `json:"wtdcreds"`
Amount uint64 `json:"amount"`
SlotNumber uint64 `json:"slot"`
SlotRoot []byte `json:"slot_root"`
Time time.Time `json:"time"`
Orphaned bool `json:"orphaned"`
ValidatorStatus string `json:"vstatus"`
ShowUpcheck bool `json:"show_upcheck"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
IsQueued bool `json:"is_queued"`
QueuePosition uint64 `json:"queue_position"`
EstimatedTime time.Time `json:"estimated_time"`
DepositorAddress []byte `json:"depositor_address"`
TransactionHash []byte `json:"tx_hash"`
HasTransaction bool `json:"has_transaction"`
TransactionDetails *IncludedDepositsPageDataDepositTxDetails `json:"tx_details"`
InvalidSignature bool `json:"invalid_signature"`
ValidatorExists bool `json:"validator_exists"`
ValidatorIndex uint64 `json:"validator_index"`
ValidatorName string `json:"validator_name"`
}
type IncludedDepositsPageDataDepositTxDetails ¶ added in v1.15.0
type IndexPageData ¶
type IndexPageData struct {
NetworkName string `json:"netname"`
DepositContract string `json:"depaddr"`
ShowSyncingMessage bool `json:"show_sync"`
SlotsPerEpoch uint64 `json:"slots_per_epoch"`
SecondsPerSlot uint64 `json:"seconds_per_slot"`
SecondsPerEpoch uint64 `json:"seconds_per_epoch"`
CurrentEpoch uint64 `json:"cur_epoch"`
CurrentFinalizedEpoch int64 `json:"finalized_epoch"`
CurrentJustifiedEpoch int64 `json:"justified_epoch"`
CurrentSlot uint64 `json:"cur_slot"`
CurrentScheduledCount uint64 `json:"cur_scheduled"`
CurrentEpochProgress float64 `json:"cur_epoch_prog"`
ActiveValidatorCount uint64 `json:"active_val"`
EnteringValidatorCount uint64 `json:"entering_val"`
EnteringEtherAmount uint64 `json:"entering_ether"`
ExitingValidatorCount uint64 `json:"exiting_val"`
ValidatorsPerEpoch uint64 `json:"churn_epoch"`
EtherChurnPerEpoch uint64 `json:"churn_ether"`
ValidatorsPerDay uint64 `json:"churn_day"`
EtherChurnPerDay uint64 `json:"churn_ether_day"`
TotalEligibleEther uint64 `json:"eligible"`
AverageValidatorBalance uint64 `json:"avg_balance"`
NewDepositProcessAfter string `json:"queue_delay"`
GenesisTime time.Time `json:"genesis_time"`
GenesisForkVersion []byte `json:"genesis_version"`
GenesisValidatorsRoot []byte `json:"genesis_valroot"`
NetworkForks []*IndexPageDataForks `json:"forks"`
RecentBlocks []*IndexPageDataBlocks `json:"blocks"`
RecentBlockCount uint64 `json:"block_count"`
RecentEpochs []*IndexPageDataEpochs `json:"epochs"`
RecentEpochCount uint64 `json:"epoch_count"`
RecentSlots []*IndexPageDataSlots `json:"slots"`
RecentSlotCount uint64 `json:"slot_count"`
ForkTreeWidth int `json:"forktree_width"`
}
IndexPageData is a struct to hold info for the main web page
type IndexPageDataBlocks ¶
type IndexPageDataBlocks struct {
Epoch uint64 `json:"epoch"`
Slot uint64 `json:"slot"`
WithEthBlock bool `json:"has_block"`
EthBlock uint64 `json:"eth_block"`
EthBlockLink string `json:"eth_link"`
Ts time.Time `json:"ts"`
Proposer uint64 `json:"proposer"`
ProposerName string `json:"proposer_name"`
Status uint64 `json:"status"`
BlockRoot []byte `json:"block_root"`
}
type IndexPageDataEpochs ¶
type IndexPageDataForkGraph ¶
type IndexPageDataForks ¶
type IndexPageDataForks struct {
Name string `json:"name"`
Epoch uint64 `json:"epoch"`
Version []byte `json:"version"`
Active bool `json:"active"`
Time uint64 `json:"time"`
Type string `json:"type"` // "consensus" or "bpo"
MaxBlobsPerBlock *uint64 `json:"max_blobs_per_block,omitempty"` // Only for BPO forks
ForkDigest []byte `json:"fork_digest"` // Fork digest for this fork
}
type IndexPageDataSlots ¶
type IndexPageDataSlots struct {
Epoch uint64 `json:"epoch"`
Slot uint64 `json:"slot"`
EthBlock uint64 `json:"eth_block"`
Ts time.Time `json:"ts"`
Proposer uint64 `json:"proposer"`
ProposerName string `json:"proposer_name"`
Status uint64 `json:"status"`
BlockRoot []byte `json:"block_root"`
ParentRoot []byte `json:"-"`
ForkGraph []*IndexPageDataForkGraph `json:"fork_graph"`
}
type InitiatedDepositsPageData ¶
type InitiatedDepositsPageData struct {
FilterAddress string `json:"filter_address"`
FilterPubKey string `json:"filter_publickey"`
FilterValidatorName string `json:"filter_vname"`
FilterMinAmount uint64 `json:"filter_mina"`
FilterMaxAmount uint64 `json:"filter_maxa"`
FilterWithOrphaned uint8 `json:"filter_orphaned"`
FilterWithValid uint8 `json:"filter_valid"`
Deposits []*InitiatedDepositsPageDataDeposit `json:"deposits"`
DepositCount uint64 `json:"deposit_count"`
FirstIndex uint64 `json:"first_index"`
LastIndex uint64 `json:"last_index"`
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
PrevPageIndex uint64 `json:"prev_page_index"`
NextPageIndex uint64 `json:"next_page_index"`
LastPageIndex uint64 `json:"last_page_index"`
FirstPageLink string `json:"first_page_link"`
PrevPageLink string `json:"prev_page_link"`
NextPageLink string `json:"next_page_link"`
LastPageLink string `json:"last_page_link"`
UrlParams map[string]string `json:"url_params"`
}
DepositsPageData is a struct to hold info for the deposits page
type InitiatedDepositsPageDataDeposit ¶
type InitiatedDepositsPageDataDeposit struct {
Index uint64 `json:"index"`
Address []byte `json:"address"`
PublicKey []byte `json:"pubkey"`
Withdrawalcredentials []byte `json:"wtdcreds"`
Amount uint64 `json:"amount"`
TxHash []byte `json:"txhash"`
Time time.Time `json:"time"`
Block uint64 `json:"block"`
Orphaned bool `json:"orphaned"`
Valid bool `json:"valid"`
ValidatorStatus string `json:"vstatus"`
ShowUpcheck bool `json:"show_upcheck"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
ValidatorExists bool `json:"validator_exists"`
ValidatorIndex uint64 `json:"validator_index"`
ValidatorName string `json:"validator_name"`
}
type LatestBlobBlock ¶ added in v1.19.5
type LatestBlobBlock struct {
Slot uint64 `json:"slot"`
BlockNumber uint64 `json:"block_number"`
Timestamp time.Time `json:"timestamp"`
BlobCount uint64 `json:"blob_count"`
Proposer uint64 `json:"proposer"`
ProposerName string `json:"proposer_name"`
BlockRoot []byte `json:"block_root"`
Finalized bool `json:"finalized"`
}
type MevBlocksPageData ¶
type MevBlocksPageData struct {
FilterMinSlot uint64 `json:"filter_mins"`
FilterMaxSlot uint64 `json:"filter_maxs"`
FilterMinIndex uint64 `json:"filter_mini"`
FilterMaxIndex uint64 `json:"filter_maxi"`
FilterValidatorName string `json:"filter_vname"`
FilterRelays map[uint8]bool `json:"filter_relays"`
FilterRelayOpts []*MevBlocksPageDataRelay `json:"filter_relay_opts"`
FilterProposed map[uint8]bool `json:"filter_proposed"`
MevBlocks []*MevBlocksPageDataBlock `json:"exits"`
BlockCount uint64 `json:"block_count"`
FirstIndex uint64 `json:"first_index"`
LastIndex uint64 `json:"last_index"`
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
PrevPageIndex uint64 `json:"prev_page_index"`
NextPageIndex uint64 `json:"next_page_index"`
LastPageIndex uint64 `json:"last_page_index"`
FirstPageLink string `json:"first_page_link"`
PrevPageLink string `json:"prev_page_link"`
NextPageLink string `json:"next_page_link"`
LastPageLink string `json:"last_page_link"`
UrlParams map[string]string `json:"url_params"`
}
MevBlocksPageData is a struct to hold info for the mev_blocks page
type MevBlocksPageDataBlock ¶
type MevBlocksPageDataBlock struct {
SlotNumber uint64 `json:"slot"`
BlockHash []byte `json:"block_hash"`
BlockNumber uint64 `json:"block_number"`
Time time.Time `json:"time"`
ValidatorIndex uint64 `json:"vindex"`
ValidatorName string `json:"vname"`
BuilderPubkey []byte `json:"builder"`
Proposed uint8 `json:"proposed"`
Relays []*MevBlocksPageDataRelay `json:"relays"`
RelayCount uint64 `json:"relay_count"`
FeeRecipient []byte `json:"fee_recipient"`
TxCount uint64 `json:"tx_count"`
BlobCount uint64 `json:"blob_count"`
GasUsed uint64 `json:"gas_used"`
BlockValue uint64 `json:"block_value"`
BlockValueStr string `json:"block_value_str"`
}
type MevBlocksPageDataRelay ¶
type QueuedConsolidationsPageData ¶ added in v1.19.0
type QueuedConsolidationsPageData struct {
FilterMinSrcIndex uint64 `json:"filter_minsi"`
FilterMaxSrcIndex uint64 `json:"filter_maxsi"`
FilterMinTgtIndex uint64 `json:"filter_minti"`
FilterMaxTgtIndex uint64 `json:"filter_maxti"`
FilterValidatorName string `json:"filter_vname"`
FilterPublicKey string `json:"filter_pubkey"`
QueuedConsolidations []*QueuedConsolidationsPageDataConsolidation `json:"consolidations"`
ConsolidationCount uint64 `json:"consolidation_count"`
FirstIndex uint64 `json:"first_index"`
LastIndex uint64 `json:"last_index"`
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
PrevPageIndex uint64 `json:"prev_page_index"`
NextPageIndex uint64 `json:"next_page_index"`
LastPageIndex uint64 `json:"last_page_index"`
FirstPageLink string `json:"first_page_link"`
PrevPageLink string `json:"prev_page_link"`
NextPageLink string `json:"next_page_link"`
LastPageLink string `json:"last_page_link"`
UrlParams map[string]string `json:"url_params"`
}
QueuedConsolidationsPageData is a struct to hold info for the queued_consolidations page
type QueuedConsolidationsPageDataConsolidation ¶ added in v1.19.0
type QueuedConsolidationsPageDataConsolidation struct {
SourcePublicKey []byte `json:"src_pubkey"`
TargetPublicKey []byte `json:"tgt_pubkey"`
SourceValidatorExists bool `json:"src_validator_exists"`
SourceValidatorIndex uint64 `json:"src_validator_index"`
SourceValidatorName string `json:"src_validator_name"`
SourceValidatorStatus string `json:"src_validator_status"`
SourceEffectiveBalance uint64 `json:"src_effective_balance"`
TargetValidatorExists bool `json:"tgt_validator_exists"`
TargetValidatorIndex uint64 `json:"tgt_validator_index"`
TargetValidatorName string `json:"tgt_validator_name"`
EstimatedTime time.Time `json:"estimated_time"`
ShowUpcheck bool `json:"show_upcheck"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
}
type QueuedDepositsPageData ¶ added in v1.15.0
type QueuedDepositsPageData struct {
Deposits []*QueuedDepositsPageDataDeposit `json:"deposits"`
DepositCount uint64 `json:"deposit_count"`
DepositsFrom uint64 `json:"deposits_from"`
DepositsTo uint64 `json:"deposits_to"`
MaxEffectiveBalance uint64 `json:"max_effective_balance"`
// Filter fields
FilterMinIndex uint64 `json:"filter_mini"`
FilterMaxIndex uint64 `json:"filter_maxi"`
FilterPubKey string `json:"filter_publickey"`
FilterMinAmount uint64 `json:"filter_mina"`
FilterMaxAmount uint64 `json:"filter_maxa"`
// Add paging fields
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
PrevPageIndex uint64 `json:"prev_page_index"`
NextPageIndex uint64 `json:"next_page_index"`
LastPageIndex uint64 `json:"last_page_index"`
FirstPageLink string `json:"first_page_link"`
PrevPageLink string `json:"prev_page_link"`
NextPageLink string `json:"next_page_link"`
LastPageLink string `json:"last_page_link"`
UrlParams map[string]string `json:"url_params"`
}
QueuedDepositsPageData is a struct to hold info for the queued_deposits page
type QueuedDepositsPageDataDeposit ¶ added in v1.15.0
type QueuedDepositsPageDataDeposit struct {
Index uint64 `json:"index"`
HasIndex bool `json:"has_index"`
ExcessDeposit bool `json:"excess_deposit"`
PublicKey []byte `json:"pubkey"`
Withdrawalcredentials []byte `json:"wtdcreds"`
Amount uint64 `json:"amount"`
QueuePosition uint64 `json:"queue_position"`
EstimatedTime time.Time `json:"estimated_time"`
ValidatorStatus string `json:"vstatus"`
ShowUpcheck bool `json:"show_upcheck"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
HasTransaction bool `json:"has_transaction"`
TransactionHash []byte `json:"tx_hash"`
TransactionDetails *QueuedDepositsPageDataDepositTxDetails `json:"tx_details"`
ValidatorExists bool `json:"validator_exists"`
ValidatorIndex uint64 `json:"validator_index"`
ValidatorName string `json:"validator_name"`
}
type QueuedDepositsPageDataDepositTxDetails ¶ added in v1.15.0
type QueuedWithdrawalsPageData ¶ added in v1.19.0
type QueuedWithdrawalsPageData struct {
FilterMinIndex uint64 `json:"filter_mini"`
FilterMaxIndex uint64 `json:"filter_maxi"`
FilterValidatorName string `json:"filter_vname"`
FilterPublicKey string `json:"filter_pubkey"`
QueuedWithdrawals []*QueuedWithdrawalsPageDataWithdrawal `json:"withdrawals"`
WithdrawalCount uint64 `json:"withdrawal_count"`
FirstIndex uint64 `json:"first_index"`
LastIndex uint64 `json:"last_index"`
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
PrevPageIndex uint64 `json:"prev_page_index"`
NextPageIndex uint64 `json:"next_page_index"`
LastPageIndex uint64 `json:"last_page_index"`
FirstPageLink string `json:"first_page_link"`
PrevPageLink string `json:"prev_page_link"`
NextPageLink string `json:"next_page_link"`
LastPageLink string `json:"last_page_link"`
UrlParams map[string]string `json:"url_params"`
}
QueuedWithdrawalsPageData is a struct to hold info for the queued_withdrawals page
type QueuedWithdrawalsPageDataWithdrawal ¶ added in v1.19.0
type QueuedWithdrawalsPageDataWithdrawal struct {
ValidatorIndex uint64 `json:"validator_index"`
ValidatorName string `json:"validator_name"`
ValidatorStatus string `json:"validator_status"`
PublicKey []byte `json:"pubkey"`
Amount uint64 `json:"amount"`
WithdrawableEpoch uint64 `json:"withdrawable_epoch"`
EstimatedTime time.Time `json:"estimated_time"`
ShowUpcheck bool `json:"show_upcheck"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
}
type SearchAheadEpochsResult ¶
type SearchAheadEpochsResult struct {
Epoch string `json:"epoch,omitempty"`
}
SearchAheadEpochsResult is a struct to hold the search ahead epochs results
type SearchAheadExecBlocksResult ¶
type SearchAheadExecBlocksResult struct {
Slot string `json:"slot,omitempty"`
Root phase0.Root `json:"root,omitempty"`
ExecHash phase0.Hash32 `json:"exec_hash,omitempty"`
ExecNumber uint64 `json:"exec_number,omitempty"`
Orphaned bool `json:"orphaned,omitempty"`
}
SearchAheadExecBlocksResult is a struct to hold the search ahead execution blocks results
type SearchAheadGraffitiResult ¶
type SearchAheadGraffitiResult struct {
Graffiti string `json:"graffiti,omitempty"`
Count string `json:"count,omitempty"`
}
SearchAheadGraffitiResult is a struct to hold the search ahead blocks results with a given graffiti
type SearchAheadSlotsResult ¶
type SearchAheadSlotsResult struct {
Slot string `json:"slot,omitempty"`
Root phase0.Root `json:"root,omitempty"`
Orphaned bool `json:"orphaned,omitempty"`
}
SearchAheadSlotsResult is a struct to hold the search ahead slots results
type SearchAheadValidatorNameResult ¶
type SearchAheadValidatorNameResult struct {
Name string `json:"name,omitempty"`
Count string `json:"count,omitempty"`
}
SearchAheadValidatorNameResult is a struct to hold the search ahead blocks results with a given graffiti
type SearchAheadValidatorResult ¶ added in v1.17.0
type SearchAheadValidatorResult struct {
Index string `json:"index,omitempty"`
Pubkey string `json:"pubkey,omitempty"`
Name string `json:"name,omitempty"`
}
SearchAheadValidatorResult is a struct to hold the search ahead validator results
type SearchBlockResult ¶
type SearchBlockResult struct {
Slot uint64 `json:"slot,omitempty"`
Root phase0.Root `json:"root,omitempty"`
Orphaned bool `json:"orphaned,omitempty"`
}
SearchBlockResult is a struct to hold the search block result with a given graffiti
type SearchGraffitiResult ¶
type SearchGraffitiResult struct {
Graffiti string `json:"graffiti,omitempty"`
}
SearchGraffitiResult is a struct to hold the search block result with a given graffiti
type SlashingsPageData ¶
type SlashingsPageData struct {
FilterMinSlot uint64 `json:"filter_mins"`
FilterMaxSlot uint64 `json:"filter_maxs"`
FilterMinIndex uint64 `json:"filter_mini"`
FilterMaxIndex uint64 `json:"filter_maxi"`
FilterValidatorName string `json:"filter_vname"`
FilterSlasherName string `json:"filter_sname"`
FilterWithReason uint8 `json:"filter_reason"`
FilterWithOrphaned uint8 `json:"filter_orphaned"`
Slashings []*SlashingsPageDataSlashing `json:"slashings"`
SlashingCount uint64 `json:"slashing_count"`
FirstIndex uint64 `json:"first_index"`
LastIndex uint64 `json:"last_index"`
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
PrevPageIndex uint64 `json:"prev_page_index"`
NextPageIndex uint64 `json:"next_page_index"`
LastPageIndex uint64 `json:"last_page_index"`
FirstPageLink string `json:"first_page_link"`
PrevPageLink string `json:"prev_page_link"`
NextPageLink string `json:"next_page_link"`
LastPageLink string `json:"last_page_link"`
UrlParams map[string]string `json:"url_params"`
}
SlashingsPageData is a struct to hold info for the slashings page
type SlashingsPageDataSlashing ¶
type SlashingsPageDataSlashing struct {
SlotNumber uint64 `json:"slot"`
SlotRoot []byte `json:"slot_root"`
Time time.Time `json:"time"`
Orphaned bool `json:"orphaned"`
ValidatorIndex uint64 `json:"vindex"`
ValidatorName string `json:"vname"`
Reason uint8 `json:"reason"`
ValidatorStatus string `json:"vstatus"`
ShowUpcheck bool `json:"show_upcheck"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
Balance uint64 `json:"balance"`
SlasherIndex uint64 `json:"sindex"`
SlasherName string `json:"sname"`
}
type SlotPageAttestation ¶
type SlotPageAttestation struct {
Slot uint64 `json:"slot"`
CommitteeIndex []uint64 `json:"committeeindex"`
TotalActive uint64 `json:"total_active"`
AggregationBits []byte `json:"aggregationbits"`
Validators []uint64 `json:"validators"`
IncludedValidators []uint64 `json:"included_validators"`
Signature []byte `json:"signature"`
BeaconBlockRoot []byte `json:"beaconblockroot"`
BeaconBlockSlot uint64 `json:"beaconblockslot"`
SourceEpoch uint64 `json:"source_epoch"`
SourceRoot []byte `json:"source_root"`
TargetEpoch uint64 `json:"target_epoch"`
TargetRoot []byte `json:"target_root"`
}
type SlotPageAttesterSlashing ¶
type SlotPageAttesterSlashing struct {
Attestation1Indices []uint64 `json:"attestation1_indices"`
Attestation1Signature []byte `json:"attestation1_signature"`
Attestation1Slot uint64 `json:"attestation1_slot"`
Attestation1Index uint64 `json:"attestation1_index"`
Attestation1BeaconBlockRoot []byte `json:"attestation1_beaconblockroot"`
Attestation1SourceEpoch uint64 `json:"attestation1_source_epoch"`
Attestation1SourceRoot []byte `json:"attestation1_source_root"`
Attestation1TargetEpoch uint64 `json:"attestation1_target_epoch"`
Attestation1TargetRoot []byte `json:"attestation1_target_root"`
Attestation2Indices []uint64 `json:"attestation2_indices"`
Attestation2Signature []byte `json:"attestation2_signature"`
Attestation2Slot uint64 `json:"attestation2_slot"`
Attestation2Index uint64 `json:"attestation2_index"`
Attestation2BeaconBlockRoot []byte `json:"attestation2_beaconblockroot"`
Attestation2SourceEpoch uint64 `json:"attestation2_source_epoch"`
Attestation2SourceRoot []byte `json:"attestation2_source_root"`
Attestation2TargetEpoch uint64 `json:"attestation2_target_epoch"`
Attestation2TargetRoot []byte `json:"attestation2_target_root"`
SlashedValidators []types.NamedValidator `json:"validators"`
}
BlockPageAttesterSlashing is a struct to hold data for attester slashings on the block page
type SlotPageBLSChange ¶
type SlotPageBlob ¶
type SlotPageBlobDetails ¶
type SlotPageBlockBadge ¶
type SlotPageBlockData ¶
type SlotPageBlockData struct {
BlockRoot []byte `json:"blockroot"`
ParentRoot []byte `json:"parentroot"`
StateRoot []byte `json:"stateroot"`
BodyRoot []byte `json:"bodyroot"`
Signature []byte `json:"signature"`
RandaoReveal []byte `json:"randaoreveal"`
Graffiti []byte `json:"graffiti"`
Eth1dataDepositroot []byte `json:"eth1data_depositroot"`
Eth1dataDepositcount uint64 `json:"eth1data_depositcount"`
Eth1dataBlockhash []byte `json:"eth1data_blockhash"`
SyncAggregateBits []byte `json:"syncaggregate_bits"`
SyncAggregateSignature []byte `json:"syncaggregate_signature"`
SyncAggParticipation float64 `json:"syncaggregate_participation"`
SyncAggCommittee []types.NamedValidator `json:"syncaggregate_committee"`
ValidatorNames map[uint64]string `json:"validator_names"`
SpecValues map[string]interface{} `json:"spec_values"`
ProposerSlashingsCount uint64 `json:"proposer_slashings_count"`
AttesterSlashingsCount uint64 `json:"attester_slashings_count"`
AttestationsCount uint64 `json:"attestations_count"`
DepositsCount uint64 `json:"deposits_count"`
WithdrawalsCount uint64 `json:"withdrawals_count"`
BLSChangesCount uint64 `json:"bls_changes_count"`
VoluntaryExitsCount uint64 `json:"voluntaryexits_count"`
SlashingsCount uint64 `json:"slashings_count"`
BlobsCount uint64 `json:"blobs_count"`
TransactionsCount uint64 `json:"transactions_count"`
DepositRequestsCount uint64 `json:"deposit_receipts_count"`
WithdrawalRequestsCount uint64 `json:"withdrawal_requests_count"`
ConsolidationRequestsCount uint64 `json:"consolidation_requests_count"`
ExecutionData *SlotPageExecutionData `json:"execution_data"`
Attestations []*SlotPageAttestation `json:"attestations"` // Attestations included in this block
Deposits []*SlotPageDeposit `json:"deposits"` // Deposits included in this block
VoluntaryExits []*SlotPageVoluntaryExit `json:"voluntary_exits"` // Voluntary Exits included in this block
AttesterSlashings []*SlotPageAttesterSlashing `json:"attester_slashings"` // Attester Slashings included in this block
ProposerSlashings []*SlotPageProposerSlashing `json:"proposer_slashings"` // Proposer Slashings included in this block
BLSChanges []*SlotPageBLSChange `json:"bls_changes"` // BLSChanges included in this block
Withdrawals []*SlotPageWithdrawal `json:"withdrawals"` // Withdrawals included in this block
Blobs []*SlotPageBlob `json:"blobs"` // Blob sidecars included in this block
Transactions []*SlotPageTransaction `json:"transactions"` // Transactions included in this block
DepositRequests []*SlotPageDepositRequest `json:"deposit_receipts"` // DepositRequests included in this block
WithdrawalRequests []*SlotPageWithdrawalRequest `json:"withdrawal_requests"` // WithdrawalRequests included in this block
ConsolidationRequests []*SlotPageConsolidationRequest `json:"consolidation_requests"` // ConsolidationRequests included in this block
}
type SlotPageConsolidationRequest ¶ added in v1.11.0
type SlotPageConsolidationRequest struct {
Address []byte `db:"address"`
SourcePubkey []byte `db:"source_pubkey"`
SourceFound bool `db:"source_bool"`
SourceIndex uint64 `db:"source_index"`
SourceName string `db:"source_name"`
TargetPubkey []byte `db:"target_pubkey"`
TargetFound bool `db:"target_bool"`
TargetIndex uint64 `db:"target_index"`
TargetName string `db:"target_name"`
Epoch uint64 `db:"epoch"`
}
type SlotPageData ¶
type SlotPageData struct {
Slot uint64 `json:"slot"`
Epoch uint64 `json:"epoch"`
EpochFinalized bool `json:"epoch_finalized"`
EpochParticipationRate float64 `json:"epoch_participation_rate"`
Ts time.Time `json:"time"`
NextSlot uint64 `json:"next_slot"`
PreviousSlot uint64 `json:"prev_slot"`
Status uint16 `json:"status"`
Future bool `json:"future"`
Proposer uint64 `json:"proposer"`
ProposerName string `json:"proposer_name"`
Block *SlotPageBlockData `json:"block"`
Badges []*SlotPageBlockBadge `json:"badges"`
}
SlotPageData is a struct to hold info for the slot details page
type SlotPageDeposit ¶
type SlotPageDepositRequest ¶ added in v1.11.0
type SlotPageDepositRequest struct {
PublicKey []byte `db:"pubkey"`
Exists bool `db:"exists"`
ValidatorIndex uint64 `db:"valindex"`
ValidatorName string `db:"valname"`
WithdrawalCreds []byte `db:"withdrawal_creds"`
Amount uint64 `db:"amount"`
Signature []byte `db:"signature"`
Index uint64 `db:"index"`
}
type SlotPageExecutionData ¶
type SlotPageExecutionData struct {
ParentHash []byte `json:"parent_hash"`
FeeRecipient []byte `json:"fee_recipient"`
StateRoot []byte `json:"state_root"`
ReceiptsRoot []byte `json:"receipts_root"`
LogsBloom []byte `json:"logs_bloom"`
Random []byte `json:"random"`
GasLimit uint64 `json:"gas_limit"`
GasUsed uint64 `json:"gas_used"`
Timestamp uint64 `json:"timestamp"`
Time time.Time `json:"time"`
ExtraData []byte `json:"extra_data"`
BaseFeePerGas uint64 `json:"base_fee_per_gas"`
BlockHash []byte `json:"block_hash"`
BlockNumber uint64 `json:"block_number"`
BlobGasUsed *uint64 `json:"blob_gas_used,omitempty"`
BlobLimit *uint64 `json:"blob_limit,omitempty"`
BlobGasLimit *uint64 `json:"blob_gas_limit,omitempty"`
ExcessBlobGas *uint64 `json:"excess_blob_gas,omitempty"`
BlobBaseFee *uint64 `json:"blob_base_fee,omitempty"`
BlobBaseFeeEIP7918 *uint64 `json:"blob_base_fee_eip7918,omitempty"`
IsEIP7918Active bool `json:"is_eip7918_active"`
}
type SlotPageProposerSlashing ¶
type SlotPageProposerSlashing struct {
ProposerIndex uint64 `json:"proposerindex"`
ProposerName string `json:"proposername"`
Header1Slot uint64 `json:"header1_slot"`
Header1ParentRoot []byte `json:"header1_parentroot"`
Header1StateRoot []byte `json:"header1_stateroot"`
Header1BodyRoot []byte `json:"header1_bodyroot"`
Header1Signature []byte `json:"header1_signature"`
Header2Slot uint64 `json:"header2_slot"`
Header2ParentRoot []byte `json:"header2_parentroot"`
Header2StateRoot []byte `json:"header2_stateroot"`
Header2BodyRoot []byte `json:"header2_bodyroot"`
Header2Signature []byte `json:"header2_signature"`
}
BlockPageProposerSlashing is a struct to hold data for proposer slashings on the block page
type SlotPageTransaction ¶
type SlotPageTransaction struct {
Index uint64 `json:"index"`
Hash []byte `json:"hash"`
From string `json:"from"`
To string `json:"to"`
Value float64 `json:"value"`
Data []byte `json:"data"`
DataLen uint64 `json:"datalen"`
FuncSigStatus uint64 `json:"func_sig_status"`
FuncBytes string `json:"func_bytes"`
FuncName string `json:"func_name"`
FuncSig string `json:"func_sig"`
Type uint64 `json:"type"`
}
type SlotPageVoluntaryExit ¶
type SlotPageWithdrawal ¶
type SlotPageWithdrawalRequest ¶ added in v1.11.0
type SlotStatus ¶
type SlotStatus uint16
const ( SlotStatusMissed SlotStatus = 0 SlotStatusFound SlotStatus = 1 SlotStatusOrphaned SlotStatus = 2 )
type SlotsFilteredPageData ¶
type SlotsFilteredPageData struct {
FilterGraffiti string `json:"filter_graffiti"`
FilterInvertGraffiti bool `json:"filter_invert_graffiti"`
FilterExtraData string `json:"filter_extra_data"`
FilterInvertExtraData bool `json:"filter_invert_extra_data"`
FilterProposer string `json:"filter_proposer"`
FilterProposerName string `json:"filter_pname"`
FilterInvertProposer bool `json:"filter_invert_proposer"`
FilterWithOrphaned uint8 `json:"filter_orphaned"`
FilterWithMissing uint8 `json:"filter_missing"`
FilterMinSyncAgg string `json:"filter_min_sync"`
FilterMaxSyncAgg string `json:"filter_max_sync"`
FilterMinExecTime string `json:"filter_min_exec"`
FilterMaxExecTime string `json:"filter_max_exec"`
FilterMinTxCount string `json:"filter_min_tx"`
FilterMaxTxCount string `json:"filter_max_tx"`
FilterMinBlobCount string `json:"filter_min_blob"`
FilterMaxBlobCount string `json:"filter_max_blob"`
FilterForkIds string `json:"filter_fork_ids"`
DisplayEpoch bool `json:"dp_epoch"`
DisplaySlot bool `json:"dp_slot"`
DisplayStatus bool `json:"dp_status"`
DisplayTime bool `json:"dp_time"`
DisplayProposer bool `json:"dp_proposer"`
DisplayAttestations bool `json:"dp_attestations"`
DisplayDeposits bool `json:"dp_deposits"`
DisplaySlashings bool `json:"dp_slashings"`
DisplayTxCount bool `json:"dp_txcount"`
DisplaySyncAgg bool `json:"dp_syncagg"`
DisplayGraffiti bool `json:"dp_graffiti"`
DisplayElExtraData bool `json:"dp_elextra"`
DisplayGasUsage bool `json:"dp_gasusage"`
DisplayGasLimit bool `json:"dp_gaslimit"`
DisplayMevBlock bool `json:"dp_mevblock"`
DisplayBlockSize bool `json:"dp_blocksize"`
DisplayRecvDelay bool `json:"dp_recvdelay"`
DisplayExecTime bool `json:"dp_exectime"`
DisplayColCount uint64 `json:"display_col_count"`
HasSnooperClients bool `json:"has_snooper_clients"`
Slots []*SlotsFilteredPageDataSlot `json:"slots"`
SlotCount uint64 `json:"slot_count"`
FirstSlot uint64 `json:"first_slot"`
LastSlot uint64 `json:"last_slot"`
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
CurrentPageSlot uint64 `json:"page_slot"`
PrevPageIndex uint64 `json:"prev_page_index"`
PrevPageSlot uint64 `json:"prev_page_slot"`
NextPageIndex uint64 `json:"next_page_index"`
NextPageSlot uint64 `json:"next_page_slot"`
LastPageSlot uint64 `json:"last_page_slot"`
FirstPageLink string `json:"first_page_link"`
PrevPageLink string `json:"prev_page_link"`
NextPageLink string `json:"next_page_link"`
LastPageLink string `json:"last_page_link"`
UrlParams map[string]string `json:"url_params"`
}
SlotsPageData is a struct to hold info for the slots page
type SlotsFilteredPageDataSlot ¶
type SlotsFilteredPageDataSlot struct {
Slot uint64 `json:"slot"`
Epoch uint64 `json:"epoch"`
Ts time.Time `json:"ts"`
Finalized bool `json:"scheduled"`
Scheduled bool `json:"finalized"`
Status uint8 `json:"status"`
Synchronized bool `json:"synchronized"`
Proposer uint64 `json:"proposer"`
ProposerName string `json:"proposer_name"`
AttestationCount uint64 `json:"attestation_count"`
DepositCount uint64 `json:"deposit_count"`
ExitCount uint64 `json:"exit_count"`
ProposerSlashingCount uint64 `json:"proposer_slashing_count"`
AttesterSlashingCount uint64 `json:"attester_slashing_count"`
SyncParticipation float64 `json:"sync_participation"`
EthTransactionCount uint64 `json:"eth_transaction_count"`
BlobCount uint64 `json:"blob_count"`
WithEthBlock bool `json:"with_eth_block"`
EthBlockNumber uint64 `json:"eth_block_number"`
Graffiti []byte `json:"graffiti"`
ElExtraData []byte `json:"el_extra_data"`
GasUsed uint64 `json:"gas_used"`
GasLimit uint64 `json:"gas_limit"`
BlockSize uint64 `json:"block_size"`
BlockRoot []byte `json:"block_root"`
ParentRoot []byte `json:"parent_root"`
RecvDelay int32 `json:"recv_delay"`
MinExecTime uint32 `json:"min_exec_time"`
MaxExecTime uint32 `json:"max_exec_time"`
AvgExecTime uint32 `json:"avg_exec_time"`
ExecutionTimes []ExecutionTimeDetail `json:"execution_times"`
IsMevBlock bool `json:"is_mev_block"`
MevBlockRelays string `json:"mev_block_relays"`
}
type SlotsPageData ¶
type SlotsPageData struct {
Slots []*SlotsPageDataSlot `json:"slots"`
SlotCount uint64 `json:"slot_count"`
FirstSlot uint64 `json:"first_slot"`
LastSlot uint64 `json:"last_slot"`
ForkTreeWidth int `json:"forktree_width"`
DisplayChain bool `json:"dp_chain"`
DisplayEpoch bool `json:"dp_epoch"`
DisplaySlot bool `json:"dp_slot"`
DisplayStatus bool `json:"dp_status"`
DisplayTime bool `json:"dp_time"`
DisplayProposer bool `json:"dp_proposer"`
DisplayAttestations bool `json:"dp_attestations"`
DisplayDeposits bool `json:"dp_deposits"`
DisplaySlashings bool `json:"dp_slashings"`
DisplayTxCount bool `json:"dp_txcount"`
DisplaySyncAgg bool `json:"dp_syncagg"`
DisplayGraffiti bool `json:"dp_graffiti"`
DisplayElExtraData bool `json:"dp_elextra"`
DisplayGasUsage bool `json:"dp_gasusage"`
DisplayGasLimit bool `json:"dp_gaslimit"`
DisplayMevBlock bool `json:"dp_mevblock"`
DisplayBlockSize bool `json:"dp_blocksize"`
DisplayRecvDelay bool `json:"dp_recvdelay"`
DisplayExecTime bool `json:"dp_exectime"`
DisplayColCount uint64 `json:"display_col_count"`
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
CurrentPageSlot uint64 `json:"page_slot"`
PrevPageIndex uint64 `json:"prev_page_index"`
PrevPageSlot uint64 `json:"prev_page_slot"`
NextPageIndex uint64 `json:"next_page_index"`
NextPageSlot uint64 `json:"next_page_slot"`
LastPageSlot uint64 `json:"last_page_slot"`
FirstPageLink string `json:"first_page_link"`
PrevPageLink string `json:"prev_page_link"`
NextPageLink string `json:"next_page_link"`
LastPageLink string `json:"last_page_link"`
UrlParams map[string]string `json:"url_params"`
MaxSlot uint64 `json:"max_slot"`
}
SlotsPageData is a struct to hold info for the slots page
type SlotsPageDataForkGraph ¶
type SlotsPageDataSlot ¶
type SlotsPageDataSlot struct {
Slot uint64 `json:"slot"`
Epoch uint64 `json:"epoch"`
Ts time.Time `json:"ts"`
Finalized bool `json:"scheduled"`
Scheduled bool `json:"finalized"`
Status uint8 `json:"status"`
Synchronized bool `json:"synchronized"`
Proposer uint64 `json:"proposer"`
ProposerName string `json:"proposer_name"`
AttestationCount uint64 `json:"attestation_count"`
DepositCount uint64 `json:"deposit_count"`
ExitCount uint64 `json:"exit_count"`
ProposerSlashingCount uint64 `json:"proposer_slashing_count"`
AttesterSlashingCount uint64 `json:"attester_slashing_count"`
SyncParticipation float64 `json:"sync_participation"`
EthTransactionCount uint64 `json:"eth_transaction_count"`
BlobCount uint64 `json:"blob_count"`
WithEthBlock bool `json:"with_eth_block"`
EthBlockNumber uint64 `json:"eth_block_number"`
Graffiti []byte `json:"graffiti"`
ElExtraData []byte `json:"el_extra_data"`
GasUsed uint64 `json:"gas_used"`
GasLimit uint64 `json:"gas_limit"`
BlockSize uint64 `json:"block_size"`
BlockRoot []byte `json:"block_root"`
ParentRoot []byte `json:"parent_root"`
RecvDelay int32 `json:"recv_delay"`
MinExecTime uint32 `json:"min_exec_time"`
MaxExecTime uint32 `json:"max_exec_time"`
AvgExecTime uint32 `json:"avg_exec_time"`
ExecutionTimes []ExecutionTimeDetail `json:"execution_times"`
ForkGraph []*SlotsPageDataForkGraph `json:"fork_graph"`
IsMevBlock bool `json:"is_mev_block"`
MevBlockRelays string `json:"mev_block_relays"`
}
type StorageCalculatorData ¶ added in v1.19.5
type StorageCalculatorData struct {
MinEth uint64 `json:"min_eth"`
MaxEth uint64 `json:"max_eth"`
DefaultEth uint64 `json:"default_eth"`
MaxEffectiveBalanceEth float64 `json:"max_effective_balance_eth"`
ColumnSizeBytes float64 `json:"column_size_bytes"`
TotalColumns uint64 `json:"total_columns"`
CustodyRequirement float64 `json:"custody_requirement"`
ValidatorCustodyRequirement float64 `json:"validator_custody_requirement"`
SlotsPerEpoch uint64 `json:"slots_per_epoch"`
MinEpochsForBlobSidecarsRequests uint64 `json:"min_epochs_for_blob_sidecars_requests"`
}
type SubmitConsolidationPageData ¶ added in v1.12.1
type SubmitConsolidationPageDataValidator ¶ added in v1.12.1
type SubmitDepositPageData ¶ added in v1.12.1
type SubmitDepositPageData struct {
NetworkName string `json:"netname"`
PublicRPCUrl string `json:"pubrpc"`
RainbowkitProjectId string `json:"rainbowkit"`
ChainId uint64 `json:"chainid"`
GenesisForkVersion []byte `json:"genesisforkversion"`
DepositContract []byte `json:"depositcontract"`
ExplorerUrl string `json:"explorer"`
MaxEffectiveBalance string `json:"maxeffectivebalance"`
MaxEffectiveBalanceElectra string `json:"maxeffectivebalanceelectra"`
}
type SubmitDepositPageDataDeposit ¶ added in v1.12.1
type SubmitDepositPageDataDeposit struct {
Pubkey string `json:"pubkey"`
Amount uint64 `json:"amount"`
BlockNumber uint64 `json:"block"`
BlockHash string `json:"block_hash"`
BlockTime uint64 `json:"block_time"`
TxOrigin string `json:"tx_origin"`
TxTarget string `json:"tx_target"`
TxHash string `json:"tx_hash"`
}
type SubmitDepositPageDataDeposits ¶ added in v1.12.1
type SubmitDepositPageDataDeposits struct {
Deposits []SubmitDepositPageDataDeposit `json:"deposits"`
Count uint64 `json:"count"`
HaveMore bool `json:"havemore"`
}
type SubmitDepositPageDataValidator ¶ added in v1.17.0
type SubmitWithdrawalPageData ¶ added in v1.12.1
type SubmitWithdrawalPageData struct {
NetworkName string `json:"netname"`
PublicRPCUrl string `json:"pubrpc"`
RainbowkitProjectId string `json:"rainbowkit"`
ChainId uint64 `json:"chainid"`
WithdrawalContract string `json:"withdrawalcontract"`
MinValidatorBalance uint64 `json:"minbalance"`
ExplorerUrl string `json:"explorerurl"`
}
type SubmitWithdrawalPageDataValidator ¶ added in v1.12.1
type ValidatorPageData ¶
type ValidatorPageData struct {
CurrentEpoch uint64 `json:"current_epoch"`
Index uint64 `json:"index"`
Name string `json:"name"`
PublicKey []byte `json:"pubkey"`
Balance uint64 `json:"balance"`
EffectiveBalance uint64 `json:"eff_balance"`
State string `json:"state"`
BeaconState string `json:"beacon_state"`
ShowEligible bool `json:"show_eligible"`
EligibleTs time.Time `json:"eligible_ts"`
EligibleEpoch uint64 `json:"eligible_epoch"`
ShowActivation bool `json:"show_activation"`
ActivationTs time.Time `json:"activation_ts"`
ActivationEpoch uint64 `json:"activation_epoch"`
IsActive bool `json:"is_active"`
WasActive bool `json:"was_active"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
ShowExit bool `json:"show_exit"`
ExitTs time.Time `json:"exit_ts"`
ExitEpoch uint64 `json:"exit_epoch"`
WithdrawCredentials []byte `json:"withdraw_credentials"`
ShowWithdrawAddress bool `json:"show_withdraw_address"`
WithdrawAddress []byte `json:"withdraw_address"`
ExitReason string `json:"exit_reason"`
ExitReasonSlot uint64 `json:"exit_reason_slot"`
ExitReasonSlashing bool `json:"exit_reason_slashing"`
ExitReasonSlashingReason uint64 `json:"exit_reason_slashing_reason"`
ExitReasonVoluntaryExit bool `json:"exit_reason_voluntary_exit"`
ExitReasonWithdrawal bool `json:"exit_reason_withdrawal"`
ExitReasonConsolidation bool `json:"exit_reason_consolidation"`
ExitReasonTargetIndex uint64 `json:"exit_reason_target_index"`
ExitReasonTargetName string `json:"exit_reason_target_name"`
ExitReasonTxHash []byte `json:"exit_reason_tx_hash"`
ExitReasonTxDetails *ValidatorPageDataWithdrawalTxDetails `json:"exit_reason_tx_details"`
QueuedDepositCount uint64 `json:"queued_deposit_count"`
TabView string `json:"tab_view"`
ElectraIsActive bool `json:"electra_is_active"`
RecentBlocks []*ValidatorPageDataBlock `json:"recent_blocks"`
RecentBlockCount uint64 `json:"recent_block_count"`
RecentAttestations []*ValidatorPageDataAttestation `json:"recent_attestations"`
RecentAttestationCount uint64 `json:"recent_attestation_count"`
RecentDeposits []*ValidatorPageDataDeposit `json:"recent_deposits"`
RecentDepositCount uint64 `json:"recent_deposit_count"`
AdditionalInitiatedDepositCount uint64 `json:"additional_initiated_deposit_count"`
AdditionalIncludedDepositCount uint64 `json:"additional_included_deposit_count"`
ConsolidationRequests []*ValidatorPageDataConsolidation `json:"consolidation_requests"`
ConsolidationRequestCount uint64 `json:"consolidation_request_count"`
AdditionalConsolidationRequestCount uint64 `json:"additional_consolidation_request_count"`
WithdrawalRequests []*ValidatorPageDataWithdrawal `json:"withdrawal_requests"`
WithdrawalRequestCount uint64 `json:"withdrawal_request_count"`
AdditionalWithdrawalRequestCount uint64 `json:"additional_withdrawal_request_count"`
}
ValidatorPageData is a struct to hold info for the validator page
type ValidatorPageDataAttestation ¶ added in v1.13.0
type ValidatorPageDataAttestation struct {
Epoch uint64 `json:"epoch"`
Time time.Time `json:"time"`
Status uint64 `json:"status"`
Missed bool `json:"missed"`
HasDuty bool `json:"has_duty"`
Scheduled bool `json:"scheduled"`
Slot uint64 `json:"slot"`
InclusionSlot uint64 `json:"inclusion_slot"`
InclusionRoot []byte `json:"inclusion_root"`
InclusionDelay uint64 `json:"inclusion_delay"`
}
type ValidatorPageDataBlock ¶ added in v1.13.0
type ValidatorPageDataConsolidation ¶ added in v1.13.0
type ValidatorPageDataConsolidation struct {
IsIncluded bool `json:"is_included"`
SlotNumber uint64 `json:"slot"`
SlotRoot []byte `json:"slot_root"`
Time time.Time `json:"time"`
Status uint64 `json:"status"`
Result uint8 `json:"result"`
ResultMessage string `json:"result_message"`
TxStatus uint64 `json:"tx_status"`
SourceAddr []byte `json:"src_addr"`
SourceValidatorValid bool `json:"src_vvalid"`
SourceValidatorIndex uint64 `json:"src_vindex"`
SourceValidatorName string `json:"src_vname"`
SourcePublicKey []byte `json:"src_pubkey"`
TargetValidatorValid bool `json:"tgt_vvalid"`
TargetValidatorIndex uint64 `json:"tgt_vindex"`
TargetValidatorName string `json:"tgt_vname"`
TargetPublicKey []byte `json:"tgt_pubkey"`
LinkedTransaction bool `json:"linked_tx"`
TransactionHash []byte `json:"tx_hash"`
TransactionDetails *ValidatorPageDataConsolidationTxDetails `json:"tx_details"`
}
type ValidatorPageDataConsolidationTxDetails ¶ added in v1.13.0
type ValidatorPageDataDeposit ¶ added in v1.13.0
type ValidatorPageDataDeposit struct {
Index uint64 `json:"index"`
HasIndex bool `json:"has_index"`
PublicKey []byte `json:"pubkey"`
WithdrawalCreds []byte `json:"withdrawal_creds"`
Amount uint64 `json:"amount"`
Slot uint64 `json:"slot"`
SlotRoot []byte `json:"slot_root"`
Time time.Time `json:"time"`
Orphaned bool `json:"orphaned"`
ValidatorStatus string `json:"vstatus"`
ShowUpcheck bool `json:"show_upcheck"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
IsQueued bool `json:"is_queued"`
QueuePosition uint64 `json:"queue_position"`
EstimatedTime time.Time `json:"estimated_time"`
DepositorAddress []byte `json:"depositor_address"`
HasTransaction bool `json:"has_transaction"`
TransactionDetails *ValidatorPageDataDepositTxDetails `json:"tx_details"`
InvalidSignature bool `json:"invalid_signature"`
TransactionHash []byte `json:"tx_hash"`
ValidatorExists bool `json:"validator_exists"`
ValidatorIndex uint64 `json:"validator_index"`
ValidatorName string `json:"validator_name"`
}
type ValidatorPageDataDepositTxDetails ¶ added in v1.13.0
type ValidatorPageDataWithdrawal ¶ added in v1.13.0
type ValidatorPageDataWithdrawal struct {
IsIncluded bool `json:"is_included"`
SlotNumber uint64 `json:"slot"`
SlotRoot []byte `json:"slot_root"`
Time time.Time `json:"time"`
Status uint64 `json:"status"`
Result uint8 `json:"result"`
ResultMessage string `json:"result_message"`
TxStatus uint64 `json:"tx_status"`
SourceAddr []byte `json:"source_addr"`
Amount uint64 `json:"amount"`
LinkedTransaction bool `json:"linked_tx"`
TransactionHash []byte `json:"tx_hash"`
TransactionDetails *ValidatorPageDataWithdrawalTxDetails `json:"tx_details"`
}
type ValidatorPageDataWithdrawalTxDetails ¶ added in v1.13.0
type ValidatorSlotsPageData ¶
type ValidatorSlotsPageData struct {
Index uint64 `json:"index"`
Name string `json:"name"`
Slots []*ValidatorSlotsPageDataSlot `json:"slots"`
SlotCount uint64 `json:"slot_count"`
FirstSlot uint64 `json:"first_slot"`
LastSlot uint64 `json:"last_slot"`
GraffitiFilter string `json:"graffiti_filter"`
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
CurrentPageSlot uint64 `json:"page_slot"`
PrevPageIndex uint64 `json:"prev_page_index"`
PrevPageSlot uint64 `json:"prev_page_slot"`
NextPageIndex uint64 `json:"next_page_index"`
NextPageSlot uint64 `json:"next_page_slot"`
LastPageSlot uint64 `json:"last_page_slot"`
}
SlotsPageData is a struct to hold info for the slots page
type ValidatorSlotsPageDataSlot ¶
type ValidatorSlotsPageDataSlot struct {
Slot uint64 `json:"slot"`
Epoch uint64 `json:"epoch"`
Ts time.Time `json:"ts"`
Finalized bool `json:"scheduled"`
Scheduled bool `json:"finalized"`
Status uint8 `json:"status"`
Proposer uint64 `json:"proposer"`
ProposerName string `json:"proposer_name"`
AttestationCount uint64 `json:"attestation_count"`
DepositCount uint64 `json:"deposit_count"`
ExitCount uint64 `json:"exit_count"`
ProposerSlashingCount uint64 `json:"proposer_slashing_count"`
AttesterSlashingCount uint64 `json:"attester_slashing_count"`
SyncParticipation float64 `json:"sync_participation"`
EthTransactionCount uint64 `json:"eth_transaction_count"`
BlobCount uint64 `json:"blob_count"`
WithEthBlock bool `json:"with_eth_block"`
EthBlockNumber uint64 `json:"eth_block_number"`
Graffiti []byte `json:"graffiti"`
BlockRoot []byte `json:"block_root"`
}
type ValidatorsActivityPageData ¶
type ValidatorsActivityPageData struct {
ViewOptionGroupBy uint64 `json:"vopt_groupby"`
Groups []*ValidatorsActiviyPageDataGroup `json:"validators"`
GroupCount uint64 `json:"group_count"`
FirstValidator uint64 `json:"first_validx"`
LastValidator uint64 `json:"last_validx"`
Sorting string `json:"sorting"`
// Filter parameters
SearchTerm string `json:"search_term"`
FirstGroup uint64 `json:"first_group"`
LastGroup uint64 `json:"last_group"`
IsDefaultPage bool `json:"default_page"`
IsDefaultSorting bool `json:"default_sorting"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
PrevPageIndex uint64 `json:"prev_page_index"`
NextPageIndex uint64 `json:"next_page_index"`
LastPageIndex uint64 `json:"last_page_index"`
FirstPageLink string `json:"first_page_link"`
PrevPageLink string `json:"prev_page_link"`
NextPageLink string `json:"next_page_link"`
LastPageLink string `json:"last_page_link"`
ViewPageLink string `json:"view_page_link"`
}
ValidatorsActivityPageData is a struct to hold info for the validators activity page
type ValidatorsActiviyPageDataGroup ¶
type ValidatorsActiviyPageDataGroup struct {
Group string `json:"group"`
GroupLower string `json:"group_lower"`
Validators uint64 `json:"validators"`
Activated uint64 `json:"activated"`
Online uint64 `json:"online"`
Offline uint64 `json:"offline"`
Exited uint64 `json:"exited"`
Slashed uint64 `json:"slashed"`
}
type ValidatorsOfflinePageData ¶ added in v1.15.2
type ValidatorsOfflinePageData struct {
ViewOptionGroupBy uint64 `json:"vopt_groupby"`
GroupKey string `json:"group_key"`
GroupName string `json:"group_name"`
Validators []*ValidatorsPageDataValidator `json:"validators"`
ValidatorCount uint64 `json:"validator_count"`
FirstValidator uint64 `json:"first_validx"`
LastValidator uint64 `json:"last_validx"`
Sorting string `json:"sorting"`
IsDefaultSorting bool `json:"default_sorting"`
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
PrevPageIndex uint64 `json:"prev_page_index"`
NextPageIndex uint64 `json:"next_page_index"`
LastPageIndex uint64 `json:"last_page_index"`
FirstPageLink string `json:"first_page_link"`
PrevPageLink string `json:"prev_page_link"`
NextPageLink string `json:"next_page_link"`
LastPageLink string `json:"last_page_link"`
ViewPageLink string `json:"view_page_link"`
}
ValidatorsOfflinePageData is a struct to hold info for the validators offline page
type ValidatorsPageData ¶
type ValidatorsPageData struct {
FilterPubKey string `json:"filter_pubkey"`
FilterIndex string `json:"filter_index"`
FilterName string `json:"filter_name"`
FilterStatus string `json:"filter_status"`
FilterStatusOpts []ValidatorsPageDataStatusOption `json:"filter_status_opts"`
Validators []*ValidatorsPageDataValidator `json:"validators"`
ValidatorCount uint64 `json:"validator_count"`
FirstValidator uint64 `json:"first_validx"`
LastValidator uint64 `json:"last_validx"`
StateFilter string `json:"state_filter"`
Sorting string `json:"sorting"`
IsDefaultSorting bool `json:"default_sorting"`
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
PrevPageIndex uint64 `json:"prev_page_index"`
NextPageIndex uint64 `json:"next_page_index"`
LastPageIndex uint64 `json:"last_page_index"`
FilteredPageLink string `json:"filtered_page_link"`
UrlParams map[string]string `json:"url_params"`
}
ValidatorsPageData is a struct to hold info for the validators page
type ValidatorsPageDataValidator ¶
type ValidatorsPageDataValidator struct {
Index uint64 `json:"index"`
Name string `json:"name"`
PublicKey []byte `json:"pubkey"`
Balance uint64 `json:"balance"`
EffectiveBalance uint64 `json:"eff_balance"`
State string `json:"state"`
ShowUpcheck bool `json:"show_upcheck"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
ShowActivation bool `json:"show_activation"`
ActivationTs time.Time `json:"activation_ts"`
ActivationEpoch uint64 `json:"activation_epoch"`
ShowExit bool `json:"show_exit"`
ExitTs time.Time `json:"exit_ts"`
ExitEpoch uint64 `json:"exit_epoch"`
ShowWithdrawAddress bool `json:"show_withdraw_address"`
WithdrawAddress []byte `json:"withdraw_address"`
}
type ValidatorsSummaryClientBreak ¶ added in v1.19.0
type ValidatorsSummaryClientBreak struct {
ClientType string `json:"client_type"`
ClientName string `json:"client_name"`
Layer string `json:"layer"` // "execution" or "consensus"
ValidatorCount uint64 `json:"validator_count"`
EffectiveBalance uint64 `json:"effective_balance"`
OnlineEffectiveBalance uint64 `json:"online_effective_balance"`
OfflineEffectiveBalance uint64 `json:"offline_effective_balance"`
BalancePercentage float64 `json:"balance_percentage"`
OnlineValidators uint64 `json:"online_validators"`
OfflineValidators uint64 `json:"offline_validators"`
OnlinePercentage float64 `json:"online_percentage"`
HealthStatus string `json:"health_status"`
}
type ValidatorsSummaryMatrixCell ¶ added in v1.19.0
type ValidatorsSummaryMatrixCell struct {
ExecutionClient string `json:"execution_client"`
ConsensusClient string `json:"consensus_client"`
ValidatorCount uint64 `json:"validator_count"`
EffectiveBalance uint64 `json:"effective_balance"`
OnlineEffectiveBalance uint64 `json:"online_effective_balance"`
OfflineEffectiveBalance uint64 `json:"offline_effective_balance"`
BalancePercentage float64 `json:"balance_percentage"`
OnlineValidators uint64 `json:"online_validators"`
OfflineValidators uint64 `json:"offline_validators"`
OnlinePercentage float64 `json:"online_percentage"`
HealthStatus string `json:"health_status"` // "healthy", "warning", "critical", "empty"
}
type ValidatorsSummaryPageData ¶ added in v1.19.0
type ValidatorsSummaryPageData struct {
ClientMatrix [][]ValidatorsSummaryMatrixCell `json:"client_matrix"`
ExecutionClients []string `json:"execution_clients"`
ConsensusClients []string `json:"consensus_clients"`
TotalValidators uint64 `json:"total_validators"`
TotalEffectiveETH uint64 `json:"total_effective_eth"`
OverallHealthy uint64 `json:"overall_healthy"`
ClientBreakdown []ValidatorsSummaryClientBreak `json:"client_breakdown"`
NetworkHealthScore float64 `json:"network_health_score"`
}
type VoluntaryExitsPageData ¶
type VoluntaryExitsPageData struct {
FilterMinSlot uint64 `json:"filter_mins"`
FilterMaxSlot uint64 `json:"filter_maxs"`
FilterMinIndex uint64 `json:"filter_mini"`
FilterMaxIndex uint64 `json:"filter_maxi"`
FilterValidatorName string `json:"filter_vname"`
FilterWithOrphaned uint8 `json:"filter_orphaned"`
VoluntaryExits []*VoluntaryExitsPageDataExit `json:"exits"`
ExitCount uint64 `json:"exit_count"`
FirstIndex uint64 `json:"first_index"`
LastIndex uint64 `json:"last_index"`
IsDefaultPage bool `json:"default_page"`
TotalPages uint64 `json:"total_pages"`
PageSize uint64 `json:"page_size"`
CurrentPageIndex uint64 `json:"page_index"`
PrevPageIndex uint64 `json:"prev_page_index"`
NextPageIndex uint64 `json:"next_page_index"`
LastPageIndex uint64 `json:"last_page_index"`
FirstPageLink string `json:"first_page_link"`
PrevPageLink string `json:"prev_page_link"`
NextPageLink string `json:"next_page_link"`
LastPageLink string `json:"last_page_link"`
UrlParams map[string]string `json:"url_params"`
}
VoluntaryExitsPageData is a struct to hold info for the voluntary_exits page
type VoluntaryExitsPageDataExit ¶
type VoluntaryExitsPageDataExit struct {
SlotNumber uint64 `json:"slot"`
SlotRoot []byte `json:"slot_root"`
Time time.Time `json:"time"`
Orphaned bool `json:"orphaned"`
ValidatorIndex uint64 `json:"vindex"`
ValidatorName string `json:"vname"`
PublicKey []byte `json:"pubkey"`
WithdrawalCreds []byte `json:"wdcreds"`
ValidatorStatus string `json:"vstatus"`
ShowUpcheck bool `json:"show_upcheck"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
}
type WithdrawalsPageData ¶ added in v1.19.0
type WithdrawalsPageData struct {
TotalWithdrawalCount uint64 `json:"total_withdrawal_count"`
TotalExitCount uint64 `json:"total_exit_count"`
WithdrawingValidatorCount uint64 `json:"withdrawing_validator_count"`
WithdrawingAmount uint64 `json:"withdrawing_amount"`
QueuedWithdrawalCount uint64 `json:"queued_withdrawal_count"`
QueueDurationEstimate time.Time `json:"queue_duration_estimate"`
HasQueueDuration bool `json:"has_queue_duration"`
TabView string `json:"tab_view"`
RecentWithdrawals []*WithdrawalsPageDataRecentWithdrawal `json:"recent_withdrawals"`
RecentWithdrawalCount uint64 `json:"recent_withdrawal_count"`
QueuedWithdrawals []*WithdrawalsPageDataQueuedWithdrawal `json:"queued_withdrawals"`
QueuedTabCount uint64 `json:"queued_tab_count"`
}
WithdrawalsPageData is a struct to hold info for the withdrawals overview page
type WithdrawalsPageDataQueuedWithdrawal ¶ added in v1.19.0
type WithdrawalsPageDataQueuedWithdrawal struct {
ValidatorIndex uint64 `json:"validator_index"`
ValidatorName string `json:"validator_name"`
ValidatorStatus string `json:"validator_status"`
PublicKey []byte `json:"pubkey"`
Amount uint64 `json:"amount"`
WithdrawableEpoch uint64 `json:"withdrawable_epoch"`
EstimatedTime time.Time `json:"estimated_time"`
ShowUpcheck bool `json:"show_upcheck"`
UpcheckActivity uint8 `json:"upcheck_act"`
UpcheckMaximum uint8 `json:"upcheck_max"`
}
type WithdrawalsPageDataRecentWithdrawal ¶ added in v1.19.0
type WithdrawalsPageDataRecentWithdrawal struct {
IsIncluded bool `json:"is_included"`
SlotNumber uint64 `json:"slot"`
SlotRoot []byte `json:"slot_root"`
Time time.Time `json:"time"`
Status uint64 `json:"status"`
Result uint8 `json:"result"`
ResultMessage string `json:"result_message"`
TxStatus uint64 `json:"tx_status"`
SourceAddr []byte `json:"source_addr"`
Amount uint64 `json:"amount"`
ValidatorValid bool `json:"vvalid"`
ValidatorIndex uint64 `json:"vindex"`
ValidatorName string `json:"vname"`
PublicKey []byte `json:"pubkey"`
LinkedTransaction bool `json:"linked_tx"`
TransactionHash []byte `json:"tx_hash"`
}
Source Files
¶
- blobs.go
- blocks.go
- chain_forks.go
- clients_cl.go
- clients_el.go
- consolidations.go
- deposits.go
- el_consolidations.go
- el_withdrawals.go
- epoch.go
- epochs.go
- error.go
- exits.go
- forks.go
- included_deposits.go
- indexPage.go
- initiated_deposits.go
- mev_blocks.go
- queued_consolidations.go
- queued_deposits.go
- queued_withdrawals.go
- search.go
- slashings.go
- slot.go
- slots.go
- slots_filtered.go
- submit_consolidation.go
- submit_deposit.go
- submit_withdrawal.go
- validator.go
- validator_slots.go
- validators.go
- validators_activity.go
- validators_offline.go
- validators_summary.go
- voluntary_exits.go
- withdrawals.go