比特币RPC API中文文档

比特币节点提供了基于JSON RPC的二次开发接口,可供应用开发者使用 各种开发语言例如JavaScript、Java、C#、Php、Python等访问比特币的功能, 是在应用中集成比特币支付能力的理想实现途径。

比特币JSON RPC API中文文档 由汇智网基于比特币核心项目的官网资料翻译整理而成,转载请标明出处。

API目录

区块链相关API:

  • GetBestBlockHash: 返回最优链上最近区块的哈希
  • GetBlock: 返回具有指定哈希的区块
  • GetBlockChainInfo: 返回区块链当前状态信息
  • GetBlockCount: 返回本地最优链上的区块数量
  • GetBlockHash: 返回本地最有区块链上指定高度区块的哈希
  • GetBlockHeader: 返回指定区块头
  • GetChainTips: 返回每个本地区块链的最高位区块(tip)信息
  • GetDifficulty: 返回POW难度
  • GetMemPoolAncestors: 返回交易池内指定交易的所有祖先
  • GetMemPoolDescendants: 返回交易池内指定交易的所有后代
  • GetMemPoolEntry: 返回交易池内指定交易的池数据
  • GetMemPoolInfo: 返回交易池信息
  • GetRawMemPool: 返回交易池内的所有交易
  • GetTxOut: 返回指定交易输出的详细信息
  • GetTxOutProof: 返回一个或多个交易的证明数据
  • GetTxOutSetInfo: 返回UTXO集合的统计信息
  • PreciousBlock:
  • PruneBlockChain: 对区块链执行剪枝操作
  • VerifyChain: 验证本地区块链的每个记录
  • VerifyTxOutProof: 验证交易输出证明

节点控制API:

  • GetInfo: 返回节点和网络信息
  • Help: 返回所有可用的RPC命令,或返回指定命令的帮助信息
  • Stop: 安全关闭bitcoin core的节点服务

出块相关API:

  • Generate: 生成区块
  • GenerateToAddress: 生成区块并将新生成的比特币转入指定地址

挖矿相关API:

  • GetBlockTemplate: 返回节点模板
  • GetMiningInfo: 返回挖矿相关信息
  • GetNetworkHashPS: 返回估算的全网哈希速率
  • PrioritiseTransaction: 交易优先权

网络相关API:

  • AddNode: 添加节点
  • ClearBanned: 清理禁止的节点
  • DisconnectNode: 断开与指定节点旳连接
  • GetAddedNodeInfo: 返回新增节点的信息
  • GetConnectionCount: 返回与其他节点旳连接总数量
  • GetNetTotals: 返回网络流量统计信息
  • GetNetworkInfo: 返回节点的网络连接信息
  • GetPeerInfo: 返回所连接其他节点旳信息
  • ListBanned: 返回所有被禁止的IP或子网
  • Ping: 向所有连接的节点发送p2p的pin报文
  • SetBan: 管理禁止访问清单
  • SetNetworkActive: 禁止/启用P2P网络

裸交易相关API:

  • CreateRawTransaction: 创建未签名的序列化交易
  • FundRawTransaction: 向裸交易添加新的UTXO
  • DecodeRawTransaction: 解码指定的裸交易
  • DecodeScript: 解码指定的P2SH赎回脚本
  • GetRawTransaction: 返回指定的裸交易
  • SendRawTransaction: 验证并发送裸交易到P2P网络
  • SignRawTransaction: 签名裸交易

工具类API:

  • CreateMultiSig: 创建P2SH多重签名地址
  • EstimateFee: 估算交易费率
  • EstimatePriority: 估算交易的优先级
  • GetMemoryInfo: 返回内存使用情况
  • ValidateAddress: 验证指定的地址
  • VerifyMessage: 验证签名的消息

钱包相关API:

  • AbandonTransaction: 放弃指定交易
  • AddWitnessAddress: 添加见证地址
  • AddMultiSigAddress: 添加P2SH多重签名地址
  • BackupWallet: 备份钱包
  • BumpFee: 替换未确认交易并提升手续费
  • DumpPrivKey: 导出指定私钥
  • DumpWallet: 导出钱包
  • EncryptWallet: 加密钱包
  • GetAccountAddress: 返回指定账户的当前地址
  • GetAccount: 返回指定地址关联的账户
  • GetAddressesByAccount: 按账户分组列出地址
  • GetBalance: 返回钱包账户余额
  • GetNewAddress: 返回一个新的地址用于接收支付
  • GetRawChangeAddress: 返回新的找零地址
  • GetReceivedByAccount: 返回指定账户的收入情况
  • GetReceivedByAddress: 返回指定地址的收入情况
  • GetTransaction: 返回指定的钱包交易的详情
  • GetUnconfirmedBalance: 返回钱包全部未确认收入总额
  • GetWalletInfo: 返回钱包信息
  • ImportAddress: 导入地址或公钥脚本
  • ImportMulti: 导入多个地址或公钥脚本
  • ImportPrunedFunds:
  • ImportPrivKey: 导入私钥
  • ImportWallet: 导入钱包
  • KeyPoolRefill: 密钥池填充
  • ListAccounts: 返回钱包内账户及对应余额
  • ListAddressGroupings: 按地址列出余额
  • ListLockUnspent: 列出锁定的UTXO
  • ListReceivedByAccount: 按账户列出收到的比特币
  • ListReceivedByAddress: 列地址列出收到的比特币
  • ListSinceBlock: 列出指定区块之后发生的与钱包有关的交易
  • ListTransactions: 列出最近指定数量的与钱包有关的交易
  • ListUnspent: 返回钱包内的UTXO
  • LockUnspent: 暂时性锁定/解锁指定的UTXO
  • Move: 链下转账
  • RemovePrunedFunds:
  • SendFrom: 使用指定的本地账户向指定的比特币地址转账
  • SendMany: 创建并广播一个包含多个输出的交易
  • SendToAddress: 向指定地址发送比特币
  • SetAccount: 将指定地址与账户关联
  • SetTxFee: 设置千字节交易费率
  • SignMessage: 签名消息
  • SignMessageWithPrivKey: 使用指定私钥签名消息
  • WalletLock: 锁定钱包
  • WalletPassphrase: 输入钱包口令
  • WalletPassphraseChange: 修改钱包口令