TransactionAttempt

試行されたトランザクション送信のステータス。

JSON 表現
{
  "status": enum (TransactionStatus),
  "proofOfInclusion": {
    object (ProofOfInclusion)
  },
  "statusEvents": [
    {
      object (StatusEvent)
    }
  ]
}
フィールド
status

enum (TransactionStatus)

出力専用。取引試行の現在のステータス。

proofOfInclusion

object (ProofOfInclusion)

出力専用。トランザクション効果がワールド状態に含まれていることの証明書。ステータスが FINALIZED の場合にのみ指定されます。

statusEvents[]

object (StatusEvent)

出力専用。トランザクション試行で記録されたステータス イベントの順序付きリスト。

TransactionStatus

取引試行のステータス。

列挙型
TRANSACTION_STATUS_UNSPECIFIED 不明または未初期化の状態。
PENDING このトランザクションはバリデータに認識されていますが、まだ確定していません。
FINALIZED 取引が完了しました。その効果はブロックチェーンに保存され、元に戻すことはできません。

ProofOfInclusion

トランザクションの効果がワールド状態に含まれていることの証明書。

JSON 表現
{
  "transactionCertificate": {
    object (TransactionCertificate)
  },
  "roundCertificate": {
    object (RoundCertificate)
  },
  "pathToRoundRoot": [
    {
      object (MerkleTreeNode)
    }
  ]
}
フィールド
transactionCertificate

object (TransactionCertificate)

出力専用。特定のラウンドにトランザクション効果が含まれていることを示す証明書。

roundCertificate

object (RoundCertificate)

出力専用。ラウンドの実行証明書。

pathToRoundRoot[]

object (MerkleTreeNode)

出力専用。実行ラウンドでのトランザクション効果の包含の暗号証明。

これは、指定されたリーフ(トランザクション ダイジェスト)から実行ラウンドのルートまでのパスとして指定されます。パスは(左の子、右の子)のペアのリストとして表され、最初のペアは指定されたリーフの親ノードの左の子と右の子です。たとえば、8 個のリーフ ダイジェスト [t0, t1, t2, t3, t4, t5, t6, t7] で構築された Merkle ツリーが次の構造であるとします。

       _____root_digest____
      |                    |
   __ h20__             __h21__
  |        |           |       |
 h10     h11          h12     h13
 | |     | |          | |     | |
t0 t1   t2 t3        t4 t5   t6 t7

ここで、t0pathToRoundRoot には [(t0, t1), (h10, h11), (h20, h21)] が含まれます。

各パスノードの SHA-256 ダイジェストを連続して計算し、パスのダイジェストが roundCertificate.merkle_tree.root_digest_hex と同じ値を生成することを確認できます。これにより、リーフがラウンドの Merkle ツリーに含まれていることを確認します。

TransactionCertificate

ラウンド内の特定のトランザクションの実行証明書。

JSON 表現
{
  "transactionDigestHex": string,
  "roundId": string,
  "transactionEffects": {
    object (TransactionEffects)
  },
  "events": [
    {
      object (TransactionEvent)
    }
  ],
  "transactionEffectsStateChecksumHex": string,
  "certificationResultsDigestHex": string
}
フィールド
transactionDigestHex

string

出力専用。この証明書の対象となる取引の ID。

roundId

string (int64 format)

出力専用。このトランザクションが実行された実行ラウンドの ID。

transactionEffects

object (TransactionEffects)

出力専用。トランザクション実行による影響。

events[]

object (TransactionEvent)

出力専用。トランザクションによって生成されたイベント。

transactionEffectsStateChecksumHex

string

出力専用。効果の準同型チェックサム。16 進数の文字列としてエンコードされた 2,048 バイトの値。

certificationResultsDigestHex

string

出力専用。前のすべてのフィールドの暗号化ダイジェスト。包含証明の Merkle ツリーを構築するために使用されます。

TransactionEffects

トランザクションの実行の影響。

