Get staked in minutes with recipes!
Staking with Fireblocks? → Click here
Staking from a Hot Wallet? → Click here
Using own RPC Node (and need to merge witnesses into a single CBOR to broadcast)? → Click here
Set up Blockfrost
Blockfrost provides RPC access to the Cardano blockchain, allowing you to broadcast transactions and query blockchain data.
To use Blockfrost with our API you'll need to create an API key and submit it to us.
You'll need to register a blockfrost API key for each network (preprod and mainnet). You only need to perform this action once per network.
- Step 1: Create an API Key
Sign up at Blockfrost and generate an API key (production or pre-production).
- Submit Your API Key to Figment
Send your API key to Figment via 👉 POST Blockfrost Project endpoint
(Optional) Retrieve and Remove Your API Key: You can always retrieve your submitted API key via 👉 GET Blockfrost Projects or remove your Blockfrost API key, use the DEL Blockfrost Project endpoint.
Delegating
When you first delegate on Cardano, the first step is to register your stake key and delegate to a stake pool. Figment’s API allows you to do both in a single transaction, making the process simpler and faster.
Step 1: Understand What Happens
When you register a stake key and delegate:
- Your wallet creates a stake key registration certificate on the blockchain.
- This automatically generates a Reward Account (also called a stake address).
- You pay a deposit of 2 ADA for the registration (refundable if you later deregister).
- Your stake is delegated to the chosen stake pool immediately after registration.
Step 2: Generate the Combined Stake Key Registration + Delegation Payload
Figment provides a Cardano API endpoint to generate the transaction payload for both registering a stake key and delegating:
👉 Endpoint: POST /delegate
Key steps:
- Provide your
wallet addressand thestake pool IDyou want to delegate to. - Figment will return a
signing_payload— this includes both the stake key registration and delegation instructions.
This means you don’t need two separate transactions. Everything is handled in one step.
A stake key is a unique identifier that links your wallet to a reward account. Registering it allows you to earn rewards from staking.
To enable rewards withdrawal, Cardano requires that stakers either:
- delegate their governance voting power to a delegated representative or
- explicitly abstain from governance voting.
The /delegate endpoint explicitly sets wallet addresses to abstain.
Step 3: Sign & Broadcast
Use your wallet or custody API to sign the signing_payload.
After signing, you will receive a signature that can be submitted via:
- 👉 Endpoint: POST /broadcast: Use this endpoint when signing with proprietary custody solutions or any non-Fireblocks service. You must merge two witnesses into one cbor object before calling this endpoint. Please see here. Some of the hot wallets takes care of this merge process internally. In this case, see here
- 👉 Endpoint: POST /broadcast/fireblocks: When signing Cardano transactions via the Fireblocks API, the response includes a
publicKeyand aFullSig. Simply pass the array returned from Fireblocks directly to the dedicated broadcast endpoint. This endpoint will automatically generate the two required witnesses for broadcasting the transaction, eliminating the need to create them manually. See here
Transfer
Figment’s API lets you transfer ADA between wallets by generating a transaction payload that you can sign and submit to broadcast.
Step 1: Understand What Happens
- Specify the
from_account_addressandto_account_addressand the amount of ADA. - Figment builds a transaction payload including inputs, outputs, and fees.
- You sign the payload and submit it to broadcast the transaction on the Cardano network.
Step 2: Generate the Transfer Payload
👉 Endpoint: POST /transfer
Key steps:
- Create a transfer flow by providing network:
cardano/preprod - Provide
from_account_address,to_account_address, and amount. - Figment returns a
signing_payloadready to be signed and submitted.
Step 3: Sign & Broadcast
Use your wallet or custody API to sign the signing_payload. After signing, you will receive a signature that can be submitted via:
👉 Endpoint: POST /broadcast
👉 Endpoint: POST /broadcast/fireblocks:
