# MagicBlock Documentation > With MagicBlock, anything you imagine is possible. Build unstoppable games, high-speed DeFi, and Web3 apps that run like Web2. ## Docs - [Products](https://magicblock-42-dode-check-links.mintlify.site/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. - [Whitepaper](https://magicblock-42-dode-check-links.mintlify.site/pages/overview/additional-information/whitepaper.md): Ephemeral Rollups Are All You Need (https://arxiv.org/abs/2311.02650) - [Security & Audits](https://magicblock-42-dode-check-links.mintlify.site/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. - [Pricing](https://magicblock-42-dode-check-links.mintlify.site/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. - [Systems Status](https://magicblock-42-dode-check-links.mintlify.site/pages/overview/additional-information/system-status.md) - [Request For Products](https://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/pages/overview/additional-information/ai-dev-skill.md): MagicBlock Ephemeral Rollups development skill for AI coding agents, with MagicBlock-specific patterns for delegation, Magic Actions, cranks, VRF, lamports top-up, commit sponsorship, private payments with swaps, and dual-connection architecture. - [Quickstart](https://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/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. - [Anchor Example](https://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/how-to-guide/rust-tests.md): Learn how to test a simple Rust program - [Ephemeral Rollup](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/introduction/why.md): The high-performance engine for real-time applications on Solana - [Delegation, Commitment & Undelegation](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/introduction/ephemeral-rollup.md): Execute Transactions, Synchronize States, all in real-time. - [Ephemeral Accounts](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/introduction/ephemeral-accounts.md): Create, resize, and close accounts that live entirely on the Ephemeral Rollup. - [Magic Router](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/introduction/magic-router.md): Learn how Magicblock's Magic Router accelerates transactions by routing them to the right execution environment. - [Introduction](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/magic-actions/overview.md): Automatically execute base-layer actions while Delegated - [Program Implementation](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/magic-actions/implementation.md): Program-side guide to building with Magic Actions - [Client Implementation](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/magic-actions/client.md): Client-side guide to building with Magic Actions - [Troubleshooting](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/magic-actions/troubleshooting.md): Diagnose common issues with Magic Actions - [FAQ](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/introduction/faq.md): Execute Transactions, Synchronize States, all in real-time. - [Introduction](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/er/introduction.md): MagicBlock Router API documentation - [getRoutes](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/er/getRoutes.md): Get available ephemeral rollup nodes from the Magic Router - [getIdentity](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/er/getIdentity.md): Get the identity information of the current ER Validator - [getBlockhashForAccounts](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/er/getBlockhashForAccounts.md): Get blockhash for multiple account addresses. - [getSignatureStatuses](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/er/getSignatureStatuses.md): Returns the confirmation status for one or more signatures - [getAccountInfo](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/er/getAccountInfo.md): Get AccountInfo for a single account. - [getDelegationStatus](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/er/getDelegationStatus.md): Get delegation status for a single account from Magic Router. - [RPC API](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/introduction.md): Solana JSON-RPC HTTP methods on MagicBlock devnet RPC endpoints. - [getAccountInfo](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getAccountInfo.md): Returns all information associated with an account of provided Pubkey. - [getBalance](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getBalance.md): Solana JSON-RPC method getBalance. - [getBlock](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getBlock.md): Returns identity and transaction information about a confirmed block in the ledger. - [getBlockCommitment](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getBlockCommitment.md): Returns commitment for particular block. - [getBlockHeight](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getBlockHeight.md): Returns the current block height of the node. - [getBlocks](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getBlocks.md): Returns a list of confirmed blocks between two slots. - [getBlocksWithLimit](https://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getBlockTime.md): Returns the estimated production time of a block. - [getFirstAvailableBlock](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getFirstAvailableBlock.md): Solana JSON-RPC method getFirstAvailableBlock. - [getGenesisHash](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getGenesisHash.md): Solana JSON-RPC method getGenesisHash. - [getHealth](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getHealth.md): Solana JSON-RPC method getHealth. - [getIdentity](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getIdentity.md): Solana JSON-RPC method getIdentity. - [getLargestAccounts](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getLargestAccounts.md): Returns the 20 largest accounts, by lamport balance. - [getLatestBlockhash](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getLatestBlockhash.md): Returns the latest blockhash. - [getLeaderSchedule](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getLeaderSchedule.md): Returns the leader schedule for an epoch. - [getMinimumBalanceForRentExemption](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getMinimumBalanceForRentExemption.md): Returns minimum balance required to make account rent exempt. - [getMultipleAccounts](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getMultipleAccounts.md): Returns the account information for a list of Pubkeys. - [getProgramAccounts](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getProgramAccounts.md): Returns all accounts owned by the provided program Pubkey. - [getRecentPerformanceSamples](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getRecentPerformanceSamples.md): Returns a list of recent performance samples, in reverse slot order. - [getSignaturesForAddress](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getSignaturesForAddress.md): Returns signatures for confirmed transactions that include the given address. - [getSignatureStatuses](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getSignatureStatuses.md): Returns the statuses of a list of signatures. - [getSlot](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getSlot.md): Returns the slot that has reached the given or default commitment level. - [getTokenAccountBalance](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getTokenAccountBalance.md): Returns the token balance of an SPL Token account. - [getTokenAccountsByDelegate](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getTokenAccountsByDelegate.md): Returns all SPL Token accounts by approved Delegate. - [getTokenAccountsByOwner](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getTokenAccountsByOwner.md): Returns all SPL Token accounts by token owner. - [getTokenLargestAccounts](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getTokenLargestAccounts.md): Returns the 20 largest accounts of a particular SPL Token type. - [getTokenSupply](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getTokenSupply.md): Returns the total supply of an SPL Token type. - [getTransaction](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getTransaction.md): Returns transaction details for a confirmed transaction. - [getTransactionCount](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getTransactionCount.md): Returns the current transaction count from the ledger. - [getVersion](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/getVersion.md): Solana JSON-RPC method getVersion. - [isBlockhashValid](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/isBlockhashValid.md): Returns whether a blockhash is still valid or not. - [sendTransaction](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/sendTransaction.md): Submits a signed transaction to the cluster for processing. - [simulateTransaction](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/simulateTransaction.md): Simulate sending a transaction. - [Quickstart](https://magicblock-42-dode-check-links.mintlify.site/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. - [Access Control](https://magicblock-42-dode-check-links.mintlify.site/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. - [Onchain Privacy](https://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/introduction/authorization.md): Customize authorized access through onchain restrictions on account level for user groups. - [Compliance Framework](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/introduction/compliance-framework.md): MagicBlock enables confidential execution without compromising performance, compliance, or control. - [Introduction](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/introduction.md): Private Payments API documentation - [Health](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/health.md) - [Challenge](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/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://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/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. - [Deposit SPL Tokens](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/deposit.md): Wraps the SDK `delegateSpl(...)` flow. The API generates `shuttleId` server-side and pins `escrowIndex` to `0`. - [Transfer SPL Tokens](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/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://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/withdraw.md): Wraps the SDK `withdrawSpl(...)` flow. The API generates `shuttleId` server-side. - [Initialize Mint](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/initialize-mint.md) - [Balance](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/balance.md): Reads the owner's associated token account on the base RPC. - [Private Balance](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/private-balance.md): Reads the owner's associated token account on the ephemeral RPC. Requires an `Authorization: Bearer ` header obtained from `/v1/spl/login`. - [Is Mint Initialized](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/is-mint-initialized.md) - [Swap Quote](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/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://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/swap.md): Build an unsigned swap transaction from a quote. - [MCP](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/mcp.md) - [Quickstart](https://magicblock-42-dode-check-links.mintlify.site/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. - [Best Practices](https://magicblock-42-dode-check-links.mintlify.site/pages/verifiable-randomness-functions-vrfs/how-to-guide/best-practices.md): Guidelines for integrating verifiable randomness - [Overview](https://magicblock-42-dode-check-links.mintlify.site/pages/verifiable-randomness-functions-vrfs/introduction/solana-vrf.md): Use MagicBlock Solana VRF to request provably fair randomness - [Pricing](https://magicblock-42-dode-check-links.mintlify.site/pages/verifiable-randomness-functions-vrfs/introduction/pricing.md): Pricing for provably fair randomness requests with MagicBlock Solana VRF. - [Technical Details](https://magicblock-42-dode-check-links.mintlify.site/pages/verifiable-randomness-functions-vrfs/introduction/technical-details.md): How Solana VRF integrates with MagicBlock - [Security](https://magicblock-42-dode-check-links.mintlify.site/pages/verifiable-randomness-functions-vrfs/introduction/security.md): How Solana VRF randomness proofs are verified - [FAQ](https://magicblock-42-dode-check-links.mintlify.site/pages/verifiable-randomness-functions-vrfs/introduction/faq.md): Common questions about Solana VRF - [Private Payments](https://magicblock-42-dode-check-links.mintlify.site/pages/templates/private-payments.md) - [Rock Paper Scissors](https://magicblock-42-dode-check-links.mintlify.site/pages/templates/rock-paper-scissors.md) - [Real-Time Price Feed](https://magicblock-42-dode-check-links.mintlify.site/pages/templates/real-time-price-feed.md) - [Gachapon](https://magicblock-42-dode-check-links.mintlify.site/pages/templates/gachapon.md) - [Random Character Generator](https://magicblock-42-dode-check-links.mintlify.site/pages/templates/random-character-generator.md) - [Onchain Dice](https://magicblock-42-dode-check-links.mintlify.site/pages/templates/onchain-dice.md) - [Counter](https://magicblock-42-dode-check-links.mintlify.site/pages/templates/counter.md) - [Introduction](https://magicblock-42-dode-check-links.mintlify.site/pages/tools/introduction.md): Utilize existing SDKs and Frameworks to accelerate your development process - [Overview](https://magicblock-42-dode-check-links.mintlify.site/pages/tools/wallets-and-onramp/overview.md): Accelerate user onboarding with existing wallet and onramp solutions - [Introduction](https://magicblock-42-dode-check-links.mintlify.site/pages/tools/session-keys/introduction.md): What are Session Keys? - [How do Session Keys work?](https://magicblock-42-dode-check-links.mintlify.site/pages/tools/session-keys/how-do-session-keys-work.md): What are Session Keys? - [Security](https://magicblock-42-dode-check-links.mintlify.site/pages/tools/session-keys/security.md): Key management and security model - [Integrating Sessions in your Program](https://magicblock-42-dode-check-links.mintlify.site/pages/tools/session-keys/integrating-sessions-in-your-program.md): Integrate and manage sessions in your Solana Programs - [Installation](https://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/pages/tools/oracle/introduction.md): Real-time onchain data with MagicBlock Ephemeral Rollups - [Implementation](https://magicblock-42-dode-check-links.mintlify.site/pages/tools/oracle/implementation.md): Derive the Pyth Lazer price feed account and decode its bytes - [Introduction](https://magicblock-42-dode-check-links.mintlify.site/pages/tools/crank/introduction.md): Automated, time-based execution of on-chain instructions - [Implementation](https://magicblock-42-dode-check-links.mintlify.site/pages/tools/crank/implementation.md): Learn how to implement cranks in your Solana program using MagicBlock Ephemeral Rollups - [Introduction](https://magicblock-42-dode-check-links.mintlify.site/pages/tools/solana-unity-sdk/overview.md): Open-Source Unity-Solana SDK with NFT support & Full RPC coverage. - [Contribution Guide](https://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/pages/tools/solana-unity-sdk/getting-started/installation.md) - [Configurations](https://magicblock-42-dode-check-links.mintlify.site/pages/tools/solana-unity-sdk/getting-started/configuration.md): Learn how to configure your preferred wallet - [Sample scene](https://magicblock-42-dode-check-links.mintlify.site/pages/tools/solana-unity-sdk/getting-started/sample-scene.md): Play around with the sample scene - [Associated Token Account](https://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/pages/tools/solana-unity-sdk/guides/publishing-a-game.md) - [DEX integration with Orca](https://magicblock-42-dode-check-links.mintlify.site/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://magicblock-42-dode-check-links.mintlify.site/pages/tools/solana-unity-sdk/guides/jupiter.md): Integrate Jupiter v6 API in your game - [Additional Examples](https://magicblock-42-dode-check-links.mintlify.site/pages/tools/solana-unity-sdk/guides/additional-examples.md) - [SOAR](https://magicblock-42-dode-check-links.mintlify.site/pages/tools/open-source-programs/SOAR.md): Solana On-Chain Achievement & Ranking ## OpenAPI Specs - [withdraw.openapi](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/openapi/withdraw.openapi.json) - [transfer.openapi](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/openapi/transfer.openapi.json) - [swap.openapi](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/openapi/swap.openapi.json) - [quote.openapi](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/openapi/quote.openapi.json) - [private-balance.openapi](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/openapi/private-balance.openapi.json) - [privacy-openapi](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/openapi/privacy-openapi.json) - [mcp.openapi](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/openapi/mcp.openapi.json) - [login.openapi](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/openapi/login.openapi.json) - [is-mint-initialized.openapi](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/openapi/is-mint-initialized.openapi.json) - [initialize-mint.openapi](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/openapi/initialize-mint.openapi.json) - [health.openapi](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/openapi/health.openapi.json) - [deposit.openapi](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/openapi/deposit.openapi.json) - [challenge.openapi](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/openapi/challenge.openapi.json) - [balance.openapi](https://magicblock-42-dode-check-links.mintlify.site/pages/private-ephemeral-rollups-pers/api-reference/per/openapi/balance.openapi.json) - [openapi-rpc](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc.json) - [openapi-rpc-simulateTransaction](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-simulateTransaction.json) - [openapi-rpc-sendTransaction](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-sendTransaction.json) - [openapi-rpc-isBlockhashValid](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-isBlockhashValid.json) - [openapi-rpc-getVersion](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getVersion.json) - [openapi-rpc-getTransactionCount](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getTransactionCount.json) - [openapi-rpc-getTransaction](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getTransaction.json) - [openapi-rpc-getTokenSupply](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getTokenSupply.json) - [openapi-rpc-getTokenLargestAccounts](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getTokenLargestAccounts.json) - [openapi-rpc-getTokenAccountsByOwner](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getTokenAccountsByOwner.json) - [openapi-rpc-getTokenAccountsByDelegate](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getTokenAccountsByDelegate.json) - [openapi-rpc-getTokenAccountBalance](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getTokenAccountBalance.json) - [openapi-rpc-getSlot](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getSlot.json) - [openapi-rpc-getSignaturesForAddress](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getSignaturesForAddress.json) - [openapi-rpc-getSignatureStatuses](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getSignatureStatuses.json) - [openapi-rpc-getRecentPerformanceSamples](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getRecentPerformanceSamples.json) - [openapi-rpc-getProgramAccounts](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getProgramAccounts.json) - [openapi-rpc-getMultipleAccounts](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getMultipleAccounts.json) - [openapi-rpc-getMinimumBalanceForRentExemption](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getMinimumBalanceForRentExemption.json) - [openapi-rpc-getLeaderSchedule](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getLeaderSchedule.json) - [openapi-rpc-getLatestBlockhash](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getLatestBlockhash.json) - [openapi-rpc-getLargestAccounts](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getLargestAccounts.json) - [openapi-rpc-getIdentity](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getIdentity.json) - [openapi-rpc-getHealth](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getHealth.json) - [openapi-rpc-getGenesisHash](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getGenesisHash.json) - [openapi-rpc-getFirstAvailableBlock](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getFirstAvailableBlock.json) - [openapi-rpc-getBlocksWithLimit](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getBlocksWithLimit.json) - [openapi-rpc-getBlocks](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getBlocks.json) - [openapi-rpc-getBlockTime](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getBlockTime.json) - [openapi-rpc-getBlockHeight](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getBlockHeight.json) - [openapi-rpc-getBlockCommitment](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getBlockCommitment.json) - [openapi-rpc-getBlock](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getBlock.json) - [openapi-rpc-getBalance](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getBalance.json) - [openapi-rpc-getAccountInfo](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/rpc/openapi/openapi-rpc-getAccountInfo.json) - [openapi](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/er/openapi/openapi.json) - [openapi-getSignatureStatuses](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/er/openapi/openapi-getSignatureStatuses.json) - [openapi-getRoutes](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/er/openapi/openapi-getRoutes.json) - [openapi-getIdentity](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/er/openapi/openapi-getIdentity.json) - [openapi-getDelegationStatus](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/er/openapi/openapi-getDelegationStatus.json) - [openapi-getBlockhashForAccounts](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/er/openapi/openapi-getBlockhashForAccounts.json) - [openapi-getAccountInfo](https://magicblock-42-dode-check-links.mintlify.site/pages/ephemeral-rollups-ers/api-reference/er/openapi/openapi-getAccountInfo.json) ## Optional - [Tutorials](https://www.youtube.com/@Magicblock-Labs) - [Community](https://t.me/+78KHQkUsy0ViMzQ6) - [Hackathons & Events](https://luma.com/magicblock-events?utm_source=docs.magicblock.app)