JSON 表現
{
  "status": {
    object (TransactionStatus)
  },
  "effects": [
    {
      object (TransactionEffect)
    }
  ]
}
フィールド
status

object (TransactionStatus)

出力専用。トランザクション実行の結果ステータス。

effects[]
(deprecated)

object (TransactionEffect)

出力専用。非推奨: 代わりにネットワーク状態をクエリして、ワールド状態の変更を特定します。ワールド ステートにおけるトランザクションの効果。

TransactionStatus

トランザクション実行のステータスを表します。

JSON 表現
{
  "code": integer,
  "message": string
}
フィールド
code

integer

出力専用。ステータス コード。対応する gRPC ステータス コードによって意味が定義される数値。

message

string (bytes format)

出力専用。エラー メッセージ(表示された場合)。コードが OK でない場合にのみ設定します。これは、utf-8 バイトとしてエンコードされた文字列です。エンコードの決定論に関する問題を回避するため、バイトとして保存されます。

Base64 でエンコードされた文字列。

TransactionEffect

ワールド状態に対するトランザクションによる更新を表します。

deltaVal がある場合、特定のキーに以前に保存された値に適用されるデルタ(整数オフセット)と見なされます。その場合、newValoldVal は空にする必要があります。

それ以外の場合は、oldVal または newVal(または両方)の少なくとも 1 つがあると想定されます。oldVal が空の場合、値が挿入されたことを示します。newVal が空の場合、値が削除されたことを示します。

JSON 表現
{
  "key": string,
  "oldVal": string,
  "newVal": string,
  "deltaVal": string
}
フィールド
key

string (bytes format)

出力専用。更新されたワールド状態のキー。

Base64 でエンコードされた文字列。

oldVal

string (bytes format)

出力専用。トランザクションが実行される前のキーの値。

Base64 でエンコードされた文字列。

newVal

string (bytes format)

出力専用。トランザクションの実行後のキーの値。

Base64 でエンコードされた文字列。

deltaVal

string (int64 format)

出力専用。以前に保存された値に適用された整数オフセット。

TransactionEvent

トランザクションによって生成されたイベント。

JSON 表現
{
  "type": string,
  "attributes": [
    {
      object (EventAttribute)
    }
  ]
}
フィールド
type

string

出力専用。イベントのタイプ。タイプ transaction_output の特別なイベントには、トランザクションによって生成された出力(新しく作成されたアカウントのアカウント ID など)が含まれます。

attributes[]

object (EventAttribute)

出力専用。任意の Key-Value ペアとしてのイベント属性。

EventAttribute

Key-Value ペアとしての個々の属性。

JSON 表現
{
  "key": string,
  "value": string
}
フィールド
key

string

出力専用。属性のキー。

value

string

出力専用。属性の値。

RoundCertificate

特定のバリデータによるラウンドの実行の証明書。

JSON 表現
{
  "roundId": string,
  "validatorId": string,
  "roundStateChecksumHex": string,
  "roundDeltaChecksumHex": string,
  "merkleTree": {
    object (MerkleTree)
  },
  "validatorSignatures": [
    string
  ],
  "isFinalized": boolean
}
フィールド
roundId

string (int64 format)

出力専用。証明書の対象となるラウンドの ID。

validatorId

string

出力専用。人が読める形式の検証ツール ID。これは、validatorSignatures の検証に使用する公開鍵を検索するために使用されます。

roundStateChecksumHex

string

出力専用。このラウンドの効果が適用された後のワールド状態に対する準同型ダイジェストの 16 進数表現。

roundDeltaChecksumHex

string

出力専用。このラウンドの集計されたトランザクション効果に対する準同型ダイジェストの 16 進表現。

merkleTree

object (MerkleTree)

出力専用。このラウンドをルートノードとし、トランザクション バッチ(ラウンドで実行)をリーフとする Merkle ツリー。

validatorSignatures[]

string (bytes format)

