Skip to content

Commit 7d9896e

Browse files
Merge pull request #20 from dipdup-io/feature/tzkt-smart-rollup
Feature: add TzKT smart rollup endpoints
2 parents 4294fc7 + 20f40f9 commit 7d9896e

File tree

2 files changed

+58
-0
lines changed

2 files changed

+58
-0
lines changed

tzkt/api/smart_rollups.go

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package api
2+
3+
import (
4+
"context"
5+
6+
"github.com/dipdup-net/go-lib/tzkt/data"
7+
)
8+
9+
// GetSmartRollupsCount - Returns a total number of smart rollups.
10+
func (tzkt *API) GetSmartRollupsCount(ctx context.Context) (uint64, error) {
11+
return tzkt.count(ctx, "/v1/smart_rollups/count", nil)
12+
}
13+
14+
// GetSmartRollups -
15+
func (tzkt *API) GetSmartRollups(ctx context.Context, filters map[string]string) (response []data.SmartRollup, err error) {
16+
err = tzkt.json(ctx, "/v1/smart_rollups", filters, false, &response)
17+
return
18+
}

tzkt/data/smart_rollups.go

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
package data
2+
3+
import "time"
4+
5+
type SmartRollup struct {
6+
Type string `json:"type"`
7+
ID uint64 `json:"id"`
8+
Address string `json:"address"`
9+
Alias string `json:"alias"`
10+
Creator Address `json:"creator"`
11+
PvmKind string `json:"pvmKind"`
12+
GenesisCommitment string `json:"genesisCommitment"`
13+
LastCommitment string `json:"lastCommitment"`
14+
InboxLevel uint64 `json:"inboxLevel"`
15+
TotalStakers uint64 `json:"totalStakers"`
16+
ActiveStakers uint64 `json:"activeStakers"`
17+
ExecutedCommitments uint64 `json:"executedCommitments"`
18+
CementedCommitments uint64 `json:"cementedCommitments"`
19+
PendingCommitments uint64 `json:"pendingCommitments"`
20+
RefutedCommitments uint64 `json:"refutedCommitments"`
21+
OrphanCommitments uint64 `json:"orphanCommitments"`
22+
SmartRollupBonds uint64 `json:"smartRollupBonds"`
23+
ActiveTokensCount uint64 `json:"activeTokensCount"`
24+
TokenBalancesCount uint64 `json:"tokenBalancesCount"`
25+
TokenTransfersCount uint64 `json:"tokenTransfersCount"`
26+
NumTransactions uint64 `json:"numTransactions"`
27+
TransferTicketCount uint64 `json:"transferTicketCount"`
28+
SmartRollupCementCount uint64 `json:"smartRollupCementCount"`
29+
SmartRollupExecuteCount uint64 `json:"smartRollupExecuteCount"`
30+
SmartRollupOriginateCount uint64 `json:"smartRollupOriginateCount"`
31+
SmartRollupPublishCount uint64 `json:"smartRollupPublishCount"`
32+
SmartRollupRecoverBondCount uint64 `json:"smartRollupRecoverBondCount"`
33+
SmartRollupRefuteCount uint64 `json:"smartRollupRefuteCount"`
34+
RefutationGamesCount uint64 `json:"refutationGamesCount"`
35+
ActiveRefutationGamesCount uint64 `json:"activeRefutationGamesCount"`
36+
FirstActivity uint64 `json:"firstActivity"`
37+
FirstActivityTime time.Time `json:"firstActivityTime"`
38+
LastActivity uint64 `json:"lastActivity"`
39+
LastActivityTime time.Time `json:"lastActivityTime"`
40+
}

0 commit comments

Comments
 (0)