jupiter-swap-migration について
jupiter-swap-migration は、既存の Jupiter スワップ連携を Metis v1 または Ultra から Swap API v2 へ移行するスキルです。移行経路、パラメーターとレスポンスの対応、移行後の確認項目を案内します。
主な機能
- 01Ultra・Metis からの移行経路
- 02パラメーターとレスポンスの対応
- 03移行前後のコード例
- 04エンドポイントとフィールドの監査項目
- 05Swap v2 のエラー・トランザクション更新
活用シーン
- 01Ultra 連携を /order に更新
- 02Metis のフローを /build に移行
- 03Metis の実行を /order と /execute に切り替え
- 04旧エンドポイントやフィールドをコード内で確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ jup-ag/ agent-skills --skill jupiter-swap-migrationインストール後、Claude Code で/jupiter-swap-migrationを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
README.mdexamples/metis-to-build.mdmetis-to-order.mdultra-to-order.md詳細
Jupiter スワップ移行ガイド
既存の Jupiter スワップ連携を Metis(v1) または Ultra から、統合された Swap API v2 に移行します。
ターゲットベース URL:https://api.jup.ag/swap/v2
認証:developers.jup.ag の x-api-key(変更なし)
使用する場合/使用しない場合
次の場合に使用します:
api.jup.ag/swap/v1/quote、api.jup.ag/swap/v1/swap-instructions、またはultra-api.jup.agを呼び出すコードを移行する場合。- Jupiter スワップのエンドポイントを v2 に更新する場合。
- Metis の 2 段階フローから、統合された
/buildまたは/orderエンドポイントに切り替える場合。
次の場合は使用しないでください:
- Jupiter 連携を新規に構築する場合(代わりに
integrating-jupiterスキルを使用してください)。 - スワップ以外の Jupiter API(Lend、Trigger、Recurring など)を扱う場合。
トリガー: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
移行パス
| 移行元 | 移行先 | 作業量 | 選択するタイミング |
|---|---|---|---|
Ultra → /order | GET /swap/v2/order + POST /swap/v2/execute | 最小限(URL の変更のみ) | Ultra ユーザーの標準 |
Metis → /build | GET /swap/v2/build | 中程度(パラメーターとレスポンスのマッピング) | トランザクションの合成が必要な場合 |
Metis → /order | GET /swap/v2/order + POST /swap/v2/execute | 中程度(フローの変更) | トランザクションを変更する必要はなく、実行管理を任せたい場合 |
パスの詳細
各パスには、変更前/変更後のコード、パラメーターのマッピング、レスポンスの変更を含む専用の例があります:
- パス 1:Ultra →
/order— 最小限の移行。ベース URL の変更のみ - パス 2:Metis →
/build— 2 回の呼び出しを 1 回に統合。パラメーターとレスポンスのマッピング - パス 3:Metis →
/order— 複数ルーターの競合を伴う、実行管理型フローへの変更
移行後のチェックリスト
- URL の監査:コードベースで
ultra-api.jup.ag、/ultra/v1/、/swap/v1/quote、/swap/v1/swap-instructionsを検索し、すべて置き換えられていることを確認します - パラメーターの変更:
userPublicKey→taker(/buildパスの場合) swapModeの削除:v2 がサポートするのはExactInのみです。ExactOutを使用している場合は、フローを再設計してください。このモードは利用できなくなりましたslippageBpsのデフォルト値:/buildでは省略時に 50 bps がデフォルトで適用されます。/orderでは、連携が特定の値に依存している場合、デフォルト値を確認してください- レスポンスのフィールド名:
/executeのレスポンスにinputAmountResult/outputAmountResult(v2 の正式なフィールド名)がコードで使用されていることを確認します - ALT の処理:
/buildを使用する場合は、addressLookupTableAddresses(配列)からaddressesByLookupTableAddress(オブジェクト)に切り替え、RPC による ALT 解決コードを削除します - 手数料イベントの解析:v2 の命令は手数料イベントを出力しません。それらに依存するトランザクションパーサーがあれば更新します
- ルートプランの形式:ルートプランを解析する場合は、
percentではなくbpsフィールド(正式なフィールド)を使用します - エラーコード:Swap v2 のエラーコードに合わせてエラー処理を更新します
- テスト:少額で devnet/mainnet のスワップをエンドツーエンドで実行し、動作を確認します
廃止
Jupiter が v1(/swap/v1)エンドポイントと Ultra(ultra-api.jup.ag)ドメインを廃止したら、このスキルを削除します。その時点で、すべての連携はすでに v2 に移行しています。
確認期限:2026-09-01 — v1/Ultra エンドポイントが廃止されているか確認します。
参考資料
移行ガイドは、対象プロファイル別の3つに分かれています(旧単一の migration ページは廃止されました)。