省略可。検証ツールの署名。これは、このレコードの前のペイロードのダイジェストで署名されます。

Base64 でエンコードされた文字列。

isFinalized

boolean

出力専用。ラウンドが確定したかどうかを示すブール値。つまり、十分な数のバリデーターが同じ証明書でこのラウンドを認証したかどうかを示します。

MerkleTree

ルートノードの暗号ダイジェストを含む Merkle ツリー。

JSON 表現
{
  "rootHashHex": string,
  "rootDigestHex": string,
  "numTransactions": string
}
フィールド
rootHashHex
(deprecated)

string

出力専用。ルートノードの暗号ダイジェスト。非推奨: 代わりに、rootDigestHex を使用してください。

rootDigestHex

string

出力専用。ルートノードのダイジェストの 16 進数表現。形式: 64 文字の 16 進数文字列。

numTransactions

string (int64 format)

出力専用。ツリー内のトランザクションの数。

MerkleTreeNode

マークルツリー パスのノードを表します。

JSON 表現
{
  "leftChildHashHex": string,
  "rightChildHashHex": string,
  "leftChildDigestHex": string,
  "rightChildDigestHex": string
}
フィールド
leftChildHashHex
(deprecated)

string

出力専用。ノードの左の子のダイジェストの 16 進数表現。非推奨: 代わりに、leftChildDigestHex を使用してください。

rightChildHashHex
(deprecated)

string

出力専用。ノードの右の子のダイジェストの 16 進数表現。非推奨: 代わりに、rightChildDigestHex を使用してください。

leftChildDigestHex

string

出力専用。ノードの左の子のダイジェストの 16 進数表現。形式: 64 文字の 16 進数文字列。

rightChildDigestHex

string

出力専用。ノードの右の子のダイジェストの 16 進数表現。形式: 64 文字の 16 進数文字列。

StatusEvent

単一のバリデータによって観測されたトランザクションの処理におけるイベントを表します。

レポートされる値はすべて、リクエストを処理するバリデータの視点から見たものであり、他のバリデータの視点とは異なる場合があります。

JSON 表現
{
  "eventTime": string,
  "eventType": enum (EventType),
  "eventDetails": {
    object (EventDetails)
  }
}
フィールド
eventTime

string (Timestamp format)

出力専用。このバリデータによってイベントが記録された時刻。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

eventType

enum (EventType)

出力専用。イベントのタイプ。

eventDetails

object (EventDetails)

出力専用。イベントに関連付けられた追加の詳細。

EventType

リクエストの転送先となったバリデータが観測した、トランザクションの処理におけるイベントのタイプを表します。

列挙型
EVENT_TYPE_UNSPECIFIED 不明または未指定のイベント。
EVENT_TYPE_RECEIVED このトランザクションは、このバリデータがクライアントから直接受信しました。
EVENT_TYPE_BROADCASTED トランザクションは、このバリデータによって他のバリデータにブロードキャストされました。
EVENT_TYPE_ORDERED このトランザクションは、このバリデータによって注文され、実行がスケジュールされています。
EVENT_TYPE_EXECUTION_STARTED トランザクションの実行が開始されました。
EVENT_TYPE_EXECUTION_COMPLETED トランザクションの実行が完了しました。
EVENT_TYPE_FINALIZED このバリデータによってトランザクションが確定されました。

EventDetails

ステータス イベントの追加の詳細を表します。

JSON 表現
{

  // Union field event_details can be only one of the following:
  "executionDetails": {
    object (ExecutionDetails)
  }
  // End of list of possible types for union field event_details.
}
フィールド
共用体フィールド event_details。イベントの詳細。event_details は次のいずれかになります。
executionDetails

object (ExecutionDetails)

出力専用。実行イベントの追加の詳細。

ExecutionDetails

実行イベントの追加の詳細。

JSON 表現
{
  "roundId": string
}
フィールド
roundId

string (int64 format)

出力専用。実行イベントが発生したラウンド ID。