blockbook-client
Typescript library for interacting with Trezor's blockbook API.
Usage
npm i blockbook-client
In typescript
import { Blockbook } from 'blockbook-client'
const blockbook = new Blockbook({
nodes: ['btc1.trezor.io', 'btc2.trezor.io'],
})
await blockbook.getStatus()
await blockbook.getBlockHash(100000)
await blockbook.getTx('b62aa5203fa27495ea431b91a5090aab741c8c39cc03ec4c1f4f4e157507595f')
await blockbook.getTxSpecific('b62aa5203fa27495ea431b91a5090aab741c8c39cc03ec4c1f4f4e157507595f')
await blockbook.getAddressDetails('193P6LtvS4nCnkDvM9uXn1gsSRqh4aDAz7')
await blockbook.getXpubDetails('xpub661MyMwAqRbcFtXgS5sYJABqqG9YLmC4Q1Rdap9gSE8NqtwybGhePY2gZ29ESFjqJoCu1Rupje8YtGqsefD265TMg7usUDFdp6W1EGMcet8', { details: 'txids' })
await blockbook.getUtxosForAddress('193P6LtvS4nCnkDvM9uXn1gsSRqh4aDAz7')
await blockbook.getUtxosForXpub('xpub661MyMwAqRbcFtXgS5sYJABqqG9YLmC4Q1Rdap9gSE8NqtwybGhePY2gZ29ESFjqJoCu1Rupje8YtGqsefD265TMg7usUDFdp6W1EGMcet8', { confirmed: true })
await blockbook.getBlock(100000)
await blockbook.sendTx('<hex tx data>')
await blockbook.connect()
await blockbook.subscribeNewBlock(({ height, hash }) => console.log('new block', height, hash))
await blockbook.subscribeAddresses(['193P6LtvS4nCnkDvM9uXn1gsSRqh4aDAz7'], ({ address, tx }) => console.log('new tx for address', address, tx))
await blockbook.unsubscribeNewBlock()
await blockbook.unsubscribeAddresses()
await blockbook.disconnect()
import { BlockbookBitcoin, BlockbookEthereum } from 'blockbook-client'
In javascript
const { Blockbook } = require('blockbook-client')
const blockbook = new Blockbook({
nodes: ['btc1.trezor.io', 'btc2.trezor.io'],
disableTypeValidation: true,
})
Docs
open docs/index.html