6.1 节点rpc接口(详细见:pb/xchain.proto)

API 功能
rpc PreExec(InvokeRPCRequest) returns (InvokeRPCResponse) 预执行并返回读写集
rpc PostTx(TxStatus) returns (CommonReply) 对一个交易进行验证并转发给附近网络节点
rpc BatchPostTx(BatchTxs) returns (CommonReply) 对一批交易进行验证并转发给附近网络节点
rpc QueryAcl(AclStatus) returns (AclStatus) 查询合约账号/合约方法的Acl
rpc QueryTx(TxStatus) returns (TxStatus) 查询一个交易
rpc GetBalance(AddressStatus) returns (AddressStatus) 查询可用余额
rpc GetFrozenBalance(AddressStatus) returns (AddressStatus) 查询被冻结的余额
rpc GetBlock(BlockID) returns (Block) 从当前账本获取特定区块
rpc GetBlockChainStatus(BCStatus) returns (BCStatus) 获取账本的最新区块数据
rpc GetBlockChains(CommonIn) returns (BlockChains) 获取所有的链名
rpc GetSystemStatus(CommonIn) returns (SystemsStatusReply) 获取系统状态
rpc GetNetURL(CommonIn) returns (RawUrl) 获取区块链网络中某个节点的url
rpc SelectUTXO(UtxoInput) returns(UtxoOutput) 查询一个地址/合约账户对应的余额是否足够

6.2 开发者接口(详细见:contractsdk/pb/contract.proto)

API 功能
rpc PutObject(PutRequest) returns (PutResponse) 产生一个读加一个写
rpc GetObject(GetRequest) returns (GetResponse) 生成一个读请求
rpc DeleteObject(DeleteRequest) returns (DeleteResponse) 产生一个读加一个特殊的写
rpc NewIterator(IteratorRequest) returns (IteratorResponse) 对迭代的key产生读
rpc QueryTx(QueryTxRequest) returns (QueryTxResponse) 查询交易
rpc QueryBlock(QueryBlockRequest) returns (QueryBlockResponse) 查询区块
rpc ContractCall(ContractCallRequest) returns (ContractCallResponse) 合约调用
rpc Ping(PingRequest) returns (PingResponse) 探测是否存活
rpc GetCallArgs(GetCallArgsRequest) returns (CallArgs) 得到合约调用参数