简介:BlockDog 方块狗是公鹿钱包团队推出的网站。他们借用这个网站提供公共 API 服务以方便 EOS 开发者进行 EOS 相关开发。本文整理使用 BlockDog API 查询 EOS 账户转账记录。
BlockDog 方块狗是公鹿钱包团队推出的网站。他们借用这个网站提供公共 API 服务以方便 EOS 开发者进行 EOS 相关开发。
本文整理使用 BlockDog API 查询 EOS 账户转账记录。
BlockDog API 官方文档:https://open-api.eos.blockdog.com/
使用 BlockDog API 需要申请 apikey
://www.blockdog.com/openApi
免费版 apikey
支持 HTTPS API 调用频次≤3次/秒,WebSocket API 订阅合约/账户调用峰值≤3次。
BlockDog API 查询 EOS 账户转账记录:
请求参数:
account_name
: EOS 账号名,交易的发起者或者接收者;
code
: 代币合约账号;
symbol
: 代币名称;
type
: 转账类型(1,转入 2,转出 3,全部) 默认3;
from
: 转账发起者; 实现查询特定的 A-B 的转账; 如果不为空, 忽略 type
和 account_name
字段;
to
: 转账接收者; 实现查询特定的 A-B 的转账; 如果不为空, 忽略 type
和 account_name
字段;
start_block_num
: 开始区块高度(包括);
end_block_num
: 结束区块高度(不包括);
start_block_time
: 开始区块时间(包括), 格式为2018-01-01T00:00:00;
end_block_time
: 结束区块时间(不包括), 格式为2018-01-01T00:00:00;
sort
: 按时间排序(1, DESC 2, ASC) 默认1;
size
: 返回记录数, 默认20, 最大100;
page
: 页码,默认1, (page-1) * size + size 必须小于 10000.
示例:
直接查询指定账户进出交易并设置返回 size
为2:
Node.js 示例:
let request = require("request");
let options = { method: 'POST',
url: 'https://open-api.eos.blockdog.com/v1/third/get_account_transfer',
headers:
{ 'content-type': 'application/json',
apikey: '5b4added-e80c-41fb-b5a9-16269d2de79b',
accept: 'application/json;charset=UTF-8' },
body: '{"account_name":"eosio","size":2}' };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});
返回的 JSON 示例:
{
"total": 731626,
"list": [{
"blockTime": "2019-04-21T01:25:39.000",
"blockNum": 54049088,
"account": "eosio.token",
"name": "transfer",
"id": "c277691e1378c6146b31abf6bf1fe4fde79939270775d8c30b864b895624573b",
"globalSequence": "6339546661",
"recvSequence": "",
"status": "executed",
"data": {
"quantity": "1130.8010 EOS",
"memo": "unallocated inflation",
"from": "eosio",
"to": "eosio.saving"
}
}, {
"blockTime": "2019-04-21T01:25:39.000",
"blockNum": 54049088,
"account": "eosio.token",
"name": "transfer",
"id": "c277691e1378c6146b31abf6bf1fe4fde79939270775d8c30b864b895624573b",
"globalSequence": "6339546667",
"recvSequence": "",
"status": "executed",
"data": {
"quantity": "212.0252 EOS",
"memo": "fund per-vote bucket",
"from": "eosio",
"to": "eosio.vpay"
}
}]
}
指定转入转出账户查询交易并设置返回 size
为2:
Node.js 示例:
let request = require("request");
let options = { method: 'POST',
url: 'https://open-api.eos.blockdog.com/v1/third/get_account_transfer',
headers:
{ 'content-type': 'application/json',
apikey: '5b4added-e80c-41fb-b5a9-16269d2de79b',
accept: 'application/json;charset=UTF-8' },
body: '{"from":"eosio","to":"eosio.saving","size":2}' };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});
返回的 JSON 示例:
{
"total": 24969,
"list": [{
"blockTime": "2019-04-21T01:25:39.000",
"blockNum": 54049088,
"account": "eosio.token",
"name": "transfer",
"id": "c277691e1378c6146b31abf6bf1fe4fde79939270775d8c30b864b895624573b",
"globalSequence": "6339546661",
"recvSequence": "",
"status": "executed",
"data": {
"quantity": "1130.8010 EOS",
"memo": "unallocated inflation",
"from": "eosio",
"to": "eosio.saving"
}
}, {
"blockTime": "2019-04-21T01:11:05.000",
"blockNum": 54047341,
"account": "eosio.token",
"name": "transfer",
"id": "7fbea4d1e7c1a7c672e1bf9232c71d56e2e4e18911c5675b194d6bbd789ef3bd",
"globalSequence": "6339365395",
"recvSequence": "",
"status": "executed",
"data": {
"quantity": "272.3496 EOS",
"memo": "unallocated inflation",
"from": "eosio",
"to": "eosio.saving"
}
}]
}
BlockDog API 服务思维导图:

我们有一个区块链知识星球,做区块链前沿资料的归纳整理以方便大家检索查询使用,也是国内顶尖区块链技术社区,欢迎感兴趣的朋友加入。如果你对上面内容有疑问,也可以加入知识星球提问我:

网友评论