# MagicBlock Documentation > With MagicBlock, anything you imagine is possible. Build unstoppable games, high-speed DeFi, and Web3 apps that run like Web2. ## Docs - [Why MagicBlock?](https://docs.magicblock.gg/pages/get-started/introduction/why-magicblock.md): The high-performance engine for real-time applications on Solana - [Products](https://docs.magicblock.gg/pages/overview/products.md): MagicBlock is your backend for the new financial internet. Upgrade your Solana program and build composable applications with real-time UX, on-chain privacy, and verifiable randomness. - [Introduction](https://docs.magicblock.gg/pages/get-started/use-cases/introduction.md): Discover Use Cases of Unstoppable Applications - [Games](https://docs.magicblock.gg/pages/get-started/use-cases/games.md): Unlock the next era of real-time on-chain gaming - [Finance](https://docs.magicblock.gg/pages/get-started/use-cases/finance.md): Unlock the next era of real-time decentralized finance - [Payments](https://docs.magicblock.gg/pages/get-started/use-cases/payments.md): Unlock the next era of real-time on-chain payments - [AI Agents](https://docs.magicblock.gg/pages/get-started/use-cases/ai.md): Unlock the next era of real-time on-chain AI - [DePIN](https://docs.magicblock.gg/pages/get-started/use-cases/depin.md): Unlock the next era of real-time decentralized physical infrastructure networks - [Privacy](https://docs.magicblock.gg/pages/get-started/use-cases/privacy.md): Unlock private, verifiable computation - [Prediction Markets and Trading](https://docs.magicblock.gg/pages/solutions/prediction-markets.md): Architecture guide for prediction markets, leveraged trading, and settlement using Ephemeral Rollups, session keys, SPL token custody, pricing oracles, cranks, and Magic Actions. - [Pricing](https://docs.magicblock.gg/pages/overview/additional-information/pricing.md): MagicBlock’s pricing is modeled after decentralized cloud infrastructure. The goal is to keep computing costs **predictable for developers**, while still providing **flexibility for enterprises** that need priority access or dedicated resources. - [Security & Audits](https://docs.magicblock.gg/pages/overview/additional-information/security-and-audits.md): At MagicBlock, security is a top priority. All our core programs have undergone professional audits to ensure robustness and safety for our users. - [Systems Status](https://docs.magicblock.gg/pages/overview/additional-information/system-status.md) - [Whitepaper](https://docs.magicblock.gg/pages/overview/additional-information/whitepaper.md): Ephemeral Rollups Are All You Need (https://arxiv.org/abs/2311.02650) - [Request For Products](https://docs.magicblock.gg/pages/overview/additional-information/request-for-products.md): Go beyond tutorials by working on real-world problems and community challenges. The Request for Products (RFPs) showcase open ideas and challenges waiting for contributors like you. - [AI Dev Skill](https://docs.magicblock.gg/pages/overview/additional-information/ai-dev-skill.md): MagicBlock Ephemeral Rollups development skill for AI coding agents, with MagicBlock-specific patterns for delegation, fee economics, Magic Actions, cranks, VRF, lamports top-up, the Ephemeral SPL Token lifecycle, private payments with swaps, and dual-connection architecture. - [Quickstart](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/how-to-guide/quickstart.md): Any Solana program can be upgraded with Ephemeral Rollups by adding delegation capabilities. - [Local Development](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/how-to-guide/local-development.md): Run and test your Native Rust or Anchor programs with a fully local Ephemeral Rollup stack, Surfpool, or a local VRF oracle. - [Ephemeral Rollup](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/introduction/why.md): The high-performance engine for real-time applications on Solana - [Delegation, Commitment & Undelegation](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/introduction/ephemeral-rollup.md): Execute Transactions, Synchronize States, all in real-time. - [Ephemeral Accounts](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/introduction/ephemeral-accounts.md): Create, resize, and close accounts that live entirely on the Ephemeral Rollup. - [Magic Router](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/introduction/magic-router.md): Learn how Magicblock's Magic Router accelerates transactions by routing them to the right execution environment. - [Runtime Limits](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/introduction/runtime-limits.md): Compute, transaction size, and account size limits on the Ephemeral Rollup compared to Solana - [Fees, Commits, and Refunds](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/introduction/fees-and-commit-economics.md): A plain-language guide to ER fees, commit limits, delegation deposits, and refunds - [Anchor Guide](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/how-to-guide/anchor.md): Learn how to write a simple Anchor program that increments a counter on Solana - [Solana Program](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/how-to-guide/rust-program.md): Learn how to write a simple Rust program that delegates and increments a counter on Solana - [Test Your Program](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/how-to-guide/rust-tests.md): Learn how to test a simple Rust program - [Introduction](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/magic-actions/overview.md): Automatically execute base-layer actions while Delegated - [Program Implementation](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/magic-actions/implementation.md): Program-side guide to building with Magic Actions - [Client Implementation](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/magic-actions/client.md): Client-side guide to building with Magic Actions - [Troubleshooting](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/magic-actions/troubleshooting.md): Diagnose common issues with Magic Actions - [Introduction](https://docs.magicblock.gg/pages/tools/crank/introduction.md): Automated, time-based execution of on-chain instructions - [Implementation](https://docs.magicblock.gg/pages/tools/crank/implementation.md): Learn how to implement cranks in your Solana program using MagicBlock Ephemeral Rollups - [Introduction](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/er/introduction.md): MagicBlock Router API documentation - [getRoutes](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/er/getRoutes.md): Get available ephemeral rollup nodes from the Magic Router - [getIdentity](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/er/getIdentity.md): Get the identity information of the current ER Validator - [getBlockhashForAccounts](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/er/getBlockhashForAccounts.md): Get blockhash for multiple account addresses. - [getSignatureStatuses](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/er/getSignatureStatuses.md): Returns the confirmation status for one or more signatures - [getAccountInfo](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/er/getAccountInfo.md): Get AccountInfo for a single account. - [getDelegationStatus](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/er/getDelegationStatus.md): Get delegation status for a single account from Magic Router. - [RPC API](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/introduction.md): Solana JSON-RPC HTTP methods on MagicBlock devnet RPC endpoints. - [getAccountInfo](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getAccountInfo.md): Returns all information associated with an account of provided Pubkey. - [getBalance](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getBalance.md): Solana JSON-RPC method getBalance. - [getBlock](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getBlock.md): Returns identity and transaction information about a confirmed block in the ledger. - [getBlockCommitment](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getBlockCommitment.md): Returns commitment for particular block. - [getBlockHeight](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getBlockHeight.md): Returns the current block height of the node. - [getBlocks](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getBlocks.md): Returns a list of confirmed blocks between two slots. - [getBlocksWithLimit](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getBlocksWithLimit.md): Returns a list of confirmed blocks starting at the given slot for a given limit. - [getBlockTime](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getBlockTime.md): Returns the estimated production time of a block. - [getFirstAvailableBlock](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getFirstAvailableBlock.md): Solana JSON-RPC method getFirstAvailableBlock. - [getGenesisHash](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getGenesisHash.md): Solana JSON-RPC method getGenesisHash. - [getHealth](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getHealth.md): Solana JSON-RPC method getHealth. - [getIdentity](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getIdentity.md): Solana JSON-RPC method getIdentity. - [getLargestAccounts](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getLargestAccounts.md): Returns the 20 largest accounts, by lamport balance. - [getLatestBlockhash](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getLatestBlockhash.md): Returns the latest blockhash. - [getLeaderSchedule](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getLeaderSchedule.md): Returns the leader schedule for an epoch. - [getMinimumBalanceForRentExemption](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getMinimumBalanceForRentExemption.md): Returns minimum balance required to make account rent exempt. - [getMultipleAccounts](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getMultipleAccounts.md): Returns the account information for a list of Pubkeys. - [getProgramAccounts](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getProgramAccounts.md): Returns all accounts owned by the provided program Pubkey. - [getRecentPerformanceSamples](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getRecentPerformanceSamples.md): Returns a list of recent performance samples, in reverse slot order. - [getSignaturesForAddress](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getSignaturesForAddress.md): Returns signatures for confirmed transactions that include the given address. - [getSignatureStatuses](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getSignatureStatuses.md): Returns the statuses of a list of signatures. - [getSlot](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getSlot.md): Returns the slot that has reached the given or default commitment level. - [getTokenAccountBalance](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getTokenAccountBalance.md): Returns the token balance of an SPL Token account. - [getTokenAccountsByDelegate](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getTokenAccountsByDelegate.md): Returns all SPL Token accounts by approved Delegate. - [getTokenAccountsByOwner](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getTokenAccountsByOwner.md): Returns all SPL Token accounts by token owner. - [getTokenLargestAccounts](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getTokenLargestAccounts.md): Returns the 20 largest accounts of a particular SPL Token type. - [getTokenSupply](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getTokenSupply.md): Returns the total supply of an SPL Token type. - [getTransaction](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getTransaction.md): Returns transaction details for a confirmed transaction. - [getTransactionCount](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getTransactionCount.md): Returns the current transaction count from the ledger. - [getVersion](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/getVersion.md): Solana JSON-RPC method getVersion. - [isBlockhashValid](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/isBlockhashValid.md): Returns whether a blockhash is still valid or not. - [sendTransaction](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/sendTransaction.md): Submits a signed transaction to the cluster for processing. - [simulateTransaction](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/simulateTransaction.md): Simulate sending a transaction. - [FAQ](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/introduction/faq.md): Execute Transactions, Synchronize States, all in real-time. - [Quickstart](https://docs.magicblock.gg/pages/private-ephemeral-rollups-pers/how-to-guide/quickstart.md): Enable privacy in any Solana program state account through MagicBlock's ER and Trusted Execution Environment on Intel TDX. - [Local Development](https://docs.magicblock.gg/pages/private-ephemeral-rollups-pers/how-to-guide/local-development.md): Run and test your Private Ephemeral Rollup programs locally, with the Query Filtering Service emulating the TEE privacy layer — no hardware attestation required. - [Onchain Privacy](https://docs.magicblock.gg/pages/private-ephemeral-rollups-pers/introduction/onchain-privacy.md): The high-performance engine for real-time applications that require privacy and compliance on Solana - [Authorization](https://docs.magicblock.gg/pages/private-ephemeral-rollups-pers/introduction/authorization.md): Customize authorized access through onchain restrictions on account level for user groups. - [Compliance Framework](https://docs.magicblock.gg/pages/private-ephemeral-rollups-pers/introduction/compliance-framework.md): MagicBlock enables confidential execution without compromising performance, compliance, or control. - [Access Control](https://docs.magicblock.gg/pages/private-ephemeral-rollups-pers/how-to-guide/access-control.md): Learn how to manage fine-grained access control and member permissions in Private Ephemeral Rollups. - [Private Payments](https://docs.magicblock.gg/pages/private-ephemeral-rollups-pers/api-reference/per/introduction.md): Private, compliant onchain payments on MagicBlock — powered by Ephemeral SPL Tokens. - [Ephemeral SPL Tokens](https://docs.magicblock.gg/pages/ephemeral-spl-token/overview.md): Move SPL tokens at Ephemeral Rollup speed with the Ephemeral SPL Token program — learn the eATA, Global Vault, delegation, custody, and private-payment models. - [Ephemeral SPL Token Quickstart](https://docs.magicblock.gg/pages/ephemeral-spl-token/quickstart.md): Delegate an SPL token account to an Ephemeral Rollup, transfer on the ER, and withdraw back to the base layer — with the ephemeral-rollups-sdk. - [Smart Contract Integration](https://docs.magicblock.gg/pages/ephemeral-spl-token/smart-contract-integration.md): Custody and move SPL tokens from your own Solana program on an Ephemeral Rollup — PDA-signed transfers, delegation, and commit/undelegate. - [Private Payments with Ephemeral SPL Tokens](https://docs.magicblock.gg/pages/ephemeral-spl-token/private-payments.md): Use Ephemeral SPL Tokens for private deposits, transfers, and withdrawals — private visibility, stealth handles, and queued settlement over the hosted API. - [Introduction](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/introduction.md): Ephemeral SPL Token API documentation - [Deposit SPL Tokens](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/deposit.md): Wraps the SDK `delegateSpl(...)` flow. The API generates `shuttleId` server-side and pins `escrowIndex` to `0`. - [Transfer SPL Tokens](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/transfer.md): Transfer SPL tokens publicly or privately through an ephemeral rollup. Accepts an optional `Authorization: Bearer ` header obtained from the `/v1/spl/login` flow when the request needs to read or write data inside the Private Ephemeral Rollup. - [Withdraw SPL Tokens](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/withdraw.md): Wraps the SDK `withdrawSpl(...)` flow. The API generates `shuttleId` server-side. - [Balance](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/balance.md): Reads the owner's associated token account on the base RPC. - [Initialize Mint](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/initialize-mint.md) - [Is Mint Initialized](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/is-mint-initialized.md) - [Undelegate Ephemeral ATA](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/undelegate-ephemeral-ata.md): Build an unsigned ephemeral-rollup transaction that undelegates a wallet's ephemeral ATA (eATA) for a mint, committing its balance back toward the base layer. Accepts an optional `Authorization: Bearer ` header. - [Send Transaction](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/transaction-send.md): Submit a signed, serialized transaction. Use the `sendTo` value returned by a build endpoint (deposit / transfer / withdraw / stealth-pool) to route the transaction to the base layer or the ephemeral RPC. Accepts an optional `Authorization: Bearer ` header for ephemeral submissions that requi… - [Challenge](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/challenge.md): Returns a challenge string that the wallet must sign. The signature is then submitted to `/v1/spl/login` in exchange for a bearer token used to read private data. - [Login](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/login.md): Verifies the wallet's signature over the challenge issued by `/v1/spl/challenge` and returns an authentication token. Pass the token as `Authorization: Bearer ` on `/v1/spl/private-balance` and on `/v1/spl/transfer` requests that need to connect to the Private Ephemeral Rollup. - [Private Balance](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/private-balance.md): Reads the owner's associated token account on the ephemeral RPC. Requires an `Authorization: Bearer ` header obtained from `/v1/spl/login`. - [Create Stealth Pool](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/stealth-pool.md): Build unsigned stealth-pool setup and ER update transactions that map a handle to 1-10 destination owner keys. Requires an `Authorization: Bearer ` header from the `/v1/spl/login` flow. Once initialized, the handle can be used as the `to` value of a private `/v1/spl/transfer`. - [Get Stealth Pool Status](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/stealth-pool-status.md): Derive a stealth-pool PDA from an exact handle and report whether the base account exists. Does not return the destination keys. - [Ensure Transfer Queue Crank](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/transfer-queue-ensure-crank.md): After setup confirmation, verify that the validator-scoped transfer queue exists for a mint and force one crank attempt. Used to make sure queued private transfers make progress. - [Swap Quote](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/quote.md): Returns a swap quote between two SPL mints. The quote response can be passed as-is into `POST /v1/swap/swap` to build the swap transaction. - [Swap](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/swap.md): Build an unsigned swap transaction from a quote. - [Health](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/health.md) - [MCP](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/mcp.md) - [Quickstart](https://docs.magicblock.gg/pages/verifiable-randomness-functions-vrfs/how-to-guide/quickstart.md): Learn how to request and consume Solana VRF randomness onchain using the MagicBlock VRF SDK. - [Overview](https://docs.magicblock.gg/pages/verifiable-randomness-functions-vrfs/introduction/solana-vrf.md): Use MagicBlock Solana VRF to request provably fair randomness - [Technical Details](https://docs.magicblock.gg/pages/verifiable-randomness-functions-vrfs/introduction/technical-details.md): How Solana VRF integrates with MagicBlock - [Security](https://docs.magicblock.gg/pages/verifiable-randomness-functions-vrfs/introduction/security.md): How Solana VRF randomness proofs are verified - [Best Practices](https://docs.magicblock.gg/pages/verifiable-randomness-functions-vrfs/how-to-guide/best-practices.md): Guidelines for integrating verifiable randomness - [Pricing](https://docs.magicblock.gg/pages/verifiable-randomness-functions-vrfs/introduction/pricing.md): Pricing for provably fair randomness requests with MagicBlock Solana VRF. - [FAQ](https://docs.magicblock.gg/pages/verifiable-randomness-functions-vrfs/introduction/faq.md): Common questions about Solana VRF - [Introduction](https://docs.magicblock.gg/pages/tools/oracle/introduction.md): Real-time onchain data with MagicBlock Ephemeral Rollups - [Implementation](https://docs.magicblock.gg/pages/tools/oracle/implementation.md): Derive the Pyth Lazer price feed account and decode its bytes - [Oracle-Priced Purchase](https://docs.magicblock.gg/pages/templates/oracle-priced-purchase.md): Learn oracle account validation, freshness checks, price conversion, and slippage protection with a compact Anchor example. - [Onchain Dice](https://docs.magicblock.gg/pages/templates/onchain-dice.md) - [Counter](https://docs.magicblock.gg/pages/templates/counter.md) - [Binary Prediction](https://docs.magicblock.gg/pages/templates/binary-prediction.md): Build an up/down prediction flow with session-authorized bets, SPL token custody, real-time oracle prices, and Ephemeral Rollup settlement. - [Sealed-Bid Auction](https://docs.magicblock.gg/pages/templates/sealed-bid-auction.md): Run a private first-price sealed-bid auction with hidden bids on a Private Ephemeral Rollup, SPL token escrow on both layers, and on-chain winner selection. - [Private Payments](https://docs.magicblock.gg/pages/templates/private-payments.md) - [Rock Paper Scissors](https://docs.magicblock.gg/pages/templates/rock-paper-scissors.md) - [Real-Time Price Feed](https://docs.magicblock.gg/pages/templates/real-time-price-feed.md) - [VRF Rewards](https://docs.magicblock.gg/pages/templates/vrf-rewards.md): Mint random rewards on an Ephemeral Rollup with a delegated reward account, verifiable randomness from the VRF oracle, and commit-back settlement to Solana. - [Gachapon](https://docs.magicblock.gg/pages/templates/gachapon.md) - [Random Character Generator](https://docs.magicblock.gg/pages/templates/random-character-generator.md) - [Introduction](https://docs.magicblock.gg/pages/tools/introduction.md): Utilize existing SDKs and Frameworks to accelerate your development process - [Overview](https://docs.magicblock.gg/pages/tools/wallets-and-onramp/overview.md): Accelerate user onboarding with existing wallet and onramp solutions - [Introduction](https://docs.magicblock.gg/pages/tools/session-keys/introduction.md): What are Session Keys? - [How do Session Keys work?](https://docs.magicblock.gg/pages/tools/session-keys/how-do-session-keys-work.md): What are Session Keys? - [Security](https://docs.magicblock.gg/pages/tools/session-keys/security.md): Key management and security model - [Integrating Sessions in your Program](https://docs.magicblock.gg/pages/tools/session-keys/integrating-sessions-in-your-program.md): Integrate and manage sessions in your Solana Programs - [Installation](https://docs.magicblock.gg/pages/tools/session-keys/installation.md): Step-by-step guide on setting up and integrating the session wallet management system into your dApp - [Session Provider & Context](https://docs.magicblock.gg/pages/tools/session-keys/session-provider-and-context.md): Understand the usage of the SessionWalletProvider and the context it provides, enabling easy access to the session wallet functionalities across your application components? - [Usage Example](https://docs.magicblock.gg/pages/tools/session-keys/usage-examples.md): Learn how to interact with your dApp using the useSessionKeyManager and SessionWalletProvider through various practical examples - [Use session key manager](https://docs.magicblock.gg/pages/tools/session-keys/use-sessionkey-manager.md): A custom React hook that manages the creation and revocation of session tokens, and provides essential methods for signing and sending transactions in a secure and user-friendly way - [Introduction](https://docs.magicblock.gg/pages/tools/solana-unity-sdk/overview.md): Open-Source Unity-Solana SDK with NFT support & Full RPC coverage. - [Contribution Guide](https://docs.magicblock.gg/pages/tools/solana-unity-sdk/contribution-guide.md): Thank you for your interest in contributing to the Solana.Unity-SDK! This is an open-source community project and all contributions are welcomed, no matter how big or small. Contributions might include (but is not limited to) filing issues, adding documentation, fixing bugs, creating examples, and/o… - [Installation](https://docs.magicblock.gg/pages/tools/solana-unity-sdk/getting-started/installation.md) - [Configurations](https://docs.magicblock.gg/pages/tools/solana-unity-sdk/getting-started/configuration.md): Learn how to configure your preferred wallet - [Sample scene](https://docs.magicblock.gg/pages/tools/solana-unity-sdk/getting-started/sample-scene.md): Play around with the sample scene - [Associated Token Account](https://docs.magicblock.gg/pages/tools/solana-unity-sdk/core-concepts/associated-token-account.md): Associated Token Account Program defines the convention and provides the mechanism for mapping the user's wallet address to the associated token accounts they hold. - [Transfer Token](https://docs.magicblock.gg/pages/tools/solana-unity-sdk/core-concepts/transfer-token.md): The Token program defines a common implementation for Fungible and Non Fungible tokens. - [Transaction Builder](https://docs.magicblock.gg/pages/tools/solana-unity-sdk/core-concepts/transaction-builder.md): Learn about Transactions on the official Anchor [documentation](https://www.anchor-lang.com/docs/intro-to-solana) - [Staking](https://docs.magicblock.gg/pages/tools/solana-unity-sdk/core-concepts/staking.md): SOL token holders can earn rewards and help secure the network by staking tokens to one or more validators. Rewards for staked tokens are based on the current inflation rate, total number of SOL staked on the network, and an individual validator’s uptime and commission (fee). - [Add Signature](https://docs.magicblock.gg/pages/tools/solana-unity-sdk/core-concepts/add-signature.md): Learn about Signatures on the official Solana [documentation](https://docs.solana.com/developing/programming-model/accounts#signers) - [Minting an NFT](https://docs.magicblock.gg/pages/tools/solana-unity-sdk/guides/mint-an-nft.md): For minting an NFT we will interact with the [Token Metadata](https://docs.metaplex.com/programs/token-metadata/) program, see the metaplex [documentation](https://docs.metaplex.com/) for a comprehensive overview. - [Host Your Game on Github Pages](https://docs.magicblock.gg/pages/tools/solana-unity-sdk/guides/host-your-game.md): Host your game for free using Github pages - [Publish Your Game as an Xnft](https://docs.magicblock.gg/pages/tools/solana-unity-sdk/guides/publishing-a-game.md) - [DEX integration with Orca](https://docs.magicblock.gg/pages/tools/solana-unity-sdk/guides/dex-integration.md): Orca is natively supported in the SDK. Utility methods are provided to easily build the transactions needed to make swaps, open positions, manage cash and interact with Whirlpools. - [Jupiter V6 integration](https://docs.magicblock.gg/pages/tools/solana-unity-sdk/guides/jupiter.md): Integrate Jupiter v6 API in your game - [Additional Examples](https://docs.magicblock.gg/pages/tools/solana-unity-sdk/guides/additional-examples.md) - [SOAR](https://docs.magicblock.gg/pages/tools/open-source-programs/SOAR.md): Solana On-Chain Achievement & Ranking ## OpenAPI Specs - [withdraw.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/withdraw.openapi.json) - [undelegate-ephemeral-ata.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/undelegate-ephemeral-ata.openapi.json) - [transfer.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/transfer.openapi.json) - [transfer-queue-ensure-crank.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/transfer-queue-ensure-crank.openapi.json) - [transaction-send.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/transaction-send.openapi.json) - [swap.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/swap.openapi.json) - [stealth-pool.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/stealth-pool.openapi.json) - [quote.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/quote.openapi.json) - [private-balance.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/private-balance.openapi.json) - [mcp.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/mcp.openapi.json) - [login.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/login.openapi.json) - [is-mint-initialized.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/is-mint-initialized.openapi.json) - [initialize-mint.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/initialize-mint.openapi.json) - [health.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/health.openapi.json) - [deposit.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/deposit.openapi.json) - [challenge.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/challenge.openapi.json) - [balance.openapi](https://docs.magicblock.gg/pages/ephemeral-spl-token/api-reference/openapi/balance.openapi.json) - [openapi-rpc-simulateTransaction](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-simulateTransaction.json) - [openapi-rpc-sendTransaction](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-sendTransaction.json) - [openapi-rpc-isBlockhashValid](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-isBlockhashValid.json) - [openapi-rpc-getVersion](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getVersion.json) - [openapi-rpc-getTransactionCount](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getTransactionCount.json) - [openapi-rpc-getTransaction](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getTransaction.json) - [openapi-rpc-getTokenSupply](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getTokenSupply.json) - [openapi-rpc-getTokenLargestAccounts](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getTokenLargestAccounts.json) - [openapi-rpc-getTokenAccountsByOwner](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getTokenAccountsByOwner.json) - [openapi-rpc-getTokenAccountsByDelegate](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getTokenAccountsByDelegate.json) - [openapi-rpc-getTokenAccountBalance](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getTokenAccountBalance.json) - [openapi-rpc-getSlot](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getSlot.json) - [openapi-rpc-getSignaturesForAddress](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getSignaturesForAddress.json) - [openapi-rpc-getSignatureStatuses](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getSignatureStatuses.json) - [openapi-rpc-getRecentPerformanceSamples](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getRecentPerformanceSamples.json) - [openapi-rpc-getProgramAccounts](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getProgramAccounts.json) - [openapi-rpc-getMultipleAccounts](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getMultipleAccounts.json) - [openapi-rpc-getMinimumBalanceForRentExemption](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getMinimumBalanceForRentExemption.json) - [openapi-rpc-getLeaderSchedule](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getLeaderSchedule.json) - [openapi-rpc-getLatestBlockhash](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getLatestBlockhash.json) - [openapi-rpc-getLargestAccounts](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getLargestAccounts.json) - [openapi-rpc-getIdentity](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getIdentity.json) - [openapi-rpc-getHealth](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getHealth.json) - [openapi-rpc-getGenesisHash](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getGenesisHash.json) - [openapi-rpc-getFirstAvailableBlock](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getFirstAvailableBlock.json) - [openapi-rpc-getBlocksWithLimit](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getBlocksWithLimit.json) - [openapi-rpc-getBlocks](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getBlocks.json) - [openapi-rpc-getBlockTime](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getBlockTime.json) - [openapi-rpc-getBlockHeight](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getBlockHeight.json) - [openapi-rpc-getBlockCommitment](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getBlockCommitment.json) - [openapi-rpc-getBlock](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getBlock.json) - [openapi-rpc-getBalance](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getBalance.json) - [openapi-rpc-getAccountInfo](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getAccountInfo.json) - [openapi-rpc](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc.json) - [openapi](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/er/openapi/openapi.json) - [openapi-getSignatureStatuses](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/er/openapi/openapi-getSignatureStatuses.json) - [openapi-getRoutes](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/er/openapi/openapi-getRoutes.json) - [openapi-getIdentity](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/er/openapi/openapi-getIdentity.json) - [openapi-getDelegationStatus](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/er/openapi/openapi-getDelegationStatus.json) - [openapi-getBlockhashForAccounts](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/er/openapi/openapi-getBlockhashForAccounts.json) - [openapi-getAccountInfo](https://docs.magicblock.gg/pages/ephemeral-rollups-ers/api-reference/er/openapi/openapi-getAccountInfo.json) - [settings](https://docs.magicblock.gg/.vscode/settings.json) - [.markdownlint](https://docs.magicblock.gg/.markdownlint.json) ## Optional - [Tutorials](https://www.youtube.com/@Magicblock-Labs) - [Community](https://build.magicblock.app/builders?utm_source=docs.magicblock.gg) - [Hackathons & Events](https://luma.com/magicblock-events?utm_source=docs.magicblock.app)