ブロックチェーン ノードの使用

このページでは、認証に API キーを使用して Blockchain Node Engine ノードをクエリする準備を行う方法について説明します。

ブロックチェーン ノードを使用できるようにするには、次の操作を行う必要があります。

API キーを作成する

ノードをクエリするには、認証に API キーを使用する必要があります。

Google Cloud コンソールでキーを生成するには:

  1. Google Cloud コンソールで、[API とサービス]、[認証情報] ページに移動します。

    [認証情報] に移動

  2. [認証情報を作成] をクリックします。

  3. [API キー] をクリックします。

  4. [API キーを作成しました] ダイアログで、[ コピー] をクリックして鍵をコピーし、一時ファイルに貼り付けます。API キーは、ブロックチェーン ノードをクエリするで必要になります。

API キーの詳細については、API キーを使用して認証するをご覧ください。

ブロックチェーン ノードのエンドポイント URL を取得する

ブロックチェーン ノードの URL は、コンソールを使用するか、API リクエストを送信することで取得できます。

コンソールの使用

UI でノードの詳細を表示するには:

  1. Google Cloud コンソールで、[Blockchain Node Engine] ページに移動します。

    ブロックチェーン ノード エンジンに移動

  2. デフォルトでは、[ノード] リストページが表示されます。

  3. ノード名をクリックします。[ノード詳細] ページが表示されます。
    ブロックチェーン ノードの URL が [エンドポイント] 領域に表示されます。

API の使用

ListBlockchainNodes を使用してブロックチェーン ノードに関連する詳細を一覧表示するには、次のリクエストを送信します。

curl \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
https://blockchainnodeengine.googleapis.com/v1/projects/PROJECT_ID/\
locations/LOCATION/blockchainNodes/NODE_NAME

ここで

Private Service 対応ノード

注: このセクションは、Private Service Connect ノードにのみ適用されます。他のすべてのノードは次のセクションに進むことができます。

Private Service Connect が有効になっているノードは、次の Ethereum の例に示すように serviceAttachment を返します。

{
  "name": "projects/cloud-web3/locations/us-central1/blockchainNodes/my-node",
  "createTime": "2023-12-08T15:06:43.538015Z",
  "updateTime": "2023-12-08T15:23:53.016239Z",
  "blockchainType": "ETHEREUM",
  "connectionInfo": {
    "serviceAttachment": "projects/associated-project/regions/us-central1/serviceAttachments/associated-service-attachment"
  },
  "ethereumDetails": {
    "network": "MAINNET",
    "nodeType": "ARCHIVE",
    "executionClient": "ERIGON",
    "consensusClient": "LIGHTHOUSE",
    "apiEnableAdmin": false,
    "apiEnableDebug": false
  },
  "state": "RUNNING",
  "pscOnly": true
}

ノードを使用するには、Private Service Connect の構成を完了します。次に、標準の DNS エンドポイントの代わりに、Private Service Connect の静的 IP アドレスと、選択したインタラクションに指定されたポートを使用してエンドポイントを作成します。

ポート番号の参照の場合:

パブリック エンドポイントを持つノード

返されたブロックチェーン URL は、次の Ethereum の例に示すように、endpointInfo セクションと additionalEndpoints セクションにあります。

{
  "name": "projects/my-project-id/locations/us-central1/blockchainNodes/my-node",
  "createTime": "2023-05-05T04:24:12.432769Z",
  "updateTime": "2023-05-05T05:03:02.561240Z",
  "labels": {
    "my-label-key": "my-label-value"
  },
  "blockchainType": "ETHEREUM",
  "connectionInfo": {
    "ipInfo": {
      "rpcIpv4Address": "192.0.2.1"
    },
    "endpointInfo": {
      "jsonRpcApiEndpoint": "json-rpc.ejp4j0b1rdiq06p8lxksd5z25.blockchainnodeengine.com",
      "websocketsApiEndpoint": "ws.ejp4j0b1rdiq06p8lxksd5z25.blockchainnodeengine.com"
    }
  },
  "ethereumDetails": {
    "network": "MAINNET",
    "nodeType": "FULL",
    "executionClient": "GETH",
    "consensusClient": "LIGHTHOUSE",
    "apiEnableAdmin": false,
    "apiEnableDebug": false,
    "additionalEndpoints": {
      "beaconApiEndpoint": "beacon.ejp4j0b1rdiq06p8lxksd5z25.blockchainnodeengine.com",
      "beaconPrometheusMetricsApiEndpoint": "bc-mc.ejp4j0b1rdiq06p8lxksd5z25.blockchainnodeengine.com"
    }
  },
  "state": "RUNNING"
}

関連情報: ブロックチェーン ノードの詳細を表示する、API を使用する

ブロックチェーン ノードに対してクエリを実行する

API キーとブロックチェーン ノードのエンドポイント URL がわかったので、使用手順については、各ブロックチェーンに該当するトピックをご覧ください。