メインコンテンツまでスキップ

Ethereum連携

APIはステーキングやバリデーター操作のリソースを作成し、クライアントはEthereumトランザクションの署名とネットワークへの送信を行います。

フロー概要

バリデーターを作成する

  1. POST /v1/ethereum/stakesIdempotency-Keyを使用して、1つのバリデーターを作成します。
  2. 返却されたデポジットデータを使用して、デポジットトランザクションを準備、署名し、Ethereumネットワークに送信します。
  3. PUT /v1/ethereum/stakes/{stakeId}/submissionでネットワークに送信したトランザクションのハッシュを報告します。
  4. transaction.statussubmittedの間、GET /v1/ethereum/stakes/{stakeId}をポーリングします。confirmedまたはfailedに変わったら停止します。

引き出しアドレスは、バリデーターのwithdrawal credentialsの一部になります。バリデーターを作成する前に検証してください。

バリデーターを終了する

  1. POST /v1/ethereum/validators/{pubkey}/exit-requestsIdempotency-Keyを使用して、終了リクエストを作成します。
  2. リクエストが表すトランザクションに署名し、Ethereumネットワークに送信します。
  3. PUT /v1/ethereum/validators/{pubkey}/exit-requests/{requestId}/submissionでトランザクションハッシュを報告します。
  4. statussubmittedの間、GET /v1/ethereum/validators/{pubkey}/exit-requests/{requestId}をポーリングします。confirmedまたはfailedに変わったら停止します。

未送信の終了リクエストは、DELETE /v1/ethereum/validators/{pubkey}/exit-requests/{requestId}でキャンセルできます。キャンセル可能な状態は、APIリファレンスを確認してください。

部分引き出しをリクエストする

  1. POST /v1/ethereum/validators/{pubkey}/withdrawal-requestsIdempotency-Keyを使用して、リクエストを作成します。amountGweiは正の整数文字列で送信します。
  2. リクエストが表すトランザクションをEthereumネットワークに送信し、PUT /v1/ethereum/validators/{pubkey}/withdrawal-requests/{requestId}/submissionでハッシュを報告します。
  3. 送信時に202 Acceptedが返された場合は、Retry-Afterに従ってから、statussubmittedの間、GET /v1/ethereum/validators/{pubkey}/withdrawal-requests/{requestId}をポーリングします。confirmedまたはfailedに変わったら停止します。

リクエストを作成する前に、バリデーターが現在引き出し可能か、または引き出し可能な金額をアプリケーション上で表示する必要がある場合に限り、GET /v1/ethereum/validators/{pubkey}/withdrawal-capacityを使用します。最終的な検証は作成エンドポイントで行われます。