get Block
Returns full details for a confirmed block by slot number.
getBlock returns everything recorded for a given slot: its blockhash, parent and timestamp. Depending on transactionDetails, it also returns every transaction, with full or partial detail, or only their signatures. transactionDetails: "full" on a busy block is one of the heaviest requests available; transactionDetails: "signatures" returns only the transaction list at far lower cost.
A mainnet block mixes legacy, version 0 and version 1 transactions; maxSupportedTransactionVersion: 1 decodes all three. See Transaction v1.
Parameters
params is a JSON array, with values in this order: slot, config.
Slot number of the block to fetch.
Optional configuration.
Show propertiesProperties
Bank state to read the block from. processed is not accepted here.
confirmedfinalizedEncoding for each transaction's data, when transactionDetails includes transactions at all.
jsonjsonParsedbase58base64How much transaction detail to include: full for complete transaction and metadata objects, accounts for a lighter per-transaction summary without logs, signatures for the signature list only, none for block-level fields only.
fullaccountssignaturesnoneWhether to include the block's leader/staking reward payouts.
Highest transaction version the caller can decode, as a ceiling rather than a filter: 1 returns legacy, version 0 and version 1 transactions alike. The value must be the JSON integer 1, not the string "1" (-32602); omitting it fails with -32015 on any block containing a versioned transaction, the normal case on mainnet.
0Maximum: 11Result
The block. A skipped slot returns code -32007 or -32009 instead.
Show one ofOne of
Show propertiesProperties
Number of blocks beneath this one (skipped slots don't count), or null if not available.
Estimated production time, as Unix seconds, or null if not available.
Present when transactionDetails is full or accounts. Each entry has the same transaction/meta shape as a getTransaction result, including meta.costUnits and, on version 1 transactions, transaction.message.transactionConfig.
Present only when transactionDetails is signatures: every transaction signature in the block, in order.
Present unless rewards was false: leader and staking reward payouts for this block.
Notes
- The example block contains 863 signatures. The example shows the first 3.
- Version 1 transactions are a normal part of a block. One finalized block measured on 2026-09-20 held 501 legacy, 409 version 0 and 164 version 1 transactions. A reader that omits
maxSupportedTransactionVersiongets-32015instead of the block. - With
transactionDetails: "full", version 1 transactions carry fee and resource requests intransaction.message.transactionConfiginstead of ComputeBudget instructions, and every transaction carriesmeta.costUnitsnext tometa.computeUnitsConsumed. See Transaction v1. - Cube Runner answers every
getBlockrequest. It returns a block older than the region's ledger when the region cache or another region's cache holds that block. On Blade Runner and Nexus tier plans, Cube Runner also retrieves the block from long-term storage when no cache, ledger or other region holds it.getFirstAvailableBlockreturns the oldest block from which every later block can be retrieved, andminimumLedgerSlotreturns the oldest slot the region's ledger holds. - When a block from long-term storage is not retrieved within 25 seconds, the response is HTTP
429with aRetry-Afterheader and code-32019, and the block stays queued. Repeating the request afterRetry-Afterreturns the block once it has been retrieved. See Queued requests. - A skipped slot returns code
-32007or-32009, not anullresult. Code-32019and HTTP429mean the block has not been served yet. See Client handling.