Skip to content
go-tezos Is a Golang library that exposes the Tezos RPC, along with some helper functions that may be used in common scenarios.
Go Makefile
Branch: master
Clone or download


A Tezos Go Library

Go Tezos is a GoLang driven library for your Tezos node.


Get goTezos

go get

Quick Start

Go Tezos is split into multiple services underneath to help organize it's functionality and also makes the library easier to maintain.

To understand how Go Tezos works, take a look at the GoTezos Structure:

type GoTezos struct {
	Client    tzc.TezosClient
	Constants network.Constants
	Block     block.TezosBlockService
	Snapshot  snapshot.TezosSnapshotService
	Cycle     cycle.TezosCycleService
	Account   account.TezosAccountService
	Delegate  delegate.TezosDelegateService
	Network   network.TezosNetworkService
	Operation operations.TezosOperationsService
	Contract  contracts.TezosContractsService
	Node      node.TezosNodeService

You can see GoTezos is a wrapper for several services such as block, Snapshot, Cycle, Account, Delegate, Network, Operation, Node, and Contract. Each service has it's own set of functions. You can see examples of using the Block and SnapShot service below.

Getting A Block

package main

import (
	goTezos ""

func main() {
	gt, err := goTezos.NewGoTezos("")
	if err != nil {
		fmt.Printf("could not connect to network: %v", err)

	block, err := gt.Block.Get(1000)
	if err != nil {

Getting a Snapshot For A Cycle

	snapshot, err := gt.Snapshot.Get(50)
	if err != nil {

More Documentation

See github pages


The Makefile

The makefile is there as a helper to run quality code checks. To run vet and staticchecks please run:

make checks

Contributers: A Special Thank You


This project is licensed under the MIT License - see the file for details

You can’t perform that action at this time.