Use sendTransaction when you want a single RPC call that:
- broadcasts your signed transaction
- optionally runs preflight simulation to catch common failures
- optionally retries submission during congestion
The standard sendTransaction RPC method available through our Core API provides reliable transaction submission through Quicknode's globally distributed infrastructure. sendTransaction leverages our optimized node architecture to propagate your transaction to the Solana network efficiently.
Stake-Weighted Quality of Service (SWQoS) applies when transaction best practices are followed, as outlined in Quicknode’s Solana transaction guidelines.
Best for: General-purpose applications, development environments, and standard dApp operations where consistent, reliable performance is needed without specialized requirements.
Version 1 Transactions
Version 1 transactions carry their compute and fee settings in the message's transactionConfig object rather than in ComputeBudget instructions. Set computeUnitLimit and loadedAccountsDataSizeLimit explicitly: version 1 has no default for either, so leaving one unset sends zero and the transaction fails. An unset computeUnitLimit fails with ComputationalBudgetExceeded, and an unset loadedAccountsDataSizeLimit fails with MaxLoadedAccountsDataSizeExceeded before execution begins.
ComputeBudget instructions are still accepted in a version 1 transaction, but they are ignored. A SetComputeUnitLimit instruction does not raise the limit; only transactionConfig does.
Parameters
- transactionstring
The fully signed transaction as an encoded string. Legacy and version 0 transactions are capped at 1,232 bytes decoded, version 1 at 4,096.
- objectobject
The configuration object with the following fields:
- skipPreflightboolean
(default: false) If true, skip the preflight transaction checks
- preflightCommitmentstring
(default: finalized) The commitment level to use for preflight
- encodingstring
(Default: base58) The encoding of the supplied transaction. It can be base58 (slow) or base64. base58 is capped at 1,232 bytes decoded whatever the version, so a version 1 transaction over 1,232 bytes must be sent as base64
- maxRetriesusize
The maximum number of times for the RPC node to retry sending the transaction to the leader. If this parameter is not provided, the RPC node will retry the transaction until it is finalized or until the blockhash expires
- minContextSlotinteger
The minimum slot at which the request can be evaluated
Returns
- result
The First Transaction Signature embedded in the transaction, as base-58 encoded string (transaction id)
1{2"jsonrpc": "2.0",3"result": "2id3YC2jK9G5Wo2phDx4gJVAew8DcY5NAojnVuao8rkxwPYPe8cSwE5GzhEgJA2y8fVjDEo6iR6ykBvDxrTQrtpb",4"id": 15}
1{2"jsonrpc": "2.0",3"result": "2id3YC2jK9G5Wo2phDx4gJVAew8DcY5NAojnVuao8rkxwPYPe8cSwE5GzhEgJA2y8fVjDEo6iR6ykBvDxrTQrtpb",4"id": 15}