API使用指南

说明

{
    "status": <状态>, // 返回状态'success'为请求返回成功
    "data": <数据>,   // 返回请求数据
    "message": <信息> // 返回错误或相关信息
}

所有API请求为HTTP(S) GET请求,返回数据为JSON格式,标准为:

常用API (支持HTTPS)

难度:

GET: /api/v1/btc/chain/getdifficulty

URL: https://blockmeta.com/api/v1/btc/chain/getdifficulty

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/chain/getdifficulty

主链上的最大高度:

GET: /api/v1/btc/chain/getblockcount

URL: https://blockmeta.com/api/v1/btc/chain/getblockcount

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/chain/getblockcount

流通的比特币总数:

GET: /api/v1/btc/chain/totalbtc

URL: https://blockmeta.com/api/v1/btc/chain/totalbtc

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/chain/totalbtc

最新块的Hash值:

GET: /api/v1/btc/chain/lastblockhash

URL: https://blockmeta.com/api/v1/btc/chain/lastblockhash

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/chain/lastblockhash

最新块的开采者:

GET: /api/v1/btc/chain/lastminer

URL: https://blockmeta.com/api/v1/btc/chain/lastminer

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/chain/lastminer

当前挖矿奖励:

GET: /api/v1/btc/chain/reward

URL: https://blockmeta.com/api/v1/btc/chain/reward

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/chain/reward

块平均交易数(默认是100个块):

GET: /api/v1/btc/chain/avgtxnum

URL: https://blockmeta.com/api/v1/btc/chain/avgtxnum

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/chain/avgtxnum

块平均间隔时间(默认是2016个块):

GET: /api/v1/btc/chain/interval

URL: https://blockmeta.com/api/v1/btc/chain/interval

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/chain/interval

下次变更难度(估计值):

GET: /api/v1/btc/chain/nextdifficulty

URL: https://blockmeta.com/api/v1/btc/chain/nextdifficulty

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/chain/nextdifficulty

全网未确认交易数:

GET: /api/v1/btc/chain/unconfirmedcount

URL: https://blockmeta.com/api/v1/btc/chain/unconfirmedcount

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/chain/unconfirmedcount

全网算力(估计值,单位: hash/s):

GET: /api/v1/btc/chain/hashrate

URL: https://blockmeta.com/api/v1/btc/chain/hashrate

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/chain/hashrate

区块链总大小(单位: byte):

GET: /api/v1/btc/chain/chainsize

URL: https://blockmeta.com/api/v1/btc/chain/chainsize

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/chain/chainsize

24小时内矿池挖矿的比例:

GET: /api/v1/btc/chain/24hrpoolstat

URL: https://blockmeta.com/api/v1/btc/chain/24hrpoolstat

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/chain/24hrpoolstat

24小时内产块数:

GET: /api/v1/btc/chain/24hrblockcount

URL: https://blockmeta.com/api/v1/btc/chain/24hrblockcount

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/chain/24hrblockcount

实时行情:

GET: /api/v1/btc/chain/ticker

URL: https://blockmeta.com/api/v1/btc/chain/ticker

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/chain/ticker

区块数据API (支持HTTPS)

区块统计数据:

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/block/123456?q=info 
curl -X GET https://blockmeta.com/api/v1/btc/block/0000000000000000012ea09ad27b0bbdfa004c110cc8c4ea914d75b28a5c8df0?q=info

block_height 也可以支持 first创世块, last最新块,比如:

GET: /api/v1/btc/block/<first|last>?q=info

URL: https://blockmeta.com/api/v1/btc/block/last?q=info

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/block/last?q=info

区块交易数据

GET: /api/v1/btc/block/<block_height|block_hash>?q=tx

URL: https://blockmeta.com/api/v1/btc/block/123455?q=tx

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/block/123455?q=tx

block_height 也可以支持 first创世块, last最新块,比如:

GET: /api/v1/btc/block/<first|last>?q=tx

URL: https://blockmeta.com/api/v1/btc/block/last?q=tx

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/block/last?q=tx

交易API (支持HTTPS)

交易统计数据

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/tx/6b2b797ad47ca3f39593534cc6d03a46a6a7b5f47d9434dc1d119b97643c7682?q=info

地址API (支持HTTPS)

地址统计数据

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/address/1Q3FsFTs6Qz3LJ3rqCStbLJmomBqqKRx1Z?q=info
curl -X GET https://blockmeta.com/api/v1/btc/address/fcb822804656cafd49daff890eaccfe95f59cfaf?q=info

地址未确认交易数据

GET: /api/v1/btc/address/<address|hash160>?q=unconfirmed

URL: https://blockmeta.com/api/v1/btc/address/1Q3FsFTs6Qz3LJ3rqCStbLJmomBqqKRx1Z?q=unconfirmed

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/address/1Q3FsFTs6Qz3LJ3rqCStbLJmomBqqKRx1Z?q=unconfirmed
curl -X GET https://blockmeta.com/api/v1/btc/address/fcb822804656cafd49daff890eaccfe95f59cfaf?q=unconfirmed

地址未花费输入

比特币:

GET: /api/v1/btc/address/<address|hash160>?q=unspent

URL: https://blockmeta.com/api/v1/btc/address/1Q3FsFTs6Qz3LJ3rqCStbLJmomBqqKRx1Z?q=unspent

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/address/1Q3FsFTs6Qz3LJ3rqCStbLJmomBqqKRx1Z?q=unspent

区块链工具API (支持HTTPS)

hash160与地址进行转换

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/tool/hashtoaddress?q=fcb822804656cafd49daff890eaccfe95f59cfaf

地址与hash160进行转换

GET: /api/v1/btc/tool/addresstohash?q=<address>

URL: https://blockmeta.com/api/v1/btc/tool/addresstohash?q=<address>

终端示例:

curl -X GET https://blockmeta.com/api/v1/btc/tool/addresstohash?q=1Q3FsFTs6Qz3LJ3rqCStbLJmomBqqKRx1Z

交易推送

POST: /api/v1/btc/tool/pushtx

URL: https://blockmeta.com/api/v1/btc/tool/pushtx

tx推送为POST请求

终端示例:

curl -d '{"raw_tx": [RAW_TX,]}' http://blockmeta.com/api/v1/tool/pushtx --header "Content-Type:application/json"

Websocket API

高效实时低延迟的数据查询接口,可支持最新区块,最新交易的查询

wss://blockmeta.com/ws

支持命令

(1) 订阅接收比特币网络全部未确认交易

{"op":"unconfirmed_tx_sub","data":[]}

获得响应格式:

{"op": "unconfirmed_tx_sub", "data":[<tx>]}

tx 结构如下:

{
"height": 高度,
"relay":  矿工,
"time":   时间,
"tx_num": 交易时间,
"fee":    手续费,
"id":     id
}

(2) 订阅接收最新区块通知信息

{
"op":"blocks_sub",
"data":[]
}

获得区块格式:

{
"op":"blocks_sub",
"data":[{<block>}]
}

block 结构如下:

{
"height": 高度,
"relay":  矿工,
"time":   时间,
"tx_num": 交易时间,
"fee":    手续费,
"id":     id
}

(3) 订阅具体地址的新交易信息

{
"op": "addr_sub",
"data":[<addr1>, <addr2>, ...]
}

获得响应格式:

{
"op": "addr_sub",
"data":[{"addr":<addr1>, "txs":[...]},...]
}

取消订阅命令

{
"op": "clear_sub",
"data":[<cmd1>, <cmd2>, ...]
}

定制命令包括之前三个命令,同时支持 "all" 取消订阅所有命令。