Documentation ¶
Index ¶
- Variables
- func NewAPIError(s string, public bool) error
- func UniqueTxidsInReverse(txids []string) []string
- type APIError
- type Address
- type AddressUtxo
- type Block
- type BlockbookInfo
- type Blocks
- type Paging
- type ScriptPubKey
- type ScriptSig
- type SystemInfo
- type Tx
- type Vin
- type Vout
- type Worker
- func (w *Worker) GetAddress(address string, page int, txsOnPage int, onlyTxids bool) (*Address, error)
- func (w *Worker) GetAddressUtxo(address string, onlyConfirmed bool) ([]AddressUtxo, error)
- func (w *Worker) GetBlock(bid string, page int, txsOnPage int) (*Block, error)
- func (w *Worker) GetBlocks(page int, blocksOnPage int) (*Blocks, error)
- func (w *Worker) GetSpendingTxid(txid string, n int) (string, error)
- func (w *Worker) GetSystemInfo(internal bool) (*SystemInfo, error)
- func (w *Worker) GetTransaction(txid string, spendingTxs bool) (*Tx, error)
Constants ¶
This section is empty.
Variables ¶
var Text struct { BlockbookAbout, TOSLink string }
Text contains static overridable texts used in explorer
Functions ¶
func NewAPIError ¶ added in v0.1.1
NewAPIError creates ApiError
func UniqueTxidsInReverse ¶
UniqueTxidsInReverse reverts the order of transactions (so that newest are first) and removes duplicate transactions
Types ¶
type APIError ¶ added in v0.1.1
APIError extends error by information if the error details should be returned to the end user
type Address ¶
type Address struct { Paging AddrStr string `json:"addrStr"` Balance string `json:"balance"` TotalReceived string `json:"totalReceived"` TotalSent string `json:"totalSent"` UnconfirmedBalance string `json:"unconfirmedBalance"` UnconfirmedTxApperances int `json:"unconfirmedTxApperances"` TxApperances int `json:"txApperances"` Transactions []*Tx `json:"txs,omitempty"` Txids []string `json:"transactions,omitempty"` }
Address holds information about address and its transactions
type AddressUtxo ¶ added in v0.1.1
type AddressUtxo struct { Txid string `json:"txid"` Vout uint32 `json:"vout"` Amount string `json:"amount"` AmountSat big.Int `json:"satoshis"` Height int `json:"height,omitempty"` Confirmations int `json:"confirmations"` }
AddressUtxo holds information about address and its transactions
type Block ¶ added in v0.1.0
type Block struct { Paging bchain.BlockInfo TxCount int `json:"TxCount"` Transactions []*Tx `json:"txs,omitempty"` }
Block contains information about block
type BlockbookInfo ¶ added in v0.1.0
type BlockbookInfo struct { Coin string `json:"coin"` Host string `json:"host"` Version string `json:"version"` GitCommit string `json:"gitcommit"` BuildTime string `json:"buildtime"` SyncMode bool `json:"syncMode"` InitialSync bool `json:"initialsync"` InSync bool `json:"inSync"` BestHeight uint32 `json:"bestHeight"` LastBlockTime time.Time `json:"lastBlockTime"` InSyncMempool bool `json:"inSyncMempool"` LastMempoolTime time.Time `json:"lastMempoolTime"` MempoolSize int `json:"mempoolSize"` DbSize int64 `json:"dbSize"` DbSizeFromColumns int64 `json:"dbSizeFromColumns,omitempty"` DbColumns []common.InternalStateColumn `json:"dbColumns,omitempty"` About string `json:"about"` }
BlockbookInfo contains information about the running blockbook instance
type Paging ¶ added in v0.1.0
type Paging struct { Page int `json:"page"` TotalPages int `json:"totalPages"` ItemsOnPage int `json:"itemsOnPage"` }
Paging contains information about paging for address, blocks and block
type ScriptPubKey ¶
type ScriptPubKey struct { Hex string `json:"hex"` Asm string `json:"asm,omitempty"` AddrDesc bchain.AddressDescriptor `json:"-"` Addresses []string `json:"addresses"` Searchable bool `json:"-"` Type string `json:"type,omitempty"` }
ScriptPubKey contains output script and addresses derived from it
type SystemInfo ¶ added in v0.1.0
type SystemInfo struct { Blockbook *BlockbookInfo `json:"blockbook"` Backend *bchain.ChainInfo `json:"backend"` }
SystemInfo contains information about the running blockbook and backend instance
type Tx ¶
type Tx struct { Txid string `json:"txid"` Version int32 `json:"version,omitempty"` Locktime uint32 `json:"locktime,omitempty"` Vin []Vin `json:"vin"` Vout []Vout `json:"vout"` Blockhash string `json:"blockhash,omitempty"` Blockheight int `json:"blockheight"` Confirmations uint32 `json:"confirmations"` Time int64 `json:"time,omitempty"` Blocktime int64 `json:"blocktime"` ValueOut string `json:"valueOut"` ValueOutSat big.Int `json:"-"` Size int `json:"size,omitempty"` ValueIn string `json:"valueIn"` ValueInSat big.Int `json:"-"` Fees string `json:"fees"` FeesSat big.Int `json:"-"` Hex string `json:"hex"` }
Tx holds information about a transaction
type Vin ¶
type Vin struct { Txid string `json:"txid"` Vout uint32 `json:"vout"` Sequence int64 `json:"sequence,omitempty"` N int `json:"n"` ScriptSig ScriptSig `json:"scriptSig"` AddrDesc bchain.AddressDescriptor `json:"-"` Addresses []string `json:"addresses"` Searchable bool `json:"-"` Value string `json:"value"` ValueSat big.Int `json:"-"` }
Vin contains information about single transaction input
type Vout ¶
type Vout struct { Value string `json:"value"` ValueSat big.Int `json:"-"` N int `json:"n"` ScriptPubKey ScriptPubKey `json:"scriptPubKey"` Spent bool `json:"spent"` SpentTxID string `json:"spentTxId,omitempty"` SpentIndex int `json:"spentIndex,omitempty"` SpentHeight int `json:"spentHeight,omitempty"` }
Vout contains information about single transaction output
type Worker ¶
type Worker struct {
// contains filtered or unexported fields
}
Worker is handle to api worker
func NewWorker ¶
func NewWorker(db *db.RocksDB, chain bchain.BlockChain, txCache *db.TxCache, is *common.InternalState) (*Worker, error)
NewWorker creates new api worker
func (*Worker) GetAddress ¶
func (w *Worker) GetAddress(address string, page int, txsOnPage int, onlyTxids bool) (*Address, error)
GetAddress computes address value and gets transactions for given address
func (*Worker) GetAddressUtxo ¶ added in v0.1.1
func (w *Worker) GetAddressUtxo(address string, onlyConfirmed bool) ([]AddressUtxo, error)
GetAddressUtxo returns unspent outputs for given address
func (*Worker) GetSpendingTxid ¶ added in v0.1.0
GetSpendingTxid returns transaction id of transaction that spent given output
func (*Worker) GetSystemInfo ¶ added in v0.1.0
func (w *Worker) GetSystemInfo(internal bool) (*SystemInfo, error)
GetSystemInfo returns information about system