台帳に保存されているアカウントやトランザクションなどの情報をネットワークにクエリします。
アカウント残高など、特定の機密フィールドへのアクセスは、リクエストの署名から派生した送信者の ID に基づいて制限される場合があります。送信者に権限がない場合、機密フィールドはレスポンスから削除され、redactedFields フィールドに報告されます。
HTTP リクエスト
POST https://universalledger.googleapis.com/v1/{endpoint=projects/*/locations/*/endpoints/*}:queryData この URL は gRPC Transcoding 構文を使用します。
パスパラメータ
| パラメータ | |
|---|---|
endpoint |
必須。リクエストを処理するエンドポイント。形式: |
リクエストの本文
リクエストの本文には、次の構造のデータが含まれます。
| JSON 表現 |
|---|
{ "serializedSignedQueryRequest": string } |
| フィールド | |
|---|---|
serializedSignedQueryRequest |
必須。Universal Ledger ネットワークにクエリする protobuf シリアル化された Base64 でエンコードされた文字列。 |
レスポンスの本文
endpoints.queryData のレスポンス メッセージ。
成功した場合、レスポンスの本文には次の構造のデータが含まれます。
| JSON 表現 |
|---|
{ "redactedFields": [ { object ( |
| フィールド | |
|---|---|
redactedFields[] |
権限の制限によりレスポンスから削除されたフィールドを示します。 |
共用体フィールド kind。クエリ固有の結果。kind は次のいずれかになります。 |
|
account |
クエリがアカウントに対するものであった場合のアカウント情報。 |
transactionState |
クエリがトランザクションに対するものであった場合のトランザクションの状態。 |
認可スコープ
次の OAuth スコープが必要です。
https://www.googleapis.com/auth/cloud-platform
詳細については、 Authentication Overviewをご覧ください。
TransactionState
トランザクションの状態。
| JSON 表現 |
|---|
{
"transactionAttempts": [
{
object ( |
| フィールド | |
|---|---|
transactionAttempts[] |
リクエストを処理するバリデータへのトランザクションの既知の送信ごとに 1 つのエントリ。 |
RedactedField
レスポンスで削除されたフィールドに関する情報。
| JSON 表現 |
|---|
{
"redactedPath": string,
"reason": string,
"reasonCode": enum ( |
| フィールド | |
|---|---|
redactedPath |
出力専用。ペイロードから削除された完全修飾フィールド パス。 完全修飾フィールド名のカンマ区切りリスト。例: |
reason |
出力専用。フィールドが削除された理由を説明する、人が読める形式の文字列。 |
reasonCode |
出力専用。フィールドが削除された理由を示す、マシンが読み取れるコード。 |
コード
gRPC API の正規のエラーコード。
複数のエラーコードが該当する場合があります。サービスは、該当する最も具体的なエラーコードを返す必要があります。たとえば、両方のコードが該当する場合、FAILED_PRECONDITION より OUT_OF_RANGE を優先します。同様に、FAILED_PRECONDITION より NOT_FOUND または ALREADY_EXISTS を優先します。
| 列挙型 | |
|---|---|
OK |
エラーではありません。成功したときに返されます。 HTTP マッピング: 200 OK |
CANCELLED |
オペレーションがキャンセルされました。通常、キャンセルは呼び出し元により行われます。 HTTP マッピング: 499 クライアントのクローズ リクエスト |
UNKNOWN |
不明なエラーです。たとえば、別のアドレス空間から受信した HTTP マッピング: 500 内部サーバーエラー |
INVALID_ARGUMENT |
クライアントが無効な引数を指定しました。これは HTTP マッピング: 400 不正なリクエスト |
DEADLINE_EXCEEDED |
オペレーションが完了する前に期限が切れました。システムの状態を変更するオペレーションの場合、オペレーションが正常に終了しても、このエラーが返されることがあります。たとえば、サーバーからの正常なレスポンスが期限切れになるほど遅延する場合もあります。 HTTP マッピング: 504 ゲートウェイ タイムアウト |
NOT_FOUND |
一部のリクエストされたエンティティ(ファイルやディレクトリなど)が見つかりませんでした。 サーバー デベロッパーへの注: 段階的な機能のロールアウトや文書化されていない許可リストなど、ユーザークラス全体に対してリクエストが拒否された場合は、 HTTP マッピング: 404 見つかりません |
ALREADY_EXISTS |
クライアントが作成しようとしたエンティティ(ファイルまたはディレクトリなど)はすでに存在しています。 HTTP マッピング: 409 競合 |
PERMISSION_DENIED |
呼び出し元には、指定されたオペレーションを実行する権限がありません。 HTTP マッピング: 403 禁止です |
UNAUTHENTICATED |
リクエストにはオペレーションに有効な認証情報がありません。 HTTP マッピング: 401 権限なし |
RESOURCE_EXHAUSTED |
ユーザーごとの割り当て、またはファイル システム全体で容量が不足しているため、一部のリソースが枯渇しています。 HTTP マッピング: 429 リクエストが多すぎます |
FAILED_PRECONDITION |
システムがオペレーションの実行に必要な状態ではないため、オペレーションが拒否されました。たとえば、削除されるディレクトリが空でない、rmdir オペレーションがディレクトリ以外に適用されているなどの状態です。 サービスの実装者は、次のガイドラインを使用して、 HTTP マッピング: 400 不正なリクエスト |
ABORTED |
オペレーションは、通常、シーケンサー チェックの失敗、またはトランザクションの中止などの同時実行の問題のために中止されています。
HTTP マッピング: 409 競合 |
OUT_OF_RANGE |
オペレーションが有効な範囲を超えて試行されました。たとえば、ファイルの終わりを超えたシークまたは読み取りなどが該当します。
HTTP マッピング: 400 不正なリクエスト |
UNIMPLEMENTED |
オペレーションが実装されていないか、このサービスでサポートまたは有効にされていません。 HTTP マッピング: 501 実装されていません |
INTERNAL |
内部エラー。これは、基盤となるシステムで予期される一部の不変条件が満たされていないことを意味します。このエラーコードは深刻なエラーのために予約されています。 HTTP マッピング: 500 内部サーバーエラー |
UNAVAILABLE |
サービスは現在使用できません。これは、バックオフで再試行することで解決できる可能性が高い一時的な状態です。非べき等オペレーションの再試行が常に安全であるとは限りません。
HTTP マッピング: 503 サービスを利用できません |
DATA_LOSS |
回復不能なデータの消失や破損。 HTTP マッピング: 500 内部サーバーエラー |