jupiter-swap-migration
Migration guide from Jupiter Metis (v1) or Ultra to Swap API v2. Use when migrating existing Jupiter swap integrations, updating base URLs, or trans…
它会碰到什么
这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。
技能内容
Jupiter Swap Migration Guide
Migrate existing Jupiter swap integrations from Metis (v1) or Ultra to the unified Swap API v2.
Target Base URL: https://api.jup.ag/swap/v2
Auth: x-api-key from developers.jup.ag (unchanged)
Use/Do Not Use
Use when:
- Migrating code that calls
api.jup.ag/swap/v1/quote,api.jup.ag/swap/v1/swap-instructions, orultra-api.jup.ag. - Updating Jupiter swap endpoints to v2.
- Switching from Metis two-step flow to the unified
/buildor/orderendpoint.
Do not use when:
- Building a new Jupiter integration from scratch (use
integrating-jupiterskill instead). - Working with non-swap Jupiter APIs (Lend, Trigger, Recurring, etc.).
Triggers: ultra, metis, ultra swap, ultra api, ultra-api.jup.ag, /ultra/v1, swap/v1, swap-instructions, migrate swap, ultra migration, metis migration, swap v1 to v2, v1 to v2, upgrade jupiter, swap-instructions deprecated, deprecated swap, old jupiter api, swap upgrade, update swap api, quote endpoint deprecated, swap stopped working, swap broken, ExactOut removed, swapMode removed, userPublicKey, parameter rename, addressLookupTable, response format changed
Migration Paths
| Source | Target | Effort | When to choose |
|--------|--------|--------|----------------|
| Ultra → /order | GET /swap/v2/order + POST /swap/v2/execute | Minimal (URL change only) | Default for Ultra users |
| Metis → /build | GET /swap/v2/build | Moderate (parameter + response mapping) | Need transaction composability |
| Metis → /order | GET /swap/v2/order + POST /swap/v2/execute | Moderate (flow change) | Don't need tx modification, want managed execution |
Path Details
Each path has a dedicated example with before/after code, parameter mappings, and response changes:
- [Path 1: Ultra →
/order](./examples/ultra-to-order.md) — Minimal migration, base URL change only - [Path 2: Metis →
/build](./examples/metis-to-build.md) — Consolidates 2 calls into 1, parameter and response mapping - [Path 3: Metis →
/order](./examples/metis-to-order.md) — Flow change to managed execution with multi-router competition
Post-Migration Checklist
- URL audit: Search codebase for
ultra-api.jup.ag,/ultra/v1/,/swap/v1/quote,/swap/v1/swap-instructions— all should be replaced - Parameter rename:
userPublicKey→taker(for/buildpath) swapModeremoval: V2 only supportsExactIn. If usingExactOut, redesign the flow — this mode is no longer availableslippageBpsdefault:/builddefaults to 50 bps if omitted. For/order, verify the default if your integration relies on a specific value- Response field names: Verify your code uses
inputAmountResult/outputAmountResultfor the/executeresponse (the canonical v2 field names) - ALT handling: If using
/build, switch fromaddressLookupTableAddresses(array) toaddressesByLookupTableAddress(object) — remove RPC ALT resolution code - Fee event parsing: V2 instructions don't emit fee events — update any transaction parser that depends on them
- Route plan format: If parsing route plans, use
bpsfield (canonical) instead ofpercent - Error codes: Update error handling to match Swap v2 error codes
- Test: Run end-to-end swap on devnet/mainnet with small amount to verify
Sunset
Remove this skill once Jupiter decommissions the v1 (/swap/v1) endpoints and the Ultra (ultra-api.jup.ag) domain. At that point all integrations will already be on v2.
Review by: 2026-09-01 — check if v1/Ultra endpoints have been decommissioned.
References
Migration is split into three profile-targeted guides (the old single migration page no longer exists):
想直接用这个技能?
本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。
它属于哪个仓库
vendored/jupiter/jupiter-swap-migration/SKILL.md