Javascript Client Wrappers for the HelloBlock API.
This module is published in NPM:
$ npm install helloblock-js --savevar 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.
networkstring Setting the target network (mainnet,testnet)versionstring Pointing to particular API version (v1)debugstring 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.
errerror object if there is something wrong in the API call or if status code is above 400responseresponse object contains the full body of the response, including all the required meta-data
{
"status": "success",
"data": {
"transactions": [
{
// transaction
},
{
// transaction
}
// ...more transactions...
]
}
}resourceresource 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
txHashstringcallbackfunction
helloblock.transactions.get('2542cd64e02d902975dc6e2e97797ceec5a84e8597c80d22a9e2dbd16e748738', function (err, resp, resource) {
/*
use the resource
*/
});Get transactions by an array of txHashes
txHashesArray[String]callbackfunction
var txHashes = ['2542cd64e02d902975dc6e2e97797ceec5a84e8597c80d22a9e2dbd16e748738', '6f9e9570881e781db8c137c84c111a138e4a022e6b2def5e2a1589a802fe25f3']
helloblock.transactions.getBatch(txHashes, function (err, resp, resource) {
/*
use the resource
*/
});Get latest transactions sorted by timestamp
optionsobject (limit{integer},offset{integer})callbackfunction
helloblock.transactions.latest({limit: 10, offset: 10}, function (err, resp, resource) {
/*
use the resource
*/
});Propagate a raw transaction to the Bitcoin network
rawTxHexstringcallbackfunction
var rawTxHex = '0100000001ec71e2ceac84....'
helloblock.transactions.latest(rawTxHex, function (err, resp, resource) {
/*
use the resource
*/
});All tests should be run with npm:
$ npm test
