Use ETH Staking API With Fireblocks
Explore seamless onboarding of the Staking API with Blockdaemon and utilization of ETH Staking API with Fireblocks.
Staking ETH with Blockdaemon's Staking API and Fireblocks is a relatively simple process. By following the steps outlined in this guide, you can onboard the Staking API, create a stake, and sign and broadcast the transaction using Fireblocks.
Onboarding the Staking API
To begin onboarding the Staking API with Blockdaemon, follow these steps:
- Provide Blockdaemon with the following information:
- Network: Mainnet or Goerli/Prater testnet.
- MEV (Miner Extracted Value) enabled or disabled.
- Geolocation preference.
- Default fee recipient address for Blockdaemon to set for all validators in the plan (this value can be overridden when you make the stake-intent API call).
- Once you have provided this information, Blockdaemon will create a staking plan with the above configuration. A staking plan is a pool of validators dedicated to your organization.
- Review the plan details in the Blockdaemon app and accept the plan if all looks good.
- After accepting the plan, create an API key under the
connect tab
in the Staking API section and store the key securely.
Creating a Stake with Blockdaemon
To create a stake with Blockdaemon, you'll need to call the Post Ethereum Stake Intent endpoint, which will return the unsigned stake transaction.
Note!
It is recommended to specify the plan-id when making the call. This ensures that you are explicitly telling the API which pool of validators you want to stake to. The plan-id can be retrieved from the Blockdaemon app.
Signing and Broadcasting the Transaction with Fireblocks
- Create a Fireblocks API User (if you already have created one, skip and proceed to the next step).
- Upload the transaction to the Fireblocks Console using the Fireblocks API POST /v1/transactions endpoint.
- Populate the
unsigned_transaction
(returned in the response from the Post Ethereum Stake Intent endpoint) into thecontractCallData
field in the Fireblocks endpoint. - Complete the transaction signing.
Remember!
There is a default two-hour timeout after the transaction is created for signing in Fireblocks.
Updated 3 days ago