Documentation
¶
Index ¶
- Variables
- func ValidateStruct(s interface{}) error
- type AAContractInteract
- type AAContractInteractRequest
- type AAContractInteractResponse
- type AATxnDominanceDetail
- type AATxnDominanceRequest
- type AATxnDominanceResponse
- type AaAccountDataVo
- type AaAccountNetworkRequestVo
- type AaAccountNetworkResponseVo
- type AaAccountRecord
- type AaAccountRequestVo
- type AaBlocksVo
- type AaTransactionListRequestVo
- type AaTransactionListResponse
- type AaTransactionRecord
- type AaTransactionRequestVo
- type AccountTypeRequest
- type AccountTypeResponse
- type AddMonitorRequest
- type AddMonitorResponse
- type AssetDetail
- type AssetDetailRequest
- type AssetDetailResponse
- type AssetInfo
- type BalanceDetail
- type BlockScanNetworkBlockDoResult
- type BlockVo
- type BlockWithBlockByNumber
- type BlockWithGetBlockReceipt
- type BlocksVo
- type BundlerBalanceRequest
- type BundlerBalanceResponse
- type BundlerDetail
- type BundlerTransferRequest
- type BundlerTransferResponse
- type BundlersVo
- type BundlesVo
- type ByContractNum
- type ByDailyStatisticTime
- type ByDominanceTime
- type ByUserOpsTypeNum
- type ByWhaleDailyStatisticTime
- type CallDataInfo
- type DailyStatisticDetail
- type DailyStatisticRequest
- type DailyStatisticResponse
- type Error
- type FactoryDbVo
- type FactoryDetail
- type FactoryVo
- type GetAaBlocksRequest
- type GetAaBlocksResponse
- type GetAccountsRequest
- type GetAccountsResponse
- type GetBlockRequest
- type GetBlockResponse
- type GetBlocksRequest
- type GetBlocksResponse
- type GetBundlerRequest
- type GetBundlerResponse
- type GetBundlersRequest
- type GetBundlersResponse
- type GetBundlesRequest
- type GetBundlesResponse
- type GetFactoriesRequest
- type GetFactoriesResponse
- type GetFactoryAccountsRequest
- type GetFactoryRequest
- type GetFactoryResponse
- type GetNetworksResponse
- type GetPaymasterOverviewRequest
- type GetPaymasterOverviewResponse
- type GetPaymastersRequest
- type GetPaymastersResponse
- type GetReserveRequest
- type GetReserveResponse
- type GetUserOpsRequest
- type GetUserOpsResponse
- type HomeMevRequest
- type HomeMevResponse
- type HotAARequest
- type HotAAResponse
- type JsonResponse
- type LatestUserOpsRequest
- type LatestUserOpsResponse
- type ListBlockMEVBundlersRequest
- type ListBundlerMEVBundlersRequest
- type ListMEVBundlersRequest
- type ListMEVBundlersResponse
- type ListWatchingAddressRequest
- type ListWatchingAddressResponse
- type MEVBundlerAssets
- type MevInfo
- type MevInfoRequest
- type MevInfoResponse
- type NetworkVo
- type Pagination
- type PaginationAny
- type PaginationRequest
- type PaymasterDetail
- type PaymastersVo
- type RemoveMonitorRequest
- type RemoveMonitorResponse
- type ReserveDetail
- type SearchAllAccount
- type SearchAllBlock
- type SearchAllRequest
- type SearchAllResponse
- type SearchAllResponseData
- type SearchAllTransaction
- type SetErrorOption
- type SetResponseOption
- type TokenDetail
- type TopBundlerRequest
- type TopBundlerResponse
- type TopFactoryRequest
- type TopFactoryResponse
- type TopPaymasterRequest
- type TopPaymasterResponse
- type TopRequest
- type TopWhaleInfo
- type TopWhaleRequest
- type TopWhaleResponse
- type TransactionListRequestVo
- type TransactionListResponse
- type TransactionRecord
- type TransactionRequestVo
- type TransactionWithBlockByNumber
- type TransferInfo
- type UserBalanceRequest
- type UserBalanceResponse
- type UserOpVo
- type UserOpsAnalysisListRequestVo
- type UserOpsAnalysisListResponse
- type UserOpsAnalysisRecord
- type UserOpsAnalysisRequestVo
- type UserOpsType
- type UserOpsTypeRequest
- type UserOpsTypeResponse
- type ValidateError
- type ValidateErrors
- type WatchingAddress
- type WhaleChartDetail
- type WhaleChartRequest
- type WhaleChartResponse
- type WhaleOverviewRequest
- type WhaleOverviewResponse
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // todo common error ErrSystem = _newError(10001, SetErrorMessage("system error")) ErrParams = _newError(10002, SetErrorMessage("params error")) ErrDataNotFound = _newError(10004, SetErrorMessage("data not found")) ErrNetworkNotFound = ErrDataNotFound.SetMessage("network not found") MonitorNotExist = _newError(20001, SetErrorMessage("The address is not in monitor list.")) MonitorExist = _newError(20002, SetErrorMessage("The address is already in monitor list.")) NewUserErr = _newError(20003, SetErrorMessage("The asset information is being synchronized.")) )
View Source
var Validate *validator.Validate
Functions ¶
func ValidateStruct ¶
func ValidateStruct(s interface{}) error
Types ¶
type AAContractInteract ¶
type AAContractInteractResponse ¶
type AAContractInteractResponse struct {
TotalNum int64 `json:"totalNum"`
AAContractInteract []*AAContractInteract
}
type AATxnDominanceDetail ¶
type AATxnDominanceRequest ¶
type AATxnDominanceResponse ¶
type AATxnDominanceResponse struct {
DominanceDetails []*AATxnDominanceDetail
}
type AaAccountDataVo ¶
type AaAccountDataVo struct {
// ID of the ent.
ID string `json:"address"`
AddressLabel string `json:"addressLabel"`
// AaType holds the value of the "aa_type" field.
AaType string `json:"aaType"`
// Factory holds the value of the "factory" field.
Factory string `json:"factory"`
// FactoryTime holds the value of the "factory_time" field.
FactoryTime int64 `json:"factoryTime"`
// UserOpsNum holds the value of the "user_ops_num" field.
UserOpsNum int64 `json:"userOpsNum"`
// TotalBalanceUsd holds the value of the "total_balance_usd" field.
TotalBalanceUsd decimal.Decimal `json:"totalBalanceUsd"`
// UpdateTime holds the value of the "update_time" field.
UpdateTime int64 `json:"updateTime"`
}
AaAccountData is the model entity for the AaAccountData schema.
type AaAccountNetworkRequestVo ¶
type AaAccountNetworkRequestVo struct {
Address string `json:"address" params:"address" validate:"required,min=3"`
}
type AaAccountNetworkResponseVo ¶
type AaAccountNetworkResponseVo struct {
Chains []string `json:"chains"`
}
type AaAccountRecord ¶
type AaAccountRequestVo ¶
type AaBlocksVo ¶
type AaBlocksVo struct {
// ID of the ent.
Number int64 `json:"number,omitempty"`
// Time holds the value of the "time" field.
Time int64 `json:"time,omitempty"`
// Hash holds the value of the "hash" field.
Hash string `json:"hash,omitempty"`
// UseropCount holds the value of the "userop_count" field.
UseropCount int `json:"useropCount,omitempty"`
// UseropMevCount holds the value of the "userop_mev_count" field.
UseropMevCount int `json:"useropMevCount,omitempty"`
// BundlerProfit holds the value of the "bundler_profit" field.
BundlerProfit decimal.Decimal `json:"bundlerProfit,omitempty"`
BundlerProfitUsd decimal.Decimal `json:"bundlerProfitUsd,omitempty"`
// CreateTime holds the value of the "create_time" field.
CreateTime int64 `json:"createTime,omitempty"`
MevCount int64 `json:"mevCount"`
BundlerLoss decimal.Decimal `json:"BundlerLoss"`
BundlerLossUsd decimal.Decimal `json:"BundlerLossUsd"`
MevProfits decimal.Decimal `json:"MevProfits"`
MevProfitsUsd decimal.Decimal `json:"MevProfitsUsd"`
}
type AaTransactionListRequestVo ¶
type AaTransactionListRequestVo struct {
PaginationRequest
Network string `json:"network" params:"network" validate:"required,min=3"`
TxHash string `json:"txHash" params:"txHash"`
Address string `json:"address" params:"address"`
}
type AaTransactionListResponse ¶
type AaTransactionListResponse struct {
Pagination
Records []*AaTransactionRecord `json:"records"`
}
type AaTransactionRecord ¶
type AaTransactionRecord struct {
Hash string `json:"hash"`
Time int64 `json:"time"`
BlockHash string `json:"blockHash"`
BlockNumber int64 `json:"blockNumber"`
UseropCount int64 `json:"useropCount"`
IsMev bool `json:"isMev"`
BundlerProfit decimal.Decimal `json:"bundlerProfit"`
BundlerProfitUsd decimal.Decimal `json:"bundlerProfitUsd"`
Nonce *decimal.Decimal `json:"nonce"`
TransactionIndex *decimal.Decimal `json:"transactionIndex"`
FromAddr *string `json:"fromAddr"`
ToAddr *string `json:"toAddr"`
Value *decimal.Decimal `json:"value"`
GasPrice *decimal.Decimal `json:"gasPrice"`
Gas *decimal.Decimal `json:"gas"`
Input *string `json:"input"`
R *string `json:"r"`
S *string `json:"s"`
V *decimal.Decimal `json:"v"`
ChainID *int64 `json:"chainID"`
Type *string `json:"type"`
MaxFeePerGas *decimal.Decimal `json:"maxFeePerGas"`
MaxPriorityFeePerGas *decimal.Decimal `json:"maxPriorityFeePerGas"`
AccessList *pgtype.JSONB `json:"accessList"`
Method string `json:"method"`
ContractAddress string `json:"contractAddress"`
CumulativeGasUsed int64 `json:"cumulativeGasUsed"`
EffectiveGasPrice string `json:"effective_gas_price"`
GasUsed decimal.Decimal `json:"gasUsed"`
Status string `json:"status"`
TokenPriceUsd decimal.Decimal `json:"tokenPriceUsd"`
GasPriceUsd decimal.Decimal `json:"gasPriceUsd"`
ValueUsd decimal.Decimal `json:"valueUsd"`
}
type AaTransactionRequestVo ¶
type AccountTypeRequest ¶
type AccountTypeResponse ¶
type AddMonitorRequest ¶
type AddMonitorResponse ¶
type AddMonitorResponse struct {
}
type AssetDetail ¶
type AssetDetailRequest ¶
type AssetDetailResponse ¶
type AssetDetailResponse struct {
TotalAssetUsd decimal.Decimal `json:"totalAssetUsd"`
AssetDetails []AssetDetail `json:"assetDetails"`
}
type BalanceDetail ¶
type BlockScanNetworkBlockDoResult ¶
type BlockScanNetworkBlockDoResult struct {
Block *BlockWithBlockByNumber
Receipts []*BlockWithGetBlockReceipt
}
type BlockVo ¶
type BlockVo struct {
// ID of the ent.
ID int64 `json:"number"`
// Time holds the value of the "time" field.
Time time.Time `json:"time"`
// CreateTime holds the value of the "create_time" field.
CreateTime time.Time `json:"createTime"`
// Hash holds the value of the "hash" field.
Hash string `json:"hash"`
// ParentHash holds the value of the "parent_hash" field.
ParentHash string `json:"parentHash"`
// Nonce holds the value of the "nonce" field.
Nonce decimal.Decimal `json:"nonce"`
// Sha3Uncles holds the value of the "sha3_uncles" field.
Sha3Uncles string `json:"sha3Uncles"`
// LogsBloom holds the value of the "logs_bloom" field.
LogsBloom string `json:"logsBloom"`
// TransactionsRoot holds the value of the "transactions_root" field.
TransactionsRoot string `json:"transactionsRoot"`
// StateRoot holds the value of the "state_root" field.
StateRoot string `json:"stateRoot"`
// ReceiptsRoot holds the value of the "receipts_root" field.
ReceiptsRoot string `json:"receiptsRoot"`
// Miner holds the value of the "miner" field.
Miner string `json:"miner"`
// MixHash holds the value of the "mix_hash" field.
MixHash string `json:"mixHash"`
// Difficulty holds the value of the "difficulty" field.
Difficulty decimal.Decimal `json:"difficulty"`
// TotalDifficulty holds the value of the "total_difficulty" field.
TotalDifficulty decimal.Decimal `json:"totalDifficulty"`
// ExtraData holds the value of the "extra_data" field.
ExtraData string `json:"extraData"`
// Size holds the value of the "size" field.
Size decimal.Decimal `json:"size"`
// GasLimit holds the value of the "gas_limit" field.
GasLimit decimal.Decimal `json:"gasLimit"`
// GasUsed holds the value of the "gas_used" field.
GasUsed decimal.Decimal `json:"gasUsed"`
// Timestamp holds the value of the "timestamp" field.
Timestamp decimal.Decimal `json:"timestamp"`
// TransactionCount holds the value of the "transaction_count" field.
TransactionCount decimal.Decimal `json:"transactionCount"`
// Uncles holds the value of the "uncles" field.
Uncles []string `json:"uncles"`
// BaseFeePerGas holds the value of the "base_fee_per_gas" field.
BaseFeePerGas decimal.Decimal `json:"baseFeePerGas"`
}
type BlockWithBlockByNumber ¶
type BlockWithBlockByNumber struct {
BaseFeePerGas string `json:"baseFeePerGas"`
BlobGasUsed string `json:"blobGasUsed"`
Difficulty string `json:"difficulty"`
ExcessBlobGas string `json:"excessBlobGas"`
ExtraData string `json:"extraData"`
GasLimit string `json:"gasLimit"`
GasUsed string `json:"gasUsed"`
Hash string `json:"hash"`
LogsBloom string `json:"logsBloom"`
Miner string `json:"miner"`
MixHash string `json:"mixHash"`
Nonce string `json:"nonce"`
Number string `json:"number"`
ParentBeaconBlockRoot string `json:"parentBeaconBlockRoot"`
ParentHash string `json:"parentHash"`
ReceiptsRoot string `json:"receiptsRoot"`
Sha3Uncles string `json:"sha3Uncles"`
Size string `json:"size"`
StateRoot string `json:"stateRoot"`
Timestamp string `json:"timestamp"`
TotalDifficulty string `json:"totalDifficulty"`
Transactions []TransactionWithBlockByNumber `json:"transactions"`
TransactionsRoot string `json:"transactionsRoot"`
Uncles []string `json:"uncles"`
Withdrawals []struct {
Index string `json:"index"`
ValidatorIndex string `json:"validatorIndex"`
Address string `json:"address"`
Amount string `json:"amount"`
} `json:"withdrawals"`
WithdrawalsRoot string `json:"withdrawalsRoot"`
}
type BlockWithGetBlockReceipt ¶
type BlockWithGetBlockReceipt struct {
BlockHash string `json:"blockHash"`
BlockNumber string `json:"blockNumber"`
ContractAddress string `json:"contractAddress"`
CumulativeGasUsed string `json:"cumulativeGasUsed"`
EffectiveGasPrice string `json:"effectiveGasPrice"`
From string `json:"from"`
GasUsed string `json:"gasUsed"`
Logs []struct {
Address string `json:"address"`
Topics []string `json:"topics"`
Data string `json:"data"`
BlockNumber string `json:"blockNumber"`
TransactionHash string `json:"transactionHash"`
TransactionIndex string `json:"transactionIndex"`
BlockHash string `json:"blockHash"`
LogIndex string `json:"logIndex"`
Removed bool `json:"removed"`
} `json:"logs"`
LogsBloom string `json:"logsBloom"`
Status string `json:"status"`
To string `json:"to"`
TransactionHash string `json:"transactionHash"`
TransactionIndex string `json:"transactionIndex"`
Type string `json:"type"`
}
type BundlerBalanceRequest ¶
type BundlerBalanceResponse ¶
type BundlerDetail ¶
type BundlerTransferRequest ¶
type BundlerTransferRequest struct {
Network string `json:"network"`
Address string `json:"address"`
PaginationRequest
}
type BundlerTransferResponse ¶
type BundlerTransferResponse struct {
Pagination
TransferList []TransferInfo `json:"transferList"`
}
type BundlersVo ¶
type BundlersVo struct {
// Bundler holds the value of the "bundler" field.
Bundler string `json:"bundler"`
BundlerLabel string `json:"bundlerLabel"`
// BundlesNum holds the value of the "bundles_num" field.
BundlesNum int64 `json:"bundlesNum"`
// BundleRate holds the value of the "bundle_rate" field.
BundleRate decimal.Decimal `json:"bundleRate"`
// UserOpsNum holds the value of the "user_ops_num" field.
UserOpsNum int64 `json:"userOpsNum"`
// SuccessRate holds the value of the "success_rate" field.
SuccessRate decimal.Decimal `json:"successRate"`
// SuccessRateD1 holds the value of the "success_rate_d1" field.
SuccessRateD1 decimal.Decimal `json:"successRateD1"`
// BundlesNumD1 holds the value of the "bundles_num_d1" field.
BundlesNumD1 int64 `json:"bundlesNumD1"`
// FeeEarnedD1 holds the value of the "fee_earned_d1" field.
FeeEarnedD1 decimal.Decimal `json:"feeEarnedD1"`
// FeeEarnedUsdD1 holds the value of the "fee_earned_usd_d1" field.
FeeEarnedUsdD1 decimal.Decimal `json:"feeEarnedUsdD1"`
}
type BundlesVo ¶
type BundlesVo struct {
// TxHash holds the value of the "tx_hash" field.
TxHash string `json:"txHash"`
// BlockNumber holds the value of the "block_number" field.
BlockNumber int64 `json:"blockNumber"`
// Network holds the value of the "network" field.
Network string `json:"network"`
// Bundler holds the value of the "bundler" field.
Bundler string `json:"bundler"`
// EntryPoint holds the value of the "entry_point" field.
EntryPoint string `json:"entryPoint"`
// UserOpsNum holds the value of the "user_ops_num" field.
UserOpsNum int64 `json:"userOpsNum"`
// TxValue holds the value of the "tx_value" field.
TxValue decimal.Decimal `json:"txValue"`
// Fee holds the value of the "fee" field.
Fee decimal.Decimal `json:"fee"`
// Status holds the value of the "status" field.
Status int `json:"status"`
// TxTime holds the value of the "tx_time" field.
TxTime int64 `json:"txTime"`
}
type ByContractNum ¶
type ByContractNum []*AAContractInteract
func (ByContractNum) Len ¶
func (b ByContractNum) Len() int
func (ByContractNum) Less ¶
func (b ByContractNum) Less(i, j int) bool
func (ByContractNum) Swap ¶
func (b ByContractNum) Swap(i, j int)
type ByDailyStatisticTime ¶
type ByDailyStatisticTime []*DailyStatisticDetail
func (ByDailyStatisticTime) Len ¶
func (b ByDailyStatisticTime) Len() int
func (ByDailyStatisticTime) Less ¶
func (b ByDailyStatisticTime) Less(i, j int) bool
func (ByDailyStatisticTime) Swap ¶
func (b ByDailyStatisticTime) Swap(i, j int)
type ByDominanceTime ¶
type ByDominanceTime []*AATxnDominanceDetail
func (ByDominanceTime) Len ¶
func (b ByDominanceTime) Len() int
func (ByDominanceTime) Less ¶
func (b ByDominanceTime) Less(i, j int) bool
func (ByDominanceTime) Swap ¶
func (b ByDominanceTime) Swap(i, j int)
type ByUserOpsTypeNum ¶
type ByUserOpsTypeNum []*UserOpsType
func (ByUserOpsTypeNum) Len ¶
func (b ByUserOpsTypeNum) Len() int
func (ByUserOpsTypeNum) Less ¶
func (b ByUserOpsTypeNum) Less(i, j int) bool
func (ByUserOpsTypeNum) Swap ¶
func (b ByUserOpsTypeNum) Swap(i, j int)
type ByWhaleDailyStatisticTime ¶
type ByWhaleDailyStatisticTime []*WhaleChartDetail
func (ByWhaleDailyStatisticTime) Len ¶
func (b ByWhaleDailyStatisticTime) Len() int
func (ByWhaleDailyStatisticTime) Less ¶
func (b ByWhaleDailyStatisticTime) Less(i, j int) bool
func (ByWhaleDailyStatisticTime) Swap ¶
func (b ByWhaleDailyStatisticTime) Swap(i, j int)
type CallDataInfo ¶
type CallDataInfo struct {
Time int64 `json:"time"`
UserOpsHash string `json:"userOpsHash"`
TxHash string `json:"txHash"`
BlockNumber int64 `json:"blockNumber"`
Network string `json:"network"`
Sender string `json:"sender"`
Target string `json:"target"`
TxValue decimal.Decimal `json:"txValue"`
Source string `json:"source"`
Calldata string `json:"calldata"`
TxTime int64 `json:"txTime"`
CreateTime int64 `json:"createTime"`
UpdateTime int64 `json:"updateTime"`
AaIndex int `json:"aaIndex"`
}
type DailyStatisticDetail ¶
type DailyStatisticDetail struct {
Time int64 `json:"time"`
UserOpsNum int64 `json:"userOpsNum"`
ActiveAAWallet int64 `json:"activeAAWallet"`
AccumulativeGasFee decimal.Decimal `json:"accumulativeGasFee"`
AccumulativeGasFeeUsd decimal.Decimal `json:"accumulativeGasFeeUsd"`
PaymasterGasPaid decimal.Decimal `json:"paymasterGasPaid"`
PaymasterGasPaidUsd decimal.Decimal `json:"paymasterGasPaidUsd"`
BundlerGasProfit decimal.Decimal `json:"bundlerGasProfit"`
BundlerGasProfitUsd decimal.Decimal `json:"bundlerGasProfitUsd"`
}
type DailyStatisticRequest ¶
type DailyStatisticResponse ¶
type DailyStatisticResponse struct {
UserOpsNum int64 `json:"userOpsNum"`
Ups decimal.Decimal `json:"ups"`
ActiveAAWallet int64 `json:"activeAAWallet"`
AccumulativeGasFee decimal.Decimal `json:"accumulativeGasFee"`
AccumulativeGasFeeUsd decimal.Decimal `json:"accumulativeGasFeeUsd"`
PaymasterGasPaid decimal.Decimal `json:"paymasterGasPaid"`
PaymasterGasPaidUsd decimal.Decimal `json:"paymasterGasPaidUsd"`
BundlerGasProfit decimal.Decimal `json:"bundlerGasProfit"`
BundlerGasProfitUsd decimal.Decimal `json:"bundlerGasProfitUsd"`
LastStatisticTime int64 `json:"lastStatisticTime"`
Details []*DailyStatisticDetail
}
type Error ¶
type Error struct {
Code int `json:"code"`
Message string `json:"message"`
Data any `json:"data,omitempty"`
}
func NewError ¶
func NewError(code int, sets ...SetErrorOption) *Error
func (*Error) SetMessage ¶
type FactoryDbVo ¶
type FactoryDbVo struct {
// ID of the ent.
ID string `json:"factory"`
Label *pgtype.TextArray `json:"label"`
// AccountNum holds the value of the "account_num" field.
AccountNum int `json:"accountNum"`
// AccountNumD1 holds the value of the "account_num_d1" field.
AccountNumD1 int `json:"accountNumD1"`
}
type FactoryDetail ¶
type FactoryVo ¶
type FactoryVo struct {
// ID of the ent.
ID string `json:"factory"`
FactoryLabel string `json:"factoryLabel"`
// AccountNum holds the value of the "account_num" field.
AccountNum int `json:"accountNum"`
// AccountNumD1 holds the value of the "account_num_d1" field.
AccountNumD1 int `json:"accountNumD1"`
// Dominance holds the value of the "dominance" field.
Dominance decimal.Decimal `json:"dominance"`
// DominanceD1 holds the value of the "dominance_d1" field.
DominanceD1 decimal.Decimal `json:"dominanceD1"`
}
type GetAaBlocksRequest ¶
type GetAaBlocksRequest struct {
PaginationRequest
Network string `json:"network" params:"network" validate:"required,min=3"`
LatestBlockNumber int64 `json:"latestBlockNumber" params:"latestBlockNumber" validate:"min=0"`
}
type GetAaBlocksResponse ¶
type GetAaBlocksResponse struct {
Pagination
Records []*AaBlocksVo `json:"records"`
}
type GetAccountsRequest ¶
type GetAccountsRequest struct {
PaginationRequest
Network string `json:"network" params:"network" validate:"required,min=3"`
Address string `json:"address" params:"address"`
Factory string `json:"factory" params:"factory"`
}
type GetAccountsResponse ¶
type GetAccountsResponse struct {
Pagination
Records []*AaAccountDataVo `json:"records"`
}
type GetBlockRequest ¶
type GetBlockResponse ¶
type GetBlockResponse struct {
Block *BlockVo `json:"block"`
}
type GetBlocksRequest ¶
type GetBlocksRequest struct {
PaginationRequest
Network string `json:"network" params:"network" validate:"required,min=3"`
}
type GetBlocksResponse ¶
type GetBlocksResponse struct {
Pagination
Records []*BlocksVo `json:"records"`
}
type GetBundlerRequest ¶
type GetBundlerResponse ¶
type GetBundlerResponse struct {
// FeeEarnedUsdD1 holds the value of the "fee_earned_usd_d1" field.
FeeEarnedUsdD1 decimal.Decimal `json:"feeEarnedUsdD1"`
// FeeEarnedUsd holds the value of the "fee_earned_usd" field.
FeeEarnedUsd decimal.Decimal `json:"feeEarnedUsd"`
// SuccessRateD1 holds the value of the "success_rate_d1" field.
SuccessRateD1 decimal.Decimal `json:"successRateD1"`
// SuccessRate holds the value of the "success_rate" field.
SuccessRate decimal.Decimal `json:"successRate"`
// BundleRate holds the value of the "bundle_rate" field.
BundleRate decimal.Decimal `json:"bundleRate"`
Rank int64 `json:"rank"`
TotalBundlers int64 `json:"totalBundlers"`
Label []string `json:"label"`
}
type GetBundlersRequest ¶
type GetBundlersRequest struct {
PaginationRequest
Network string `json:"network" params:"network" validate:"required,min=3"`
}
type GetBundlersResponse ¶
type GetBundlersResponse struct {
Pagination
Records []*BundlersVo `json:"records"`
}
type GetBundlesRequest ¶
type GetBundlesRequest struct {
PaginationRequest
Network string `json:"network" params:"network" validate:"required,min=3"`
}
type GetBundlesResponse ¶
type GetBundlesResponse struct {
Pagination
Records []*BundlesVo `json:"records"`
}
type GetFactoriesRequest ¶
type GetFactoriesRequest struct {
PaginationRequest
Network string `json:"network" params:"network" validate:"required,min=3"`
}
type GetFactoriesResponse ¶
type GetFactoriesResponse struct {
Pagination
Records []*FactoryVo `json:"records"`
}
type GetFactoryAccountsRequest ¶
type GetFactoryAccountsRequest struct {
PaginationRequest
Network string `json:"network" params:"network" validate:"required,min=3"`
Factory string `json:"factory" params:"factory" validate:"required,hexAddress"`
}
type GetFactoryRequest ¶
type GetFactoryResponse ¶
type GetFactoryResponse struct {
TotalAccountDeployNum int `json:"accountDeployNum"`
AccountDeployNumD1 int `json:"accountDeployNumD1"`
Dominance decimal.Decimal `json:"dominance"`
UserOpsNum int64 `json:"userOpsNum"`
Rank int64 `json:"rank"`
TotalNumber int64 `json:"totalNumber"`
Label []string `json:"label"`
}
type GetNetworksResponse ¶
type GetNetworksResponse struct {
Pagination
Records []*NetworkVo `json:"records"`
}
type GetPaymasterOverviewResponse ¶
type GetPaymasterOverviewResponse struct {
SponsorGasFeeUsd24h decimal.Decimal `json:"sponsorGasFee24h"`
UserOpsNum24h int64 `json:"userOpsNum24h"`
SponsorGasFeeUsdTotal decimal.Decimal `json:"sponsorGasFeeTotal"`
UserOpsNumTotal int64 `json:"userOpsNumTotal"`
Dominance decimal.Decimal `json:"dominance"`
Rank int `json:"rank"`
TotalNumber int64 `json:"totalNumber"`
AccountBalance decimal.Decimal `json:"accountBalance"`
EstimateTxnNum int `json:"estimateTxnNum"`
Label []string `json:"label"`
}
type GetPaymastersRequest ¶
type GetPaymastersRequest struct {
PaginationRequest
Network string `json:"network" params:"network" validate:"required,min=3"`
}
type GetPaymastersResponse ¶
type GetPaymastersResponse struct {
Pagination
Records []*PaymastersVo `json:"records"`
}
type GetReserveRequest ¶
type GetReserveRequest struct {
PaginationRequest
Paymaster string `json:"paymaster"`
Network string `json:"network"`
}
type GetReserveResponse ¶
type GetReserveResponse struct {
Pagination
Records []*ReserveDetail
}
type GetUserOpsRequest ¶
type GetUserOpsRequest struct {
PaginationRequest
Network string `json:"network" params:"network" validate:"required,min=3"`
LatestBlockNumber int64 `json:"latestBlockNumber" params:"latestBlockNumber" validate:"min=0"`
BlockNumber int64 `json:"blockNumber" params:"blockNumber" validate:"min=0"`
StartTime int64 `json:"startTime"`
EndTime int64 `json:"endTime"`
TxHash string `json:"txHash" params:"txHash" validate:"omitempty,txHash"`
Bundler string `json:"bundler" params:"bundler" validate:"omitempty,hexAddress"`
Paymaster string `json:"paymaster" params:"paymaster" validate:"omitempty,hexAddress"`
Factory string `json:"factory" params:"factory" validate:"omitempty,hexAddress"`
Account string `json:"account" params:"account" validate:"omitempty,hexAddress"`
HashTerm string `json:"hashTerm" params:"hashTerm"`
}
type GetUserOpsResponse ¶
type GetUserOpsResponse struct {
Pagination
Records []*UserOpVo `json:"records"`
}
type HomeMevRequest ¶
type HomeMevRequest struct {
Network string `json:"network"`
BlockNum int64 `json:"blockNum"`
PaginationRequest
}
type HomeMevResponse ¶
type HomeMevResponse struct {
MevInfos []MevInfo `json:"mevInfos"`
Pagination
}
type HotAARequest ¶
type HotAARequest struct {
Network string `json:"network"`
}
type HotAAResponse ¶
type HotAAResponse struct {
TokenDetails []TokenDetail `json:"tokenDetails"`
}
type JsonResponse ¶
type JsonResponse struct {
Version string `json:"jsonrpc,omitempty"`
Id string `json:"id,omitempty"`
Error *Error `json:"error,omitempty"`
Result any `json:"result,omitempty"`
}
func NewErrorJsonResponse ¶
func NewErrorJsonResponse(error *Error, sets ...SetResponseOption) *JsonResponse
func NewJsonResponse ¶
func NewJsonResponse(sets ...SetResponseOption) *JsonResponse
func NewResultJsonResponse ¶
func NewResultJsonResponse(result any, sets ...SetResponseOption) *JsonResponse
type LatestUserOpsRequest ¶
type LatestUserOpsRequest struct {
Network string `json:"network"`
}
type LatestUserOpsResponse ¶
type ListBlockMEVBundlersRequest ¶
type ListBlockMEVBundlersRequest struct {
PaginationRequest
Network string `json:"network" params:"network" validate:"required,min=3"`
BlockNumber int64 `json:"blockNumber" params:"blockNumber" validate:"required"`
}
type ListBundlerMEVBundlersRequest ¶
type ListBundlerMEVBundlersRequest struct {
PaginationRequest
Network string `json:"network" params:"network" validate:"required,min=3"`
Bundler string `json:"bundler" params:"bundler" validate:"required"`
}
type ListMEVBundlersRequest ¶
type ListMEVBundlersRequest struct {
PaginationRequest
Network string `json:"network" params:"network" validate:"required,min=3"`
}
type ListMEVBundlersResponse ¶
type ListMEVBundlersResponse struct {
Pagination
Records []*MEVBundlerAssets `json:"records"`
}
type ListWatchingAddressRequest ¶
type ListWatchingAddressRequest struct {
PaginationRequest
Network string `json:"network" params:"network" validate:"required,min=3"`
UserAddress string `json:"userAddress" param:"userAddress" validate:"required"`
}
type ListWatchingAddressResponse ¶
type ListWatchingAddressResponse struct {
Pagination
Monitors []*WatchingAddress `json:"monitors"`
}
type MEVBundlerAssets ¶
type MEVBundlerAssets struct {
Timestamp int64 `json:"timestamp"`
UserOpHash string `json:"userOpHash"`
TxHash string `json:"txHash"`
MevType string `json:"mevType"`
Victim string `json:"victim"`
VictimType string `json:"victimType"`
Attacker string `json:"attacker"`
BundlerLoss decimal.Decimal `json:"bundlerLoss"`
BundlerLossInUsd decimal.Decimal `json:"bundlerLossInUsd"`
MevProfits decimal.Decimal `json:"mevProfits"`
MevProfitsInUsd decimal.Decimal `json:"mevProfitsInUsd"`
}
type MevInfo ¶
type MevInfo struct {
Time int64 `json:"time"`
Type string `json:"type"`
Victim string `json:"victim"`
VictimType string `json:"victimType"`
Attacker string `json:"attacker"`
MevProfit decimal.Decimal `json:"mevProfit"`
MevProfitUsd decimal.Decimal `json:"mevProfitUsd"`
BlockNum int64 `json:"blockNum"`
}
type MevInfoRequest ¶
type MevInfoRequest struct {
Network string `json:"network"`
}
type MevInfoResponse ¶
type NetworkVo ¶
type NetworkVo struct {
// Name holds the value of the "name" field.
Name string `json:"name"`
// ChainName holds the value of the "chain_name" field.
ChainName string `json:"chainName"`
// Network holds the value of the "network" field.
Network string `json:"network"`
ChainID int64 `json:"chainId"`
// IsTestnet holds the value of the "is_testnet" field.
IsTestnet bool `json:"isTestnet"`
// Scan holds the value of the "scan" field.
Scan string `json:"scan"`
// ScanTx holds the value of the "scan_tx" field.
ScanTx string `json:"scanTx"`
// ScanBlock holds the value of the "scan_block" field.
ScanBlock string `json:"scanBlock"`
// ScanAddress holds the value of the "scan_address" field.
ScanAddress string `json:"scanAddress"`
// ScanName holds the value of the "scan_name" field.
ScanName string `json:"scanName"`
ChainIcon string `json:"chainIcon"`
CoinIcon string `json:"coinIcon"`
NativeSymbol string `json:"nativeSymbol"`
}
type Pagination ¶
type PaginationAny ¶
type PaginationAny struct {
Pagination
Records any `json:"records"`
}
type PaginationRequest ¶
type PaginationRequest struct {
TotalCount int `json:"totalCount" query:"totalCount" params:"totalCount" `
PerPage int `json:"perPage" query:"perPage" params:"perPage" validate:"required,min=1"`
Page int `json:"page" query:"page" params:"page" validate:"required,min=1,max=10000"` // page number
Sort int `json:"sort" query:"sort" params:"sort" validate:"min=0,max=50"` // sort field idx
Order int `json:"order" query:"order" params:"order" validate:"min=-1,max=1"` // order sort : -1 desc 1 asc
Select []string `json:"-" query:"-" params:"-" `
}
func NewDefaultPaginationRequest ¶
func NewDefaultPaginationRequest() PaginationRequest
func (*PaginationRequest) GetOffset ¶
func (r *PaginationRequest) GetOffset() int
func (*PaginationRequest) GetPage ¶
func (r *PaginationRequest) GetPage() int
func (*PaginationRequest) GetPerPage ¶
func (r *PaginationRequest) GetPerPage() int
type PaymasterDetail ¶
type PaymastersVo ¶
type PaymastersVo struct {
// Paymaster holds the value of the "paymaster" field.
Paymaster string `json:"paymaster"`
PaymasterLabel string `json:"paymasterLabel"`
// UserOpsNum holds the value of the "user_ops_num" field.
UserOpsNum int64 `json:"userOpsNum"`
// UserOpsNumD1 holds the value of the "user_ops_num_d1" field.
UserOpsNumD1 int64 `json:"userOpsNumD1"`
// Reserve holds the value of the "reserve" field.
Reserve decimal.Decimal `json:"reserve"`
// GasSponsored holds the value of the "gas_sponsored" field.
GasSponsored decimal.Decimal `json:"gasSponsored"`
// GasSponsoredUsd holds the value of the "gas_sponsored_usd" field.
GasSponsoredUsd decimal.Decimal `json:"gasSponsoredUsd"`
}
type RemoveMonitorRequest ¶
type RemoveMonitorResponse ¶
type RemoveMonitorResponse struct {
}
type ReserveDetail ¶
type SearchAllAccount ¶
type SearchAllBlock ¶
type SearchAllRequest ¶
type SearchAllResponse ¶
type SearchAllResponse struct {
//WalletAccounts []*SearchAllAccount `json:"walletAccount"`
//Paymasters []*SearchAllAccount `json:"paymaster"`
//Bundlers []*SearchAllAccount `json:"bundler"`
//Transactions []*SearchAllTransaction `json:"transactions"`
//Blocks []*SearchAllBlock `json:"blocks"`
Data []*SearchAllResponseData
}
type SearchAllResponseData ¶
type SearchAllTransaction ¶
type SetErrorOption ¶
func SetErrorData ¶
func SetErrorData(data any) SetErrorOption
func SetErrorMessage ¶
func SetErrorMessage(message string) SetErrorOption
type SetResponseOption ¶
type SetResponseOption func(*JsonResponse) *JsonResponse
func SetResponseAutoDataError ¶
func SetResponseAutoDataError(err error) SetResponseOption
func SetResponseError ¶
func SetResponseError(err error) SetResponseOption
func SetResponseId ¶
func SetResponseId(id string) SetResponseOption
func SetResponseResult ¶
func SetResponseResult(result any) SetResponseOption
type TokenDetail ¶
type TopBundlerRequest ¶
type TopBundlerRequest struct {
PaginationRequest
Network string `json:"network"`
}
type TopBundlerResponse ¶
type TopBundlerResponse struct {
Pagination
BundlerDetails []*BundlerDetail
}
type TopFactoryRequest ¶
type TopFactoryRequest struct {
PaginationRequest
Network string `json:"network"`
}
type TopFactoryResponse ¶
type TopFactoryResponse struct {
Pagination
FactoryDetails []*FactoryDetail
}
type TopPaymasterRequest ¶
type TopPaymasterRequest struct {
PaginationRequest
Network string `json:"network"`
}
type TopPaymasterResponse ¶
type TopPaymasterResponse struct {
Pagination
PaymasterDetails []*PaymasterDetail
}
type TopRequest ¶
type TopRequest struct {
Type string
}
type TopWhaleInfo ¶
type TopWhaleRequest ¶
type TopWhaleRequest struct {
PaginationRequest
RankLimit int `json:"rankLimit"`
Network string `json:"network"`
}
type TopWhaleResponse ¶
type TopWhaleResponse struct {
Pagination
TopWhaleRankList []*TopWhaleInfo
}
type TransactionListRequestVo ¶
type TransactionListRequestVo struct {
PaginationRequest
Network string `json:"network" params:"network" validate:"required,min=3"`
TxHash string `json:"txHash" params:"txHash"`
}
type TransactionListResponse ¶
type TransactionListResponse struct {
Pagination
Records []*TransactionRecord `json:"records"`
}
type TransactionRecord ¶
type TransactionRecord struct {
Hash string `json:"hash"`
Time int64 `json:"time"`
CreateTime int64 `json:"createTime"`
BlockHash string `json:"blockHash"`
BlockNumber int64 `json:"blockNumber"`
Nonce decimal.Decimal `json:"nonce"`
TransactionIndex decimal.Decimal `json:"transactionIndex"`
FromAddr string `json:"fromAddr"`
ToAddr string `json:"toAddr"`
Value decimal.Decimal `json:"value"`
GasPrice decimal.Decimal `json:"gasPrice"`
Gas decimal.Decimal `json:"gas"`
Input string `json:"input"`
R string `json:"r"`
S string `json:"s"`
V decimal.Decimal `json:"v"`
ChainID int64 `json:"chainId"`
Type string `json:"type"`
MaxFeePerGas *decimal.Decimal `json:"maxFeePerGas"`
MaxPriorityFeePerGas *decimal.Decimal `json:"maxPriorityFeePerGas"`
AccessList *pgtype.JSONB `json:"accessList"`
}
type TransactionRequestVo ¶
type TransactionWithBlockByNumber ¶
type TransactionWithBlockByNumber struct {
BlockHash string `json:"blockHash"`
BlockNumber string `json:"blockNumber"`
From string `json:"from"`
Gas string `json:"gas"`
GasPrice string `json:"gasPrice"`
MaxPriorityFeePerGas string `json:"maxPriorityFeePerGas,omitempty"`
MaxFeePerGas string `json:"maxFeePerGas,omitempty"`
Hash string `json:"hash"`
Input string `json:"input"`
Nonce string `json:"nonce"`
To string `json:"to"`
TransactionIndex string `json:"transactionIndex"`
Value string `json:"value"`
Type string `json:"type"`
AccessList []struct {
Address string `json:"address"`
StorageKeys []string `json:"storageKeys"`
} `json:"accessList,omitempty"`
ChainId string `json:"chainId,omitempty"`
V string `json:"v"`
YParity string `json:"yParity,omitempty"`
R string `json:"r"`
S string `json:"s"`
}
type TransferInfo ¶
type TransferInfo struct {
Id int64 `json:"id"`
TxnHash string `json:"txnHash"`
Source string `json:"source"`
Timestamp int64 `json:"timestamp"`
From string `json:"from"`
To string `json:"to"`
Value decimal.Decimal `json:"value"`
TokenSymbol string `json:"tokenSymbol"`
TokenImage string `json:"tokenImage"`
}
type UserBalanceRequest ¶
type UserBalanceResponse ¶
type UserBalanceResponse struct {
TotalUsd decimal.Decimal `json:"totalUsd"`
BalanceDetails []*BalanceDetail
}
type UserOpVo ¶
type UserOpVo struct {
// Time holds the value of the "time" field.
Time int64 `json:"time"`
// UserOperationHash holds the value of the "user_operation_hash" field.
UserOperationHash string `json:"userOperationHash"`
// TxHash holds the value of the "tx_hash" field.
TxHash string `json:"txHash"`
// BlockNumber holds the value of the "block_number" field.
BlockNumber int64 `json:"blockNumber"`
// Network holds the value of the "network" field.
Network string `json:"network"`
// Sender holds the value of the "sender" field.
Sender string `json:"sender"`
SenderLabel string `json:"senderLabel"`
// Target holds the value of the "target" field.
Target string `json:"target"`
TargetLabel string `json:"targetLabel"`
// TxValue holds the value of the "tx_value" field.
TxValue decimal.Decimal `json:"txValue"`
// Fee holds the value of the "fee" field.
Fee decimal.Decimal `json:"fee"`
// Status holds the value of the "status" field.
Status int32 `json:"status"`
// Source holds the value of the "source" field.
Source string `json:"source"`
// Targets holds the value of the "targets" field.
Targets []string `json:"targets"`
// TargetsCount holds the value of the "targets_count" field.
TargetsCount int `json:"targetsCount"`
// Bundler holds the value of the "bundler" field.
Bundler string `json:"bundler"`
BundlerLabel string `json:"bundlerLabel"`
// Paymaster holds the value of the "paymaster" field.
Paymaster string `json:"paymaster"`
PaymasterLabel string `json:"paymasterLabel"`
}
type UserOpsAnalysisListRequestVo ¶
type UserOpsAnalysisListRequestVo struct {
PaginationRequest
Network string `json:"network" params:"network" validate:"required,min=3"`
TxHash string `json:"txHash" params:"txHash"`
}
type UserOpsAnalysisListResponse ¶
type UserOpsAnalysisListResponse struct {
Pagination
Records []*UserOpsAnalysisRecord `json:"records"`
}
type UserOpsAnalysisRecord ¶
type UserOpsAnalysisRecord struct {
UserOperationHash string `json:"userOperationHash"`
Time int64 `json:"time"`
TxHash string `json:"txHash"`
BlockNumber int64 `json:"blockNumber"`
Network string `json:"network"`
Sender string `json:"sender"`
Target string `json:"target"`
Targets []string `json:"targets"`
TargetsCount int `json:"targetsCount"`
TxValue decimal.Decimal `json:"txValue"`
Fee decimal.Decimal `json:"fee"`
Bundler string `json:"bundler"`
BundlerLabel []string `json:"bundlerLabel"`
EntryPoint string `json:"entryPoint"`
Factory string `json:"factory"`
Paymaster string `json:"paymaster"`
PaymasterLabel []string `json:"paymasterLabel"`
PaymasterAndData string `json:"paymasterAndData"`
Signature string `json:"signature"`
Calldata string `json:"calldata"`
CalldataContract string `json:"calldataContract"`
Nonce int64 `json:"nonce"`
CallGasLimit int64 `json:"callGasLimit"`
PreVerificationGas int64 `json:"preVerificationGas"`
VerificationGasLimit int64 `json:"verificationGasLimit"`
MaxFeePerGas int64 `json:"maxFeePerGas"`
MaxPriorityFeePerGas int64 `json:"maxPriorityFeePerGas"`
TxTime int64 `json:"txTime"`
InitCode string `json:"initCode"`
Status int32 `json:"status"`
Source string `json:"source"`
ActualGasCost int64 `json:"actualGasCost"`
ActualGasUsed int64 `json:"actualGasUsed"`
CreateTime int64 `json:"createTime"`
UpdateTime int64 `json:"updateTime"`
UsdAmount *decimal.Decimal `json:"usdAmount"`
ConfirmBlock int64 `json:"confirmBlock"`
AaIndex int `json:"aaIndex"`
FeeUsd decimal.Decimal `json:"feeUsd"`
TxValueUsd decimal.Decimal `json:"txValueUsd"`
BundlerProfit decimal.Decimal `json:"bundlerProfit"`
BundlerProfitUsd decimal.Decimal `json:"bundlerProfitUsd"`
CallData []CallDataInfo `json:"callData"`
}
type UserOpsType ¶
type UserOpsTypeRequest ¶
type UserOpsTypeResponse ¶
type UserOpsTypeResponse struct {
UserOpTypes []*UserOpsType
}
type ValidateError ¶
type ValidateErrors ¶
type ValidateErrors struct {
Validates []*ValidateError `json:"validates"`
}
func (*ValidateErrors) Error ¶
func (v *ValidateErrors) Error() string
type WatchingAddress ¶
type WatchingAddress struct {
Network string `json:"network"`
AddressType string `json:"addressType"`
MonitorAddress string `json:"monitorAddress"`
Balance decimal.Decimal `json:"balance"`
Profits24H decimal.Decimal `json:"profits24H"`
SponsoredGas24H decimal.Decimal `json:"sponsoredGas24H"`
TotalUserOps int64 `json:"totalUserOps"`
}
type WhaleChartDetail ¶
type WhaleChartRequest ¶
type WhaleChartResponse ¶
type WhaleChartResponse struct {
Details []*WhaleChartDetail `json:"details"`
}
type WhaleOverviewRequest ¶
type WhaleOverviewRequest struct {
Network string `json:"network"`
}
Source Files
¶
Click to show internal directories.
Click to hide internal directories.