Note
- Solana program calls require a hot wallet and cannot be used in cold workspaces.
Overview
The Fireblocks API lets you initiate special transactions that interact directly with Solana programs. Calling a Solana program with our API allows you to initiate and sign a PROGRAM_CALL operation that includes details and clarity about the transaction.
Program call data is decoded for greater transparency, allowing you to monitor the transaction’s status using the Fireblocks Console or API. The status will be updated in real time to reflect its progress.
Creating a program call transaction on Solana
If you already use the @solana/web3.js library, you can use our Solana Web3 Adapter to simplify transaction sending.
Alternatively, you can call the Create a new transaction endpoint directly with the following parameters:
- Operation: Set to PROGRAM_CALL
- Source: The vault account ID from which the transaction is initiated
- Asset: SOL or SOL_TEST
- Data Payload: Pass the data payload as the ProgramCallData field under extraParameters
Fireblocks automatically uses a durable nonce for all program calls, ensuring they won't expire due to recent block hash expiration.
Creating Policy rules for program calls
Learn more about using the Policies for Solana DeFi operations on Fireblocks.