| Field | Type | Label | Description |
| hash | bytes | 区块的哈希,当区块处于待确认状态时为`null` |
|
| parent_hashes | bytes | repeated | 父区块的哈希 |
| witnesses | bytes | repeated | 见证者账户地址 |
| timestamp | int64 | 区块产生时的 UNIX 时间戳,单位为秒 |
|
| size | uint64 | 区块大小的字节数 |
|
| transaction_count | uint32 | 区块包含的事务数量 |
|
| transactions_root | bytes | 区块的事务默克尔树根 |
|
| transactions | Transaction | repeated | 事务对象的数组,或为空 |
| transaction_hashes | bytes | repeated | 20字节的交易哈希的数组,或为空 |
| Field | Type | Label | Description |
| contractName | bytes | 合约名称 |
|
| randomNum | uint32 | 合约执行的节点数量 |
|
| operation | bytes | 合约方法 |
|
| arg | bytes | 合约方法参数 |
|
| path | bytes | 合约文件路径(合约在IDE工程的相对路径) |
|
| content | bytes | 合约内容(可为合约文件相对路径/合约脚本) |
|
| pubkey | bytes | 用户公钥 |
| Field | Type | Label | Description |
| block_hash | bytes | 事务所在的区块的哈希,当事务处于待确认状态时为`null` |
|
| index | uint32 | 事务在区块中的位置 index,当事务处于待确认状态时为`null` |
|
| hash | bytes | 事务的哈希 |
|
| type | TransactionType | 事务类型 |
|
| from | bytes | 发送账户地址 |
|
| nonce | uint64 | 这条事务之前发送者所发送的事务数量 |
|
| to | bytes | 接收账户地址,或者调用的合约地址,或者`null`如为合约创建 |
|
| data | bytes | 数据或合约代码 |
|
| v | bytes | ECDSA recovery id |
|
| r | bytes | ECDSA signature r |
|
| s | bytes | ECDSA signature s |
| Name | Number | Description |
| START | 0 | |
| STOP | 1 | |
| EXECUTE | 2 | |
| REPLY | 3 | |
| REQUEST | 4 | |
| PREPREPARE | 5 | |
| PREPARE | 6 | |
| COMMIT | 7 | |
| ADDPEER | 8 | |
| DROPPEER | 9 | |
| STATESYNC | 10 |
事务类型
| Name | Number | Description |
| RECORD | 0 | 通用数据记录 |
| MESSAGE | 1 | 消息 |
| CONTRACT_CREATION | 2 | 合约创建 |
| CONTRACT_INVOCATION | 3 | 合约调用 |
| CONTRACT_STATUS | 4 | 合约状态 |
InvalidArgument indicates client specified an invalid argument.
Note that this differs from FailedPrecondition. It indicates arguments
that are problematic regardless of the state of the system
(e.g., a malformed file name).
| Field | Type | Label | Description |
| field_violations | InvalidArgument.FieldViolation | repeated | Describes all violations in a client request. |
A message type used to describe a single invalid field.
| Field | Type | Label | Description |
| field | string | A path leading to a field in the request body. The value will be a sequence of dot-separated identifiers that identify a protocol buffer field. E.g., "field_violations.field" would identify this field. |
|
| description | string | A description of why the request element is bad. |
| Field | Type | Label | Description |
| name | string |
|
| Field | Type | Label | Description |
| ok | bool |
|
| Field | Type | Label | Description |
| ledgers | string | repeated |
|
| Field | Type | Label | Description |
| ledger | string |
|
|
| transaction | SendTransactionRequest.Transaction |
|
| Field | Type | Label | Description |
| type | TransactionType |
|
|
| from | bytes |
|
|
| to | bytes |
|
|
| data | bytes |
|
| Field | Type | Label | Description |
| hash | bytes |
|
| Method Name | Request Type | Response Type | Description |
| CreateLedger | CreateLedgerRequest | CreateLedgerResponse | Create a new ledger 创建一个新账本 |
| GetLedgers | .google.protobuf.Empty | GetLedgersResponse | Get all ledgers 查询所有帐本列表 |
| SendTransaction | SendTransactionRequest | SendTransactionResponse | Send a new transaction 发送一个新事务 |
| Field | Type | Label | Description |
| version | string | 节点客户端版本 |
| Method Name | Request Type | Response Type | Description |
| ClientVersion | .google.protobuf.Empty | ClientVersionResponse | Get BDLedger node version 查询BDLedger节点版本 |
| Field | Type | Label | Description |
| hash | bytes |
|
|
| timestamp | int64 |
|
| Field | Type | Label | Description |
| ledger | string |
|
|
| start_timestamp | int64 |
|
|
| end_timestamp | int64 |
|
|
| filters | BlockFilter | repeated |
|
| include_transactions | BlocksRequest.IncludeTransactions |
|
| Field | Type | Label | Description |
| count | uint64 |
|
|
| start_timestamp | int64 |
|
|
| end_timestamp | int64 |
|
| Field | Type | Label | Description |
| count | uint64 |
|
|
| start_timestamp | int64 |
|
|
| end_timestamp | int64 |
|
| Field | Type | Label | Description |
| ledger | string |
|
|
| hash | bytes |
|
|
| full_transactions | bool |
|
| Field | Type | Label | Description |
| block | Block |
|
| Field | Type | Label | Description |
| blocks | Block | repeated |
|
| start_timestamp | int64 |
|
|
| end_timestamp | int64 |
|
| Field | Type | Label | Description |
| ledger | string |
|
|
| block_hash | bytes |
|
|
| index | uint32 |
|
| Field | Type | Label | Description |
| transaction | Transaction |
|
| Field | Type | Label | Description |
| ledger | string |
|
|
| hash | bytes |
|
| Field | Type | Label | Description |
| transaction | Transaction |
|
| Field | Type | Label | Description |
| transactions | Transaction | repeated |
|
| start_timestamp | int64 |
|
|
| end_timestamp | int64 |
|
repeated Transaction/BlockFilters are combined by "&&"(and) operator;
| Field | Type | Label | Description |
| hash | bytes |
|
|
| from | bytes |
|
|
| to | bytes |
|
|
| timestamp | bytes |
|
| Field | Type | Label | Description |
| ledger | string |
|
|
| start_timestamp | int64 | required |
|
| end_timestamp | int64 |
|
|
| filters | TransactionFilter | repeated |
|
| Name | Number | Description |
| NONE | 0 | 不包含交易数据 |
| HASH | 1 | 包含交易哈希列表 |
| FULL | 2 | 包含完整交易列表 |
| Method Name | Request Type | Response Type | Description |
| GetBlockByHash | GetBlockByHashRequest | GetBlockByHashResponse | Get a block identified by its hash 查询哈希所指定的区块 |
| GetBlocks | BlocksRequest | GetBlocksResponse | Get blocks in a timestamp range 查询时间范围内的区块 start_timestamp is required |
| CountBlocks | BlocksRequest | CountBlocksResponse | Count all blocks in a ledger, or blocks in a timestamp range 查询帐本中的所有区块数量,或时间范围内的区块数量 |
| GetTransactionByHash | GetTransactionByHashRequest | GetTransactionByHashResponse | Get a transaction identified by its hash 查询哈希所指定的事务 |
| GetTransactionByBlockHashAndIndex | GetTransactionByBlockHashAndIndexRequest | GetTransactionByBlockHashAndIndexResponse | Get a transaction identified by hash of the block it belongs to and its index inside the block 查询所在区块的哈希与其在区块中的index所指定的事务 |
| GetTransactions | TransactionsRequest | GetTransactionsResponse | Get transactions in a timestamp range 查询时间范围内的事务 |
| CountTransactions | TransactionsRequest | CountTransactionsResponse | Count all transactions in a ledger, or transactions in a timestamp range 查询帐本中的所有事务数量,或时间范围内的事务数量 start_timestamp is required |
A generic empty message that you can re-use to avoid defining duplicated
empty messages in your APIs. A typical example is to use it as the request
or the response type of an API method. For instance:
service Foo {
rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
}
The JSON representation for `Empty` is empty JSON object `{}`.
| .proto Type | Notes | C++ | Java | Python | Go | C# | PHP | Ruby |
| double | double | double | float | float64 | double | float | Float | |
| float | float | float | float | float32 | float | float | Float | |
| int32 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
| int64 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 | long | int/long | int64 | long | integer/string | Bignum |
| uint32 | Uses variable-length encoding. | uint32 | int | int/long | uint32 | uint | integer | Bignum or Fixnum (as required) |
| uint64 | Uses variable-length encoding. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum or Fixnum (as required) |
| sint32 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
| sint64 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | int/long | int64 | long | integer/string | Bignum |
| fixed32 | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | int | uint32 | uint | integer | Bignum or Fixnum (as required) |
| fixed64 | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum |
| sfixed32 | Always four bytes. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) |
| sfixed64 | Always eight bytes. | int64 | long | int/long | int64 | long | integer/string | Bignum |
| bool | bool | boolean | boolean | bool | bool | boolean | TrueClass/FalseClass | |
| string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | str/unicode | string | string | string | String (UTF-8) |
| bytes | May contain any arbitrary sequence of bytes. | string | ByteString | str | []byte | ByteString | string | String (ASCII-8BIT) |