1 说明
2 API列表
3 RPC APIs
3.1 区块
3.1.1 取得最新块信息
3.1.2 取得块信息
3.1.3 取得块数量
3.1.4 取得块哈希
3.1.5 取得块模版
3.1.6 提交块
3.2 账户
3.2.1 取得地址账户
3.2.2 取得账户地址
3.2.3 取得账户所有地址
3.2.4 取得余额
3.2.5 取得账户收款金额
3.2.6 查询账户列表
3.2.7 列出账户的收款信息
3.2.8 转账
3.2.9 设定账户
3.3 钱包
3.3.1 备份钱包
3.3.2 加密钱包
3.3.3 填满密钥池
3.3.4 钱包锁定
3.3.5 钱包解锁
3.3.6 修改钱包密码
3.4 交易
3.4.1 创建原始交易
3.4.2 解码原始交易
3.4.3 取得原始交易信息
3.4.4 取得交易信息
3.4.5 取得交易输出
3.4.6 取得交易输出设定信息
3.4.7 列出锁定的未动用输出
3.4.8 列出指定块之后的交易
3.4.9 列出交易
3.4.10 列出未动用输出
3.4.11 锁定未动用输出
3.4.12 从账户付款
3.4.13 向多个地址付款
3.4.14 发布原始交易
3.4.15 付款
3.4.16 设定交易费
3.4.17 对原始交易签名
3.5 网络
3.5.1 新增节点
3.5.2 取得新增节点信息
3.5.3 取得连接数
3.5.4 取得节点信息
3.6 服务
3.6.1 取得客户端信息
3.6.2 帮助
3.6.3 停止服务
3.7 地址
3.7.1 新增多重签名地址
3.7.2 创建多重签名地址
3.7.3 导出私钥
3.7.4 创建新地址
3.7.5 创建找零地址
3.7.6 取得地址收款金额
3.7.7 导入密钥
3.7.8 查询地址列表
3.7.9 列出地址的收款信息
3.7.10 信息签名
3.7.11 地址验证
3.7.12 验证信息
3.8 采矿
3.8.1 取得当前难度
3.8.2 判断是否采矿
3.8.3 取得采矿性能
3.8.4 取得内存池信息
3.8.5 取得采矿信息
3.8.6 取得内存池原始交易ID
3.8.7 计算
3.8.8 设定是否采矿
4 HTTP REST

API列表

2016-02-28 15:20:00
阿土
2465
最后编辑:阿土 于 2016-02-28 19:43:24
简介:比特币API清单列表

比特币JSON-RPC API 列表

** 说明:
1) 必填参数使用<>包围,可选参数使用[].
2) 解锁: 钱包相关的服务调用,是否需要先将钱包解锁

模块 API数量
区块 7
账户 9
钱包 6
交易 17
网络 4
服务 3
地址 12
采矿 8

区块

# API/命令 摘要 参数 说明
1 getbestblockhash 取得最新块信息 取得主链(最长链)最新块的哈希值<hash>
2 getblock 取得块信息 <hash> 返回指定的哈希<hash>块信息。
3 getblockcount 取得块数量 返回最长的块链中块的数量。.
4 getblockhash 取得块哈希 <index> 返回指定索引<index>对应块的Hash; 0 是创世纪块
5 getblocknumber 取得块数量 已过时,请使用getblockcount.
6 getblocktemplate 取得块模版 [params] 返回所需的数据用来构造一个有效的块。参见BIP_0022获取更多参数信息.
7 submitblock 提交块 <hex data> [optional-params-obj] 尝试将一个块信息提交到网络

账户

# API/命令 摘要 参数 说明
1 getaccount 取得地址账户 <bitcoinaddress> 返回指定地址<bitcoinaddress>相关联的帐户。
2 getaccountaddress 取得账户地址 <account> 返回指定账户<account>当前的比特币收款地址,如果账户不存在,会为指定账户创建一个的新的地址。
3 getaddressesbyaccount 取得账户所有地址 <account> 返回指定账户<account>关联的所有地址列表。
4 getbalance 取得余额 [account] [minconf=1] 如果没有指定账户<account>,返回钱包的总余额。如果指定账户<account>,返回账户余额。
5 getreceivedbyaccount 取得账户收款金额 [account] [minconf=1] 返回指定账户<account>上收到至少[minconf]个确认的收款交易总金额(不包括付款)。
6 listaccounts 查询账户列表 [minconf=1] 返回一个Hash对象,帐户名作为键,帐户余额作为键的值。
7 listreceivedbyaccount 列出账户的收款信息 [minconf=1] [includeempty=false] 返回一个数组对象,包含:account:接收地址的帐户amount:该账户所有地址收到的总金额confirmations:包含的最近交易确认数量
8 move 转账 <fromaccount> <toaccount> <amount> [minconf=1] [comment] 把你钱包中一个账户<fromaccount>上的指定金额<amount> 转移到另一个账户<toaccount>上。
9 setaccount 设定账户 <bitcoinaddress> <account> 将地址<bitcoinaddress>关联到指定帐户<account>。如果该地址已经被关联到指定帐户,将创建一个新的地址与该帐户关联。

