見出し画像

【完全保存版】Jupiterの価格APIを取得しよう!

当記事は、こちらの記事を翻訳・編集したものです。

0 価格APIについて

強力なJupiter価格APIを利用すると、すべてのSPLトークンの正確かつリアルタイムの価格を簡単に取得できます。

最大100トークンの価格を取得できるため、他の価格APIはもう必要ありません!

Jupiter価格APIには、別のトークンを基準単位として指定するオプションがあります(「vsToken」を参照)。

情報
パフォーマンスを管理するために、現在1回の呼び出しで最大100トークンの価格を取得することをサポートしています。
まだサポートされていないユースケースがある場合は、私たちのDiscordの#developer-supportでお知らせください

1 使用法


Jupiter価格APIは、常にidsパラメータで指定されたトークンの単位買い価格を返します。

この価格は、クエリされたすべてのDEXから利用可能な最高の価格データに基づいています。

アドレスとトークンティッカー大文字と小文字を区別することを忘れないでください。

例えば、最も基本的な呼び出しでは、1単位のSOLの購入金額に基づいてトークンの単位価格を提供します。

# Unit price of SOL based on the buy amount of 1 unit of SOL
https://price.jup.ag/v6/price?ids=SOL

{
  "data": {
    "SOL": {
      "id": "So11111111111111111111111111111111111111112",
      "mintSymbol": "SOL",
      "vsToken": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "vsTokenSymbol": "USDC",
      "price": 30.389174403
    }
  },
  "timeTaken": 0.0003002400007972028
}

補足
実際に、URLに行ってみると、こんなふうに取得ができました。

https://price.jup.ag/v6/price?ids=SOL

vsTokenを含めると、購入するトークンが変更されます。

例えば、この呼び出しでは、Bonkの購入金額に基づいて1 JUPの単位価格が返されます。

簡単に言うと、vsToken引数はターゲットトークン(この場合はJUP)を購入するために必要なvsToken(この場合はBonk)の量を教えてくれます。

つまり、1 JUPを購入するためには44,580 Bonkが必要です。

idsおよびvsTokenの両方は、入力ミントを使用して指定することもできます。

2 試してみよう!


以下の簡単なGETリクエストをブラウザまたはターミナルコマンドのいずれかで実行して、API呼び出しを試してください。

curl -X 'GET' 'https://price.jup.ag/v6/price?ids=SOL'
curl -X 'GET' 'https://price.jup.ag/v6/price?ids=SOL&vsToken=mSOL'

3 エンドポイント

1 エンドポイント

https://price.jup.ag/v6/price

2 クエリパラメータ

1)ids (*必須) (文字列)
トークンのシンボルまたはアドレスをサポートします。カンマ区切りでidの配列を渡すこともできます。

アドレスモード大文字と小文字を区別します。


mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So
 - mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So,So11111111111111111111111111111111111111112

シンボルモード大文字と小文字を区別します。

例: SOL, BTC, mSOL

2)vsToken (文字列)
トークンのシンボルまたはアドレスをサポートします。

デフォルトはUSDCです。シンボルモードは大文字と小文字を区別します。

例: SOL, BTC, mSOL

アドレスモードは大文字と小文字を区別します。

例: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v

4 レスポンス

タイピング

  • id (文字列) - トークンのアドレス

  • mintSymbol (文字列) - idトークンのシンボル

  • vsToken (文字列) - vsトークンのアドレス

  • vsTokenSymbol (文字列) - vsトークンのシンボル

  • price (数値) - vsTokenが指定されていない場合はデフォルトで1単位のトークンのUSDC換算の価値

  • timeTaken (数値) - APIの内部計算応答時間

5 HTTPステータスコード

1)400
0以下の金額
・取引ペアのルートが見つかりません

2)404
入力またはvsTokenのシンボルまたはアドレスが見つかりません

3)409
入力またはvsTokenの重複したシンボルが見つかりました

サーバーはエラー構造体を返し、競合するアドレスを含みます。ユーザーはアドレスモードを使用する必要があります。

{ "error": "Duplicated symbol found for PERP, use one of the address instead", "addresses": [ "D68NB5JkzvyNCZAvi6EGtEcGvSoRNPanU9heYTAUFFRa", "9BsnSWDPfbusseZfnXyZ3un14CyPMZYvsKjWY3Y8Gbqn", "EBQ6gWBQNxA2zB4twR5GWP6CkeAhqZZZeDgeP7BTtdM3" ]}

最後に、簡単なページを作ってみました。

ご参考にどうぞ


サポートをしていただけたらすごく嬉しいです😄 いただけたサポートを励みに、これからもコツコツ頑張っていきます😊