Javascript Client Wrappers for the HelloBlock API.
This module is published in NPM:
$ npm install helloblock-js --save
var helloblock = require("../lib/helloblock")({
network: 'testnet',
debug: true
})
This generates a new API client. It accepts an options argument which is used to configure the client.
network
string Setting the target network (mainnet
,testnet
)version
string Pointing to particular API version (v1
)debug
string Output debugging information to the console
This options argument can will be an object with the properties specified above.
The API calls are generally constructed as resource
and action
:
The second last argument is an optional [options]
argument and the last argument is the callback.
err
error object if there is something wrong in the API call or if status code is above 400response
response object contains the full body of the response, including all the required meta-data
{
"status": "success",
"data": {
"transactions": [
{
// transaction
},
{
// transaction
}
// ...more transactions...
]
}
}
resource
resource object contains only the actual data of the response
[
{
// transaction
},
{
// transaction
}
// ...more transactions...
]
helloblock.resource.action('data', [options], function (err, response, resource) {
if (err) {
throw err;
}
});
The following API resources are exposes in the module:
- transactions
- addresses
- addresses.get(address, callback)
- addresses.batchGet(addresses, callback)
- addresses.getTransactions(addresses, [options], callback)
- addresses.getUnspents(addresses, [options], callback)
- blocks
- blocks.get(blockId, callback)
- blocks.latest([options], callback)
- faucet
- faucet.get(type, callback)
- faucet.withdraw(toAddress, value, callback)
- wallet
- wallet.get(addresses, [options], callback)
Get a transaction by its txHash
txHash
stringcallback
function
helloblock.transactions.get('2542cd64e02d902975dc6e2e97797ceec5a84e8597c80d22a9e2dbd16e748738', function (err, resp, resource) {
/*
use the resource
*/
});
Get transactions by an array of txHashes
txHashes
Array[String]callback
function
var txHashes = ['2542cd64e02d902975dc6e2e97797ceec5a84e8597c80d22a9e2dbd16e748738', '6f9e9570881e781db8c137c84c111a138e4a022e6b2def5e2a1589a802fe25f3']
helloblock.transactions.getBatch(txHashes, function (err, resp, resource) {
/*
use the resource
*/
});
Get latest transactions sorted by timestamp
options
object (limit
{integer},offset
{integer})callback
function
helloblock.transactions.latest({limit: 10, offset: 10}, function (err, resp, resource) {
/*
use the resource
*/
});
Propagate a raw transaction to the Bitcoin network
rawTxHex
stringcallback
function
var rawTxHex = '0100000001ec71e2ceac84....'
helloblock.transactions.latest(rawTxHex, function (err, resp, resource) {
/*
use the resource
*/
});
All tests should be run with npm:
$ npm test