钱包

# API/命令 摘要 参数 说明 解锁
1 backupwallet 备份钱包 <destination> 备份钱包,将钱包安全地复制到一个目标地址<destination>,目标地址可以是一个目录或带路径的文件名。 N
2 encryptwallet 加密钱包 <passphrase> 为钱包设定密码<passphrase> N
3 keypoolrefill 填满密钥池 重新填满密钥池。需要未锁定钱包。 Y
4 walletlock 钱包锁定 从内存中删除钱包的加密KEY,锁定钱包。调用此方法后,您将需要再次调用walletpassphrase方法,才能够调用任何需要未锁定钱包的方法。 N
5 walletpassphrase 钱包解锁 <passphrase> <timeout> 把钱包的密码<passphrase>存储在内存中持续<timeout>秒。 N
6 walletpassphrasechange 修改钱包密码 <oldpassphrase> <newpassphrase> 将钱包的原密码<oldpassphrase>修改为新密码<newpassphrase> N

交易

# API/命令 摘要 参数 说明 解锁
1 createrawtransaction 创建原始交易 [{"txid":txid,"vout":n},...] {address:amount,...} 创建原始交易,创建一个原始交易,花费指定输入的金额 N
2 decoderawtransaction 解码原始交易 <hex string> 将一个原始交易解码成可读性较强的JSON对象 N
3 getrawtransaction 取得原始交易信息 <txid> [verbose=0] 返回指定的交易ID<txid>的原始交易描述。 N
4 gettransaction 取得交易信息 <txid> 返回一个指定交易ID的哈希对象(仅限钱包内的地址交易)。 Returns N
5 gettxout 取得交易输出 <txid> <n> [includemempool=true] 返回未动用的交易输出详细信息。 N
6 gettxoutsetinfo 取得交易输出设定信息 返回未动用的交易输出统计信息集。 N
7 listlockunspent 列出锁定的未动用输出 返回暂时未动用的交易输出列表。
8 listsinceblock 列出指定块之后的交易 [blockhash] [target-confirmations] 获得自从指定哈希块[blockhash]产生之后的所有交易,哈希块参数省略则获得所有交易 N
9 listtransactions 列出交易 [account] [count=10] [from=0] 返回指定账户[account]不包含前[from]次的最近[count]次的交易。如果未指定账户则返回所有账户的最近交易。 N
10 listunspent 列出未动用输出 [minconf=1] [maxconf=999999] 返回钱包中未动用交易输入的数组。 N
11 lockunspent 锁定未动用输出 <unlock?> [array-of-objects] 更新暂时未动用的交易输出列表。
12 sendfrom 从账户付款 <fromaccount> <tobitcoinaddress> <amount> [minconf=1] [comment] [comment-to] 从指定账户<fromaccount>向指定地址<tobitcoinaddress> 发送指定金额<amount>的BTC,确保帐户拥有得到[minconf]个确认的有效余额。支付金额是一个四舍五入至小数点后8位的实数。如果支付成功,将返回交易ID<txid>(而不是一个JSON对象)。需要未锁定钱包 Y
13 sendmany 向多个地址付款 <fromaccount> {address:amount,...} [minconf=1] [comment] 从指定账户<fromaccount>向多个地址发送指定金额{address:amount,...}。金额是双精度浮点数。需要未锁定钱包 Y
14 sendrawtransaction 发布原始交易 <hexstring> 提交原始交易(序列化的十六进制编码)到本地节点和网络。 N
15 sendtoaddress 付款 <bitcoinaddress> <amount> [comment] [comment-to] 向地址<bitcoinaddress>发送指定金额<amount>的BTC。支付金额是一个四舍五入至小数点后8位的实数。如果支付成功,将返回交易ID<txid>。需要未锁定钱包。 Y
16 settxfee 设定交易费 <amount> 交易费<amount>是一个四舍五入至小数点后8位的实数。 N
17 signrawtransaction 对原始交易签名 <hexstring> [{"txid":txid,"vout":n,"scriptPubKey":hex},...] [<privatekey1>,...] 添加原始交易的签名,并返回原始交易的结果。 Y/N

网络

# API/命令 摘要 参数 说明
1 addnode 新增节点 <node> <add/remove/onetry> 新增节点,尝试从节点列表中添加(add)或删除(remove)一个节点<NODE>或者尝试对节点<NODE>进行一次连接尝试
2 getaddednodeinfo 取得新增节点信息 <dns> [node] 返回指定的新增节点[node]的信息
[node]参数省略时返回全部新增节点(不包括只连接一次的节点)的信息。
<dns>参数为false时,只提供新增节点列表,<dns>参数为true时同时提供新增节点的连接信息。
3 getconnectioncount 取得连接数 返回与其它节点的连接数。
4 getpeerinfo 取得节点信息 返回每个已连接节点的数据。

服务

# API/命令 摘要 参数 说明
1 getinfo 取得客户端信息 返回一个包含当前客户端各种状态信息的对象。
2 help 帮助 [command] 获得命令列表,或者指定命令[command]的帮助。
3 stop 停止服务 停止比特币客户端服务

地址

# API/命令 摘要 参数 说明 解锁
1 addmultisigaddress 新增多重签名地址 <nrequired> <'["key","key"]'> [account]  新增多重签名地址,在钱包里添加一个多重签名地址。每个"KEY"参数都是一个比特币地址或者是一个十六进制编码的公共密钥。
如果指定账户[account],则将该地址分配给该帐户。
N
2 createmultisig 创建多重签名地址 <nrequired> <'["key,"key"]'> 创建多重签名地址,创建一个多重签名的地址,并返回一个JSON对象。
3 dumpprivkey 导出私钥 <bitcoinaddress> 导出比特币地址<bitcoinaddress>对应的私钥。需要钱包解锁。 Y
4 getnewaddress 创建新地址 [account] 返回一个新的比特币地址,用于接收付款。如果指定账户[account](推荐),它将被添加到地址簿中,该地址收到的所有款项将被计入该帐户。 N
5 getrawchangeaddress 创建找零地址 [account] 返回一个新的比特币地址,用于接收找零。 仅用于原始交易,非平常使用 N
6 getreceivedbyaddress 取得地址收款金额 <bitcoinaddress> [minconf=1] 返回指定地址<bitcoinaddress>上收到至少[minconf]个确认的收款交易总金额。虽然有些人可能会认为这很明显,返回值只统计该地址的收款交易。它不检查已经从这个地址上发送的付款交易。换句话说,这不是取得地址余额。该方法仅适用于本地钱包的地址,外部地址将始终显示为0。 N
7 importprivkey 导入密钥 <bitcoinprivkey> [label] [rescan=true] 添加一个私有密钥到你的钱包。(返回dumpprivkey)这可能需要一段时间来完成重新扫描,寻找现有交易。版本0.8.0中添加重新扫描[rescan]参数。需要未锁定钱包。 Y
8 listaddressgroupings 查询地址列表 返回钱包上的所有地址信息(地址,余额,所属账户)。 N
9 listreceivedbyaddress 列出地址的收款信息 [minconf=1] [includeempty=false] 返回一个数组对象,包含:address:接收地址account:接收地址的帐户amount:地址收到的总金额confirmations:包含的最近交易确认数量要得到系统上的所有帐户的列表,执行listreceivedbyaddress N
10 signmessage 信息签名 <bitcoinaddress> <message> 用地址<bitcoinaddress>的私钥对信息<message>进行数字签名。需要未锁定钱包。 Y
11 validateaddress 地址验证 <bitcoinaddress> 验证一个地址<bitcoinaddress>是否有效。  N
12 verifymessage 验证信息 <bitcoinaddress> <signature> <message> 验证签名后信息<signature>是否与指定地址<bitcoinaddress>的私钥签名的信息<message>一致。 N

采矿

# API/命令 摘要 参数 说明
1 getdifficulty 取得当前难度 返回当前工作量证明难度(最低难度的倍数
2 getgenerate 判断是否采矿 判断当前客户端是否正在采矿。
3 gethashespersec 取得采矿性能 返回当前客户端每秒计算哈希的性能。(当客户端开启采矿模式时)
4 getmemorypool 取得内存池信息 [data] 在版本0.7中被替换成getblocktemplate, submitblock, getrawmempool
5 getmininginfo 取得采矿信息 返回一个包含当前采矿信息的对象。
6 getrawmempool 取得内存池原始交易ID 返回内存池的所有原始交易ID。 N
7 getwork 计算 [data] 如果没有指定数据[data],返回格式化的哈希数据。如果指定数据,试图解决块,如果成功返回true。 N
8 setgenerate 设定是否采矿 <generate> [genproclimit] 根据<generate>参数的值(true/false)决定客户端是否采矿。[genproclimit]参数指定采矿最大线程数,-1代表无限制。 N


变更记录
2016-02-28site_manager  调整地址API宽度
2016-02-28site_manager  调整表格宽度
2016-02-28site_manager  整理和编写API列表
51chain是什么

51chain.net
恒生研究院旗下区块链技术社区

让区块链开发变简单

联系我们
联系人: 平风
电话: 0571-26691754
Email: niezx@hundsun.com
QQ: 251048392