# Solana

> Pages under Solana in the Alchemy Docs.

## Pages

- [Quickstart](https://www.alchemy.com/docs/reference/solana-api-quickstart.md)
- [Accounts DB Infrastructure](https://www.alchemy.com/docs/solana/accounts-db-infra.md): Leverage Alchemy’s AccountsDB Infrastructure for Solana RPC Requests!
- [Solana API Overview](https://www.alchemy.com/docs/solana/solana-api-overview.md): Overview of available Solana API methods
- [getAccountInfo](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-account-info.md): Returns all information associated with the account of provided Pubkey.
- [getBalance](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-balance.md): Returns the lamport balance of the account of the provided Pubkey.
- [getBalanceByOwnerAtSlot](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-balance-by-owner-at-slot.md): Returns a wallet's total balance of a single SPL Token or Token-2022 mint as of a specific slot.
- [getBalanceByOwnerAtSlot](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-balance-by-owner-at-slot.md): Returns a wallet's total balance of a single SPL Token or Token-2022 mint as of a specific slot.
- [getBlock](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-block.md): Returns identity and transaction information about a confirmed block in the ledger.
- [getBlockCommitment](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-block-commitment.md): Returns the commitment for a particular block.
- [getBlockHeight](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-block-height.md): Returns the current block height of the node.
- [getBlockProduction](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-block-production.md): Returns recent block production information from the current or previous epoch.
- [getBlocks](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-blocks.md): Returns a list of confirmed blocks between two slots.
- [getBlocksWithLimit](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-blocks-with-limit.md): Returns a list of confirmed blocks starting at the given slot.
- [getBlockTime](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-block-time.md): Returns the estimated production time of a block.
- [getClusterNodes](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-cluster-nodes.md): Returns information about all the nodes participating in the cluster.
- [getEpochInfo](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-epoch-info.md): Returns information about the current epoch.
- [getEpochSchedule](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-epoch-schedule.md): Returns the epoch schedule information from the cluster's genesis config.
- [getFeeForMessage](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-fee-for-message.md): Get the fee the network will charge for a particular Message.
- [getFirstAvailableBlock](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-first-available-block.md): Returns the slot of the lowest confirmed block that has not been purged from the ledger.
- [getGenesisHash](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-genesis-hash.md): Returns the genesis hash.
- [getHealth](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-health.md): Returns the current health of the node.
- [getHighestSnapshotSlot](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-highest-snapshot-slot.md): Returns the highest slot information that the node has snapshots for.
- [getIdentity](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-identity.md): Returns the identity pubkey for the current node.
- [getInflationGovernor](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-inflation-governor.md): Returns the current inflation governor.
- [getInflationRate](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-inflation-rate.md): Returns the specific inflation values for the current epoch.
- [getInflationReward](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-inflation-reward.md): Returns the inflation or staking reward for a list of addresses for a specified epoch.
- [getLargestAccounts](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-largest-accounts.md): Returns the 20 largest accounts, by lamport balance.
- [getLatestBlockhash](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-latest-blockhash.md): Returns the latest blockhash.
- [getLeaderSchedule](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-leader-schedule.md): Returns the leader schedule for a given epoch.
- [getMaxRetransmitSlot](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-max-retransmit-slot.md): Get the max slot seen from the retransmit stage.
- [getMaxShredInsertSlot](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-max-shred-insert-slot.md): Get the max slot seen from after shred insert.
- [getMinimumBalanceForRentExemption](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-minimum-balance-for-rent-exemption.md): Returns the minimum balance required to make an account rent exempt.
- [getMultipleAccounts](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-multiple-accounts.md): Returns the account information for a list of Pubkeys.
- [getPriorityFeeEstimate](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-priority-fee-estimate.md): Calculate optimal priority fee recommendations for Solana transactions based on real-time network conditions.
- [getProgramAccounts](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-program-accounts.md): Returns all accounts owned by the provided program Pubkey.
- [getProgramAccountsV2](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-program-accounts-v-2.md): Paginated variant of getProgramAccounts. Reach for this when a program owns enough accounts that the single-response version times out or exhausts memory: indexing every token account for a mint, backfilling a DeFi protocol's state, or feeding analytics dashboards from raw on-chain data.

Requests accept the same commitment, encoding, dataSlice, and filters fields as getProgramAccounts, with three additions on the configuration object:

limit bounds a single page to between 1 and 10,000 accounts (default 1,000).
paginationKey is the cursor returned by the previous page; omit it on the first request.
changedSinceSlot restricts the page to accounts written at or after the given slot, so you can keep a downstream index in sync without re-scanning the whole program.

Keep paging while paginationKey is a string. It only turns null once the server has no more accounts to hand out; a page shorter than limit on its own does not mean the walk is finished, because filters can drop accounts server-side before the page ships.

Set withContext: true on the configuration object to receive the wrapped Solana RPC shape: a context object (with at minimum the slot the node evaluated the request at, plus apiVersion when the node reports one) beside a value payload holding accounts and paginationKey. Leave withContext unset or false and those two fields are returned directly on result with no context sibling. Every other aspect of the response is identical between the two shapes.

- [getRecentPerformanceSamples](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-recent-performance-samples.md): Returns a list of recent performance samples, in reverse slot order.
- [getRecentPrioritizationFees](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-recent-prioritization-fees.md): Returns a list of prioritization fees from recent blocks.
- [getSignaturesForAddress](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-signatures-for-address.md): Returns signatures for confirmed transactions that include the given address.
- [getSignatureStatuses](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-signature-statuses.md): Returns the statuses of a list of transaction signatures.
- [getSlot](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-slot.md): Returns the slot that has reached the given or default commitment level.
- [getSlotLeader](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-slot-leader.md): Returns the current slot leader.
- [getSlotLeaders](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-slot-leaders.md): Returns the slot leaders for a given slot range.
- [getStakeActivation](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-stake-activation.md): Returns epoch activation information for a stake account.
- [getStakeMinimumDelegation](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-stake-minimum-delegation.md): Returns the cluster's current stake minimum delegation, in lamports.
- [getSupply](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-supply.md): Returns information about the current supply of lamports.
- [getTokenAccountBalance](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-token-account-balance.md): Returns the token balance of an SPL Token account.
- [getTokenAccountsByDelegate](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-token-accounts-by-delegate.md): Returns all SPL Token accounts delegated to the provided account.
- [getTokenAccountsByOwner](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-token-accounts-by-owner.md): Returns all SPL Token accounts owned by the specified token owner.
- [getTokenAccountsByOwnerAtSlot](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-token-accounts-by-owner-at-slot.md): Returns every SPL Token and Token-2022 account owned by a wallet as of a specific slot.
- [getTokenLargestAccounts](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-token-largest-accounts.md): Returns the 20 largest accounts of a particular SPL Token type.
- [getTokenSupply](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-token-supply.md): Returns the total supply of an SPL Token type.
- [getTransaction](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-transaction.md): Returns transaction details for a confirmed transaction.
- [getTransactionCount](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-transaction-count.md): Returns the current transaction count from the ledger.
- [getTransactionsForAddress](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-transactions-for-address.md): Returns transaction history for a given address with advanced filtering, bidirectional sorting, and pagination. Combines the functionality of getSignaturesForAddress and getTransaction into a single call, returning up to 1,000 signatures or up to 100 full transactions per request.
- [getVersion](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-version.md): Returns the current Solana version running on the node.
- [getVoteAccounts](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/get-vote-accounts.md): Returns the account info and associated stake for all voting accounts in the current bank.
- [isBlockhashValid](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/is-blockhash-valid.md): Returns whether a blockhash is still valid or not.
- [minimumLedgerSlot](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/minimum-ledger-slot.md): Returns the lowest slot that the node has information about in its ledger.
- [requestAirdrop](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/request-airdrop.md): Requests an airdrop of lamports to a Pubkey.
- [sendTransaction](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/send-transaction.md): Submits a signed transaction to the cluster for processing.
- [simulateBundle](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/simulate-bundle.md): Simulates sending a Jito bundle of transactions.
- [simulateTransaction](https://www.alchemy.com/docs/chains/solana/solana-api-endpoints/simulate-transaction.md): Simulates sending a transaction.
- [Solana Account Archive](https://www.alchemy.com/docs/solana/account-archive.md): Query the state of any Solana account at any historical slot with a drop-in extension to getAccountInfo that adds slot, lastUpdateBeforeSlot, and firstUpdateAfterSlot cursor parameters.
- [Solana Photon API](https://www.alchemy.com/docs/chains/solana/solana-photon-api.md)
- [getCompressedAccount](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-compressed-account.md): Returns the compressed account matching the given address or hash. Photon's JSON-RPC for this method accepts the params as a positional pair [address, hash] — pass null for whichever identifier you are not using.

address queries compressed accounts created with a Light Protocol address.
hash queries by the merkle-tree leaf hash and works for every compressed account.

- [getCompressedAccountProof](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-compressed-account-proof.md): Returns a merkle proof for the compressed account with the given hash.
- [getCompressedAccountsByOwner](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-compressed-accounts-by-owner.md): Returns the compressed accounts owned by the given Pubkey.

Advanced filters (dataSlice, filters) are supported by the underlying Photon API but are not modeled in this Try It widget. To use them, send the request directly with dataSlice: { offset, length } and/or filters: [{ memcmp: { offset, bytes } }] added to the params object.

- [getCompressedBalance](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-compressed-balance.md): Returns the balance for the compressed account with the given address or hash. Provide either address or hash.
- [getCompressedBalanceByOwner](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-compressed-balance-by-owner.md): Returns the total compressed lamport balance owned by the given Pubkey.
- [getCompressedMintTokenHolders](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-compressed-mint-token-holders.md): Returns owners of compressed token accounts for the given mint, ranked by balance.
- [getCompressedTokenAccountBalance](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-compressed-token-account-balance.md): Returns the balance for the compressed token account with the given address or hash. Provide either address or hash.
- [getCompressedTokenAccountsByDelegate](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-compressed-token-accounts-by-delegate.md): Returns the compressed token accounts delegated to the given Pubkey.

Compressed token delegation is rare on mainnet, so most Pubkeys (including the example value) currently return an empty items array. To see a non-empty response, supply a Pubkey that has been set as the SPL-Token-2022 delegate on a compressed token account.

- [getCompressedTokenAccountsByOwner](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-compressed-token-accounts-by-owner.md): Returns the compressed token accounts owned by the given Pubkey.
- [getCompressedTokenBalancesByOwner](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-compressed-token-balances-by-owner.md): Returns the compressed token balances for the given Pubkey.
- [getCompressedTokenBalancesByOwnerV2](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-compressed-token-balances-by-owner-v-2.md): Returns the compressed token balances for the given Pubkey.
- [getCompressionSignaturesForAccount](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-compression-signatures-for-account.md): Returns the transaction signatures that closed or opened the compressed account with the given hash.
- [getCompressionSignaturesForAddress](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-compression-signatures-for-address.md): Returns the transaction signatures that closed or opened a compressed account at the given address.

This is for Light-Protocol style compressed accounts that have an address set (rather than the more common hash-only compressed token accounts). Most Pubkeys currently return an empty items array because the addressed-compressed-account namespace is not yet widely populated.

- [getCompressionSignaturesForOwner](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-compression-signatures-for-owner.md): Returns the transaction signatures involving compressed accounts owned by the given Pubkey.
- [getCompressionSignaturesForTokenOwner](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-compression-signatures-for-token-owner.md): Returns the transaction signatures involving compressed token accounts owned by the given Pubkey.
- [getIndexerHealth](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-indexer-health.md): Returns the health status of the compression indexer.
- [getIndexerSlot](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-indexer-slot.md): Returns the latest slot indexed by the compression indexer.
- [getLatestCompressionSignatures](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-latest-compression-signatures.md): Returns the most recent transaction signatures involving compressed state.
- [getLatestNonVotingSignatures](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-latest-non-voting-signatures.md): Returns the most recent non-voting transaction signatures observed by the indexer.
- [getMultipleCompressedAccountProofs](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-multiple-compressed-account-proofs.md): Returns merkle proofs for the compressed accounts with the given hashes.

The Photon API expects the JSON-RPC params array to be the list of hashes itself (each positional element is one hash). The spec models the first two positional slots; pass additional hashes as additional positional elements when needed.

- [getMultipleCompressedAccounts](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-multiple-compressed-accounts.md): Returns the compressed accounts with the given addresses or hashes. Provide either addresses or hashes.
- [getMultipleNewAddressProofs](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-multiple-new-address-proofs.md): Returns non-inclusion proofs for the given addresses, used when creating compressed accounts.

The Photon API expects the JSON-RPC params array to be the list of addresses itself (each positional element is one Pubkey). The spec models the first positional slot; pass additional addresses as additional positional elements when needed.

- [getMultipleNewAddressProofsV2](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-multiple-new-address-proofs-v-2.md): Returns non-inclusion proofs for the given (address, tree) pairs, used when creating compressed accounts.

The Photon API expects the JSON-RPC params array to be the list of pairs itself (each positional element is one { address, tree } object). The spec models the first positional slot; pass additional pairs as additional positional elements when needed.

- [getTransactionWithCompressionInfo](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-transaction-with-compression-info.md): Returns the transaction details for the given signature, with additional compression information about accounts opened or closed.
- [getValidityProof](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-validity-proof.md): Returns a single ZK validity proof for the given compressed account hashes and/or new addresses.
- [getValidityProofV2](https://www.alchemy.com/docs/chains/solana/solana-photon-api/solana-photon-api/get-validity-proof-v-2.md): Returns a single ZK validity proof for the given compressed account hashes and/or new addresses, with V2 merkle context information.
- [Solana Jito Bundles and Transactions](https://www.alchemy.com/docs/chains/solana/solana-jito-bundles-and-transactions.md)
- [getBundleStatuses](https://www.alchemy.com/docs/chains/solana/solana-jito-bundles-and-transactions/solana-jito-bundles-and-transactions/get-bundle-statuses.md): Get the status of submitted Jito bundles.
- [getInflightBundleStatuses](https://www.alchemy.com/docs/chains/solana/solana-jito-bundles-and-transactions/solana-jito-bundles-and-transactions/get-inflight-bundle-statuses.md): Get the in-flight status of Jito bundles from the last 5 minutes.
- [getTipAccounts](https://www.alchemy.com/docs/chains/solana/solana-jito-bundles-and-transactions/solana-jito-bundles-and-transactions/get-tip-accounts.md): Get the Jito tip accounts.
- [sendBundle](https://www.alchemy.com/docs/chains/solana/solana-jito-bundles-and-transactions/solana-jito-bundles-and-transactions/send-bundle.md): Submit a Jito bundle to the block engine.
- [FAQ](https://www.alchemy.com/docs/solana-api-faq.md): Frequently asked questions about the Solana API
