{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"MagicBlock Documentation","description":"With MagicBlock, anything you imagine is possible. Build unstoppable games, high-speed DeFi, and Web3 apps that run like Web2.","colors":{"primary":"#2545F6","light":"#2545F6","dark":"#2545F6"},"logo":{"light":"https://mintcdn.com/magicblock-42/5iyVpKJBt1PkwHw4/logo/MagicBlock-Logo-Black.png?fit=max\u0026auto=format\u0026n=5iyVpKJBt1PkwHw4\u0026q=85\u0026s=9687d1cd15beb5e4477b188af93a5023","dark":"https://mintcdn.com/magicblock-42/5iyVpKJBt1PkwHw4/logo/MagicBlock-Logo-White.png?fit=max\u0026auto=format\u0026n=5iyVpKJBt1PkwHw4\u0026q=85\u0026s=5729c944bf3688e76971fe8e4237bd07"},"favicon":"https://mintcdn.com/magicblock-42/5iyVpKJBt1PkwHw4/logo/favicon.png?fit=max\u0026auto=format\u0026n=5iyVpKJBt1PkwHw4\u0026q=85\u0026s=947add7c1733d1425c08bb43ee1335c0","api":{"examples":{"prefill":true}},"navbar":{"links":[{"href":"https://github.com/magicblock-labs","label":"Github"}],"primary":{"type":"button","label":"Install AI Skill","href":"https://docs.magicblock.gg/pages/overview/additional-information/ai-dev-skill"}},"footer":{"socials":{"twitter":"https://twitter.com/magicblock","github":"https://github.com/magicblock-labs","linkedin":"https://www.linkedin.com/company/magicblock"}},"search":{"prompt":"Search docs or ask a general question..."},"integrations":{"ga4":{"measurementId":"G-M3W08J15Y9"}},"banner":{"content":"Debugging an error? [Install the MagicBlock AI skill](/pages/overview/additional-information/ai-dev-skill) and ask your coding agent instead.","dismissible":true},"errors":{"404":{"redirect":true}},"contextual":{"options":["copy","view","chatgpt","claude",{"title":"Debug with the MagicBlock skill","description":"Install the skill so your coding agent can debug your code with MagicBlock context","icon":"wand-magic-sparkles","href":"/pages/overview/additional-information/ai-dev-skill"}],"display":"header"},"thumbnails":{"background":"https://mintcdn.com/magicblock-42/fTHi_GKgaLnoNzDu/images/thumbmail-bg.jpg?fit=max\u0026auto=format\u0026n=fTHi_GKgaLnoNzDu\u0026q=85\u0026s=6dbde31fdb6d0b5956861ff97897e7e4"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Tutorials","icon":"youtube","href":"https://www.youtube.com/@Magicblock-Labs"},{"anchor":"Community","icon":"users","href":"https://build.magicblock.app/builders?utm_source=docs.magicblock.gg"},{"anchor":"Hackathons \u0026 Events","icon":"rocket","href":"https://luma.com/magicblock-events?utm_source=docs.magicblock.app"}]},"languages":[{"language":"en","href":"pages/get-started/introduction/why-magicblock"},{"language":"cn","href":"cn/pages/overview/products"},{"language":"jp","href":"jp/pages/overview/products"},{"language":"ko","href":"ko/pages/overview/products"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"magicblock-42","hasAudioNarration":false,"actualSubdomain":"magicblock-42","customDomains":["docs.magicblock.gg"],"gitSource":{"type":"github","owner":"magicblock-labs","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6acf511788c13e271aed5143","collectionId":"3122ff37-bd5b-44b6-82d6-1d5c2b9052a3","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6acf511788c13e271aed5143"},"feedback":{"thumbs":true,"edits":true,"issues":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6acf511788c13e271aed5143","clientVersion":"0.0.4005","searchFilterCounts":[{"language":"en","tag":"Products","count":98},{"language":"en","tag":"API Reference","count":61},{"language":"en","tag":"Ephemeral Rollup","count":59},{"language":"cn","tag":"Ephemeral Rollup","count":54},{"language":"jp","tag":"Ephemeral Rollup","count":54},{"language":"ko","tag":"Ephemeral Rollup","count":54},{"language":"cn","tag":"RPC API","count":34},{"language":"jp","tag":"RPC API","count":34},{"language":"ko","tag":"RPC API","count":34},{"language":"en","tag":"RPC API","count":34},{"language":"cn","tag":"方法","count":33},{"language":"jp","tag":"メソッド","count":33},{"language":"ko","tag":"메서드","count":33},{"language":"cn","tag":"工具","count":32},{"language":"jp","tag":"ツール","count":32},{"language":"ko","tag":"도구","count":32},{"language":"en","tag":"Guides","count":31},{"language":"en","tag":"Integrations","count":27},{"language":"en","tag":"Get Started","count":24},{"language":"cn","tag":"Ephemeral SPL Token","count":23},{"language":"jp","tag":"Ephemeral SPL Token","count":23},{"language":"ko","tag":"Ephemeral SPL Token","count":23},{"language":"en","tag":"Ephemeral SPL Token","count":23},{"language":"cn","tag":"API 参考","count":19},{"language":"cn","tag":"Private Ephemeral Rollup","count":19},{"language":"jp","tag":"API リファレンス","count":19},{"language":"jp","tag":"Private Ephemeral Rollup","count":19},{"language":"ko","tag":"API 레퍼런스","count":19},{"language":"ko","tag":"Private Ephemeral Rollup","count":19},{"language":"cn","tag":"参考资料","count":17},{"language":"jp","tag":"参考資料","count":17},{"language":"ko","tag":"참고 자료","count":17},{"language":"cn","tag":"Solana Unity SDK","count":16},{"language":"jp","tag":"ガイド","count":16},{"language":"jp","tag":"Solana Unity SDK","count":16},{"language":"ko","tag":"가이드","count":16},{"language":"ko","tag":"Solana Unity SDK","count":16},{"language":"en","tag":"Solana Unity SDK","count":16},{"language":"cn","tag":"Private Payments API","count":14},{"language":"en","tag":"Concepts","count":12}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap","slug":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap","pageMetadata":{"title":"Swap","openapi":"pages/private-ephemeral-rollups-pers/api-reference/per/openapi/swap.openapi.json POST /v1/swap/swap","description":null,"href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap"},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Swap","openapi":"pages/private-ephemeral-rollups-pers/api-reference/per/openapi/swap.openapi.json POST /v1/swap/swap","description":null,"href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/magicblock-42/b23ad8dded0dada5/google-ads-tag.js","/_mintlify/custom/magicblock-42/44344145ea116972/custom/product-indicator.js","/_mintlify/custom/magicblock-42/39ef27222741e6e4/x-pixel.js"],"openApiReferenceData":{"operation":{"summary":"Swap","description":"Build an unsigned swap transaction from a quote.\n\n**Visibility modes:**\n\n- **`visibility: \"public\"`** (default) — pure pass-through to the Jupiter/Metis upstream. The returned transaction is whatever the upstream produces.\n- **`visibility: \"private\"`** — the server forces Jupiter's output into a program-owned stash ATA (deterministically derived from `(userPublicKey, quoteResponse.outputMint)`), prepends an idempotent ATA-create, and appends a `schedule_private_transfer` instruction that registers a one-shot Hydra crank. When the crank fires, it self-CPIs into the on-chain private-transfer flow to deliver the swapped tokens to `destination` with the requested delay/split policy. The returned transaction is a v0 `VersionedTransaction` that is still unsigned — the client signs and submits.\n\nWhen `visibility = \"private\"`, the fields `destination`, `minDelayMs`, `maxDelayMs`, and `split` are **required**. `clientRefId` and `validator` are optional. Explicitly setting `destinationTokenAccount` to anything other than the server-derived stash ATA returns `400`.","requestBody":"bcd7d295-5cb7-4b06-ad62-22e1ab8e5e46","responses":{"200":"6b837ac8-b1fa-47bd-a805-1a2385b32671","400":"c6dc2381-e821-4de6-8bcb-928d662f45ae","500":"e247c45a-a7b3-4f0b-8055-3fd10e1bf466","502":"922872be-35d9-4577-ad9c-db935c15f3c7"},"method":"post","type":"path","servers":["6b752dff-b27c-4259-83f5-7b925ff1fe24"],"security":[],"path":"/v1/swap/swap","baseUrlOptions":["https://payments.magicblock.app"],"title":"Swap","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated","prefillPlaygroundWithExample":true,"prefillPlaygroundExamples":[{"body.userPublicKey":"3rXKwQ1kpjBd5tdcco32qsvqUh1BnZjcYnS5kYrP7AYE","body.quoteResponse":{"inputMint":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","inAmount":"1000000","outputMint":"Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB","outAmount":"999519","otherAmountThreshold":"994522","swapMode":"ExactIn","slippageBps":50,"priceImpactPct":"0","routePlan":[]}},{"body.userPublicKey":"3rXKwQ1kpjBd5tdcco32qsvqUh1BnZjcYnS5kYrP7AYE","body.quoteResponse":{"inputMint":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","inAmount":"1000000","outputMint":"Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB","outAmount":"999519","otherAmountThreshold":"994522","swapMode":"ExactIn","slippageBps":50,"priceImpactPct":"0","routePlan":[]},"body.visibility":"private","body.destination":"7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU","body.minDelayMs":"0","body.maxDelayMs":"60000","body.split":1}]},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"properties":{"userPublicKey":{"type":"string","description":"Public key of the wallet that will sign the swap transaction.","example":"3rXKwQ1kpjBd5tdcco32qsvqUh1BnZjcYnS5kYrP7AYE","isRequired":true,"uniqueKey":"userPublicKey","typeLabel":"string"},"quoteResponse":{"type":"object","additionalProperties":true,"description":"Quote response from `GET /v1/swap/quote`.","isRequired":true,"uniqueKey":"quoteResponse","typeLabel":"object"},"payer":{"type":"string","description":"Optional fee payer for transaction fees and rent.","example":"3rXKwQ1kpjBd5tdcco32qsvqUh1BnZjcYnS5kYrP7AYE","uniqueKey":"payer","typeLabel":"string"},"wrapAndUnwrapSol":{"type":"boolean","description":"Automatically wrap and unwrap native SOL when needed.","example":true,"uniqueKey":"wrapAndUnwrapSol","typeLabel":"boolean"},"useSharedAccounts":{"type":"boolean","description":"Allow shared accounts for intermediate routing state.","example":true,"uniqueKey":"useSharedAccounts","typeLabel":"boolean"},"feeAccount":{"type":"string","description":"Optional initialized token account used to collect platform fees.","uniqueKey":"feeAccount","typeLabel":"string"},"trackingAccount":{"type":"string","description":"Optional public key used for downstream transaction tracking.","uniqueKey":"trackingAccount","typeLabel":"string"},"prioritizationFeeLamports":{"oneOf":[{"type":"integer","description":"Optional priority fee configuration or fixed lamport amount.","minimum":0,"uniqueKey":"prioritizationFeeLamports.oneOf.0","typeLabel":"integer"},{"type":"object","description":"Optional priority fee configuration or fixed lamport amount.","additionalProperties":true,"uniqueKey":"prioritizationFeeLamports.oneOf.1","typeLabel":"object"}],"uniqueKey":"prioritizationFeeLamports","typeLabel":"integer | object"},"asLegacyTransaction":{"type":"boolean","description":"Build a legacy transaction instead of a versioned one. Not allowed when `visibility = \"private\"`.","uniqueKey":"asLegacyTransaction","typeLabel":"boolean"},"destinationTokenAccount":{"type":"string","description":"Optional destination token account for the output mint. When `visibility = \"private\"`, this is server-controlled and must match the derived stash ATA.","uniqueKey":"destinationTokenAccount","typeLabel":"string"},"nativeDestinationAccount":{"type":"string","description":"Optional destination account for native SOL output. Not supported when `visibility = \"private\"`.","uniqueKey":"nativeDestinationAccount","typeLabel":"string"},"dynamicComputeUnitLimit":{"type":"boolean","description":"Estimate compute usage and set the compute unit limit automatically.","uniqueKey":"dynamicComputeUnitLimit","typeLabel":"boolean"},"skipUserAccountsRpcCalls":{"type":"boolean","description":"Skip extra RPC checks for required user accounts.","uniqueKey":"skipUserAccountsRpcCalls","typeLabel":"boolean"},"dynamicSlippage":{"type":"boolean","description":"Let the upstream swap builder overwrite slippage on the transaction.","uniqueKey":"dynamicSlippage","typeLabel":"boolean"},"computeUnitPriceMicroLamports":{"type":"integer","minimum":0,"description":"Optional exact compute unit price in micro-lamports.","uniqueKey":"computeUnitPriceMicroLamports","typeLabel":"integer"},"blockhashSlotsToExpiry":{"type":"integer","minimum":0,"description":"Optional transaction expiry window in slots.","uniqueKey":"blockhashSlotsToExpiry","typeLabel":"integer"},"positiveSlippage":{"type":"object","additionalProperties":true,"description":"Optional positive slippage collection settings.","uniqueKey":"positiveSlippage","typeLabel":"object"},"visibility":{"type":"string","enum":["public","private"],"description":"`public` (default) proxies Jupiter/Metis as-is. `private` routes the output through a scheduled private transfer.","example":"public","uniqueKey":"visibility","typeLabel":"enum\u003cstring>"},"destination":{"type":"string","description":"Final private-transfer recipient (wallet pubkey). Required when `visibility = \"private\"`.","uniqueKey":"destination","typeLabel":"string"},"minDelayMs":{"type":"string","pattern":"^\\d+$","description":"Earliest (ms) the queued transfer may settle. Required when `visibility = \"private\"`.","example":"0","uniqueKey":"minDelayMs","typeLabel":"string"},"maxDelayMs":{"type":"string","pattern":"^\\d+$","description":"Latest (ms) the queued transfer may settle. Required when `visibility = \"private\"`. Must be `>= minDelayMs` and `\u003c= 600000` (10 minutes).","example":"60000","uniqueKey":"maxDelayMs","typeLabel":"string"},"split":{"type":"integer","minimum":1,"maximum":14,"description":"Number of queue entries to split the transfer across. Required when `visibility = \"private\"`. Must be between 1 and 14.","uniqueKey":"split","typeLabel":"integer"},"clientRefId":{"type":"string","pattern":"^\\d+$","description":"Optional u64 client correlation id attached to each queued split.","uniqueKey":"clientRefId","typeLabel":"string"},"validator":{"type":"string","description":"Optional validator pubkey for the transfer-queue PDA. Defaults to the well-known MagicBlock validator (`MAS1Dt9qreoRMQ14YQuhg8UTZMMzDdKhmkZMECCzk57`).","uniqueKey":"validator","typeLabel":"string"}},"required":["userPublicKey","quoteResponse"],"uniqueKey":"","typeLabel":"object"},"examples":{"public":{"title":"public","value":{"userPublicKey":"3rXKwQ1kpjBd5tdcco32qsvqUh1BnZjcYnS5kYrP7AYE","quoteResponse":{"inputMint":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","inAmount":"1000000","outputMint":"Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB","outAmount":"999519","otherAmountThreshold":"994522","swapMode":"ExactIn","slippageBps":50,"priceImpactPct":"0","routePlan":[]}}},"private":{"title":"private","value":{"userPublicKey":"3rXKwQ1kpjBd5tdcco32qsvqUh1BnZjcYnS5kYrP7AYE","quoteResponse":{"inputMint":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","inAmount":"1000000","outputMint":"Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB","outAmount":"999519","otherAmountThreshold":"994522","swapMode":"ExactIn","slippageBps":50,"priceImpactPct":"0","routePlan":[]},"visibility":"private","destination":"7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU","minDelayMs":"0","maxDelayMs":"60000","split":1}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"6b837ac8-b1fa-47bd-a805-1a2385b32671":{"description":"Swap transaction","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"properties":{"swapTransaction":{"type":"string","description":"Base64-encoded unsigned transaction.","isRequired":true,"uniqueKey":"swapTransaction","typeLabel":"string"},"lastValidBlockHeight":{"type":"integer","minimum":0,"uniqueKey":"lastValidBlockHeight","typeLabel":"integer"},"prioritizationFeeLamports":{"type":"integer","minimum":0,"uniqueKey":"prioritizationFeeLamports","typeLabel":"integer"},"privateTransfer":{"type":"object","description":"Present only when `visibility = \"private\"`. Diagnostic metadata about the appended `schedule_private_transfer` instruction.","properties":{"stashAta":{"type":"string","isRequired":true,"uniqueKey":"privateTransfer.stashAta","typeLabel":"string"},"hydraCrankPda":{"type":"string","isRequired":true,"uniqueKey":"privateTransfer.hydraCrankPda","typeLabel":"string"},"shuttleId":{"type":"integer","minimum":0,"isRequired":true,"uniqueKey":"privateTransfer.shuttleId","typeLabel":"integer"}},"required":["stashAta","hydraCrankPda","shuttleId"],"uniqueKey":"privateTransfer","typeLabel":"object"}},"required":["swapTransaction"],"uniqueKey":"","typeLabel":"object"},"examples":{"public":{"title":"public","value":{"swapTransaction":"AQABA...base64...","lastValidBlockHeight":318120000}},"private":{"title":"private","value":{"swapTransaction":"AQABA...base64 with appended ATA-create + schedule_private_transfer...","lastValidBlockHeight":318120000,"privateTransfer":{"stashAta":"9mZP3xKHvVqXd3xtk72nSeEwJjmsgqmXvUDfwNA9BM4K","hydraCrankPda":"HyDraCrNkPdA11111111111111111111111111111111","shuttleId":2147483647}}}},"exampleType":"examples"}},"exampleType":"examples"},"c6dc2381-e821-4de6-8bcb-928d662f45ae":{"description":"Invalid request (missing or conflicting private-transfer fields)","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"e247c45a-a7b3-4f0b-8055-3fd10e1bf466":{"description":"Configuration error (e.g. missing `METIS_SWAP_API_URL`)","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"922872be-35d9-4577-ad9c-db935c15f3c7":{"description":"Upstream error","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}}},"security":{},"servers":{"6b752dff-b27c-4259-83f5-7b925ff1fe24":{"url":"https://payments.magicblock.app","description":"Mainnet - Private Payments API"}}},"originalFileLocation":"cn/pages/ephemeral-spl-token/api-reference/openapi/swap.openapi.json"},"subdomain":"magicblock-42","siteName":"MagicBlock Documentation","title":"Swap - MagicBlock Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/pages/get-started/introduction/why-magicblock","matchLevel":4},"cn":{"href":"/cn/pages/private-ephemeral-rollups-pers/api-reference/per/swap","matchLevel":1},"jp":{"href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap","matchLevel":0},"ko":{"href":"/ko/pages/private-ephemeral-rollups-pers/api-reference/per/swap","matchLevel":1}}},"lastModified":"2026-10-14T09:54:12.622Z","originalFileLocation":"jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap.mdx","locale":"jp"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"application-name\" content=\"MagicBlock Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/magicblock-42/U_0PfsrxUNdGUMiY/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/magicblock-42/U_0PfsrxUNdGUMiY/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/magicblock-42/U_0PfsrxUNdGUMiY/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/magicblock-42/U_0PfsrxUNdGUMiY/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/magicblock-42/U_0PfsrxUNdGUMiY/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/magicblock-42/U_0PfsrxUNdGUMiY/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/magicblock-42/U_0PfsrxUNdGUMiY/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/magicblock-42/U_0PfsrxUNdGUMiY/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/magicblock-42/U_0PfsrxUNdGUMiY/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Swap - MagicBlock Documentation\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"MagicBlock Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.magicblock.gg/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://magicblock-42.mintlify.app/_mintlify/api/og/v2?division=Private+Payments+API\u0026amp;title=Swap\u0026amp;theme=1d8cd91d37fdb38687cb25b8\u0026amp;signature=e94eccd544cd39496ad7d0f763ea7efbf6ae6e2e3331ad95fe820e2738283c3a\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Swap - MagicBlock Documentation\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://magicblock-42.mintlify.app/_mintlify/api/og/v2?division=Private+Payments+API\u0026amp;title=Swap\u0026amp;theme=1d8cd91d37fdb38687cb25b8\u0026amp;signature=e94eccd544cd39496ad7d0f763ea7efbf6ae6e2e3331ad95fe820e2738283c3a\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/magicblock-42/U_0PfsrxUNdGUMiY/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"MagicBlock Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2545F6\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.magicblock.gg/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ja\" href=\"https://docs.magicblock.gg/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh\" href=\"https://docs.magicblock.gg/cn/pages/private-ephemeral-rollups-pers/api-reference/per/swap\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ko\" href=\"https://docs.magicblock.gg/ko/pages/private-ephemeral-rollups-pers/api-reference/per/swap\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.magicblock.gg/#organization\",\"name\":\"MagicBlock Documentation\",\"url\":\"https://docs.magicblock.gg\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/magicblock-42/5iyVpKJBt1PkwHw4/logo/MagicBlock-Logo-Black.png?fit=max\u0026auto=format\u0026n=5iyVpKJBt1PkwHw4\u0026q=85\u0026s=9687d1cd15beb5e4477b188af93a5023\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.magicblock.gg#website\",\"name\":\"MagicBlock Documentation\",\"url\":\"https://docs.magicblock.gg\",\"publisher\":{\"@id\":\"https://docs.magicblock.gg/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.magicblock.gg/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap#webpage\",\"url\":\"https://docs.magicblock.gg/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap\",\"name\":\"Swap\",\"dateModified\":\"2026-10-14T09:54:12.622Z\",\"isPartOf\":{\"@id\":\"https://docs.magicblock.gg#website\"},\"breadcrumb\":{\"@id\":\"https://docs.magicblock.gg/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.magicblock.gg/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Private Payments API\",\"item\":\"https://docs.magicblock.gg/jp/pages/private-ephemeral-rollups-pers/api-reference/per/introduction\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Swap\",\"item\":\"https://docs.magicblock.gg/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.magicblock.gg/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap#apireference\",\"headline\":\"Swap\",\"name\":\"Swap\",\"url\":\"https://docs.magicblock.gg/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap\",\"mainEntityOfPage\":{\"@id\":\"https://docs.magicblock.gg/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap#webpage\"},\"dateModified\":\"2026-10-14T09:54:12.622Z\",\"publisher\":{\"@id\":\"https://docs.magicblock.gg/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.magicblock.gg#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"MagicBlock Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"MagicBlock Documentation","nav":{"global":{"anchors":[{"anchor":"Tutorials","icon":"youtube","href":"https://www.youtube.com/@Magicblock-Labs"},{"anchor":"Community","icon":"users","href":"https://build.magicblock.app/builders?utm_source=docs.magicblock.gg"},{"anchor":"Hackathons \u0026 Events","icon":"rocket","href":"https://luma.com/magicblock-events?utm_source=docs.magicblock.app"}]},"languages":[{"language":"en","pages":[{"title":"en","href":"/pages/get-started/introduction/why-magicblock"}]},{"language":"cn","pages":[{"title":"cn","href":"/cn/pages/private-ephemeral-rollups-pers/api-reference/per/swap"}]},{"language":"jp","tabs":[{"tab":"概要","pages":[{"title":"概要","href":"/jp/pages/overview/products"}]},{"tab":"Ephemeral Rollup","icon":"bolt","pages":[{"title":"Ephemeral Rollup","href":"/jp/pages/ephemeral-rollups-ers/how-to-guide/quickstart"}]},{"tab":"Private Ephemeral Rollup","icon":"shield-check","groups":[{"group":"ガイド","pages":[{"title":"クイックスタート","href":"/jp/pages/private-ephemeral-rollups-pers/how-to-guide/quickstart"},{"title":"アクセス制御","href":"/jp/pages/private-ephemeral-rollups-pers/how-to-guide/access-control"}]},{"group":"参考資料","pages":[{"title":"オンチェーンプライバシー","href":"/jp/pages/private-ephemeral-rollups-pers/introduction/onchain-privacy"},{"title":"認可","href":"/jp/pages/private-ephemeral-rollups-pers/introduction/authorization"},{"title":"コンプライアンスフレームワーク","href":"/jp/pages/private-ephemeral-rollups-pers/introduction/compliance-framework"}]},{"group":"Private Payments API","pages":[{"title":"概要","href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/introduction"},{"title":"ヘルス","openapi":"pages/private-ephemeral-rollups-pers/api-reference/per/openapi/health.openapi.json GET /health","href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/health"},{"title":"Challenge","openapi":"pages/private-ephemeral-rollups-pers/api-reference/per/openapi/challenge.openapi.json GET /v1/spl/challenge","href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/challenge"},{"title":"Login","openapi":"pages/private-ephemeral-rollups-pers/api-reference/per/openapi/login.openapi.json POST /v1/spl/login","href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/login"},{"title":"SPL トークンを入金","openapi":"pages/private-ephemeral-rollups-pers/api-reference/per/openapi/deposit.openapi.json POST /v1/spl/deposit","href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/deposit"},{"title":"SPL トークンを送金","openapi":"pages/private-ephemeral-rollups-pers/api-reference/per/openapi/transfer.openapi.json POST /v1/spl/transfer","href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/transfer"},{"title":"SPL トークンを出金","openapi":"pages/private-ephemeral-rollups-pers/api-reference/per/openapi/withdraw.openapi.json POST /v1/spl/withdraw","href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/withdraw"},{"title":"Mint を初期化","openapi":"pages/private-ephemeral-rollups-pers/api-reference/per/openapi/initialize-mint.openapi.json POST /v1/spl/initialize-mint","href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/initialize-mint"},{"title":"残高","openapi":"pages/private-ephemeral-rollups-pers/api-reference/per/openapi/balance.openapi.json GET /v1/spl/balance","href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/balance"},{"title":"プライベート残高","openapi":"pages/private-ephemeral-rollups-pers/api-reference/per/openapi/private-balance.openapi.json GET /v1/spl/private-balance","href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/private-balance"},{"title":"Mint は初期化済みか","openapi":"pages/private-ephemeral-rollups-pers/api-reference/per/openapi/is-mint-initialized.openapi.json GET /v1/spl/is-mint-initialized","href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/is-mint-initialized"},{"title":"Swap クォート","openapi":"pages/private-ephemeral-rollups-pers/api-reference/per/openapi/quote.openapi.json GET /v1/swap/quote","description":null,"href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/quote"},{"title":"Swap","openapi":"pages/private-ephemeral-rollups-pers/api-reference/per/openapi/swap.openapi.json POST /v1/swap/swap","href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/swap"},{"title":"MCP","openapi":"pages/private-ephemeral-rollups-pers/api-reference/per/openapi/mcp.openapi.json POST /mcp","description":null,"href":"/jp/pages/private-ephemeral-rollups-pers/api-reference/per/mcp"}]}]},{"tab":"Ephemeral SPL Token","icon":"coins","pages":[{"title":"Ephemeral SPL Token","href":"/jp/pages/ephemeral-spl-token/overview"}]},{"tab":"Solana VRF","icon":"dice","pages":[{"title":"Solana VRF","href":"/jp/pages/verifiable-randomness-functions-vrfs/how-to-guide/quickstart"}]},{"tab":"テンプレート","icon":"book","pages":[{"title":"テンプレート","href":"/jp/pages/templates/private-payments"}]},{"tab":"ツール","icon":"screwdriver-wrench","pages":[{"title":"ツール","href":"/jp/pages/tools/introduction"}]}]},{"language":"ko","pages":[{"title":"ko","href":"/ko/pages/private-ephemeral-rollups-pers/api-reference/per/swap"}]}]},"title":"Swap - MagicBlock Documentation","buildId":"dpl_48qhjNLiu9iJQQSZJz9Fa2ihBbPH","deploymentId":"dpl_48qhjNLiu9iJQQSZJz9Fa2ihBbPH","dynamics":["10e4515597","c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["BannerMarkdown-B0m80FZC.js","dist-tb1XVL5i.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","clsx-Q3eNRTcf.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","OpenApiReferenceProvider-rBlzXElK.js","utils-AjnlCZis.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-swvqTHUt.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-CG9fqVU0.js","snippetPresets-CQaUsst6.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-DAdT3l54.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-B1x8JMQI.js","shallow-D3oUTT8_.js","getApiPlaygroundDisplay-CXVJ98Sz.js","CodeSnippet-HbTSvyGs.js","CodeSnippets-DvgXFP0T.js","Page-C2raW8UD.js","getPastedJson-CfDE0eLj.js","icon-DBPqa2DN.js","MethodPill-86CHHFOO.js","DuplicateIcon-B5BXvyBd.js","createIcon-C_r05QJX.js","DynamicMarkdown-Cp6hhEk1.js","SectionHeading-RZjzOLoo.js","axios-vUo_bRtp.js","Markdown-B0YOyiNO.js","AssistantPageLink-9O1lyZBL.js"]}