Jupiter Price API V2 is an improved version of the Price API, aiming to enhance accuracy by factoring both buy and sell-side prices to derive a more accurate price.
Retrieve pricing information much faster with V2
Jupiter Price V2 API will always return the unit buy price for the token specified with the ids parameter. This price is based on the best pricing data available across all DEXes queried. Please remember the addresses are case-sensitive.
Parameters
ids(required, string)
: Supports address of a token. You can also pass in an array of ids to with ,
as separator.
Maximum of 100 unique IDs allowed.
- Address are case-sensitive
mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So
mSoLzYCxHdYgdzU16g5QSh3i5K3z3KZK7ytfqcJm7So
,So11111111111111111111111111111111111111112
showExtraInfo(Optional, boolean)
: A boolean flag to indicate whether to include additional information in the response.
- Including
showExtraInfo
provides more detailed information, helping you determine the most suitable price for your use case. - defaults to false if not specified
vsToken (Optional, string)
: Support address of a token.
- Address is case-sensitive
JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN
vsToken
cannot be used withshowExtraInfo
when it's true,response 400: Bad request
would be returned
Typings of response data
Field | Explanation |
---|---|
type | derivedPrice is the midpoint between buyPrice and sellPrice . |
price | based on the type above |
extraInfo | extraInfo Fields (More info below) |
buyPrice | An Option<String> representing the quoted buy price. |
sellPrice | An Option<String> representing the quoted sell price. |
timeTaken | A f32 representing the time taken for the request. |
lastSwappedPric e | A SwapPrice struct that holds the last Jupiter swapped price details. |
extraInfo
Fields
extraInfo
FieldslastJupiterSellAt | Epoch seconds of the lastJupiterSellPrice |
---|---|
lastJupiterSellPrice | Price of last Jupiter sell |
lastJupiterBuyAt | Epoch seconds of the lastJupiterBuyPrice . |
lastJupiterBuyPrice | Price of last Jupiter buy |
buyPrice | An Option<String> representing the quoted buy price. |
buyAt | Epoch seconds of when the buy quote was retrieved. |
sellPrice | An Option<String> representing the quoted sell price. |
sellAt | Epoch seconds of when the sell quote was retrieved. |
confidenceLevel | A String indicating the confidence level (High, Medium, or Low). |
buyPriceImpactRatio | A Map broken down into 3 key-value pairs: 10, 100 & 1000 (SOL). The value is expressed as a percentage. |
sellPriceImpactRatio | A Map broken down into 3 key-value pairs: 10, 100 & 1000 (SOL). The value is expressed as a percentage. |
Want to find out more about how we derive confidenceLevel
or depth
? Read our research article on the Price V2 API.
Limitations
If the price for a token cannot be found, it is either because
- The token is not tradable on Jupiter - it does not fit Jupiter’s routing criteria.
- There is no route for this token to SOL.
sellPrice
,sellAt
&lastSwappedPrice
might benull
in cases - sellPrice & sellAt is not cached and cannot be retrieved (in these cases type will be buyPrice, same as PriceV1).
lastSwappedPrice
might be null if the token has not been traded recently or cannot be retrieved- Tokens that have not been traded via USDC in the last 3 days.
- Note that this is only for swaps done via Jupiter, it will not be done for swaps done e.g. directly on Raydium’s platform.
buyPriceImpactRatio
&sellPriceImpactRatio
in thedepth
field might be null in cases
- We are to get the respective price impacts for the 10, 100 and 1000 SOL buys or sells
- It could be because the token’s liquidity does not have enough liquidity for larger values
- We cannot find the sell quote for the respective token and the buy/sell values
Example Response
{
"data": {
"JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN": {
"id": "JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN",
"type": "derivedPrice",
"price": "0.766896",
"extraInfo": {
"lastSwappedPrice": {
"lastJupiterSellAt": 1726565261,
"lastJupiterSellPrice": "0.735183216284697",
"lastJupiterBuyAt": 1726564934,
"lastJupiterBuyPrice": "0.7339025568402265"
},
"quotedPrice": {
"buyPrice": "0.750482",
"buyAt": 1726565328,
"sellPrice": "0.783310",
"sellAt": 1726565328
},
"confidenceLevel": "medium",
"depth": {
"buyPriceImpactRatio": {
"depth": {
"10": 2.119117877915484,
"100": 2.064530605035608,
"1000": 1.8781253512016212
},
"timestamp": 1726565323
},
"sellPriceImpactRatio": {
"depth": {
"10": 6.298327823142029,
"100": 6.295307050938762,
"1000": 6.414879191566326
},
"timestamp": 1726565330
}
}
}
}
},
"timeTaken": 0.00392236
}
# Unit price of 1 JUP & 1 SOL based on the Derived Price in USDC
https://api.jup.ag/price/v2?ids=JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN,So11111111111111111111111111111111111111112&showExtraInfo=true
{
"data": {
"So11111111111111111111111111111111111111112": {
"id": "So11111111111111111111111111111111111111112",
"type": "derivedPrice",
"price": "132.176540000",
"extraInfo": {
"lastSwappedPrice": {
"lastJupiterSellAt": 1726232167,
"lastJupiterSellPrice": "132.1815918927837",
"lastJupiterBuyAt": 1726232168,
"lastJupiterBuyPrice": "132.3113422757551"
},
"quotedPrice": {
"buyPrice": "132.183970000",
"buyAt": 1726232166,
"sellPrice": "132.169110000",
"sellAt": 1726232168
},
"confidenceLevel": "high",
"depth": {
"buyPriceImpactRatio": {
"depth": {
"10": 0.011976036126034885,
"100": 0.05308426581530216,
"1000": 0.1168049189323158
},
"timestamp": 1726232167
},
"sellPriceImpactRatio": {
"depth": {
"10": 0.01582101846363979,
"100": 0.03166775883921609,
"1000": 0.06880960201997424
},
"timestamp": 1726232167
}
}
}
},
"JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN": {
"id": "JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN",
"type": "derivedPrice",
"price": "0.742851",
"extraInfo": {
"lastSwappedPrice": {
"lastJupiterSellAt": 1726232039,
"lastJupiterSellPrice": "0.7442999683998961",
"lastJupiterBuyAt": 1726232097,
"lastJupiterBuyPrice": "0.7431593824200015"
},
"quotedPrice": {
"buyPrice": "0.742917",
"buyAt": 1726232165,
"sellPrice": "0.742784",
"sellAt": 1726232168
},
"confidenceLevel": "high",
"depth": {
"buyPriceImpactRatio": {
"depth": {
"10": 0.009393981894911491,
"100": 0.08127843280940066,
"1000": 0.3417234655853332
},
"timestamp": 1726232167
},
"sellPriceImpactRatio": {
"depth": {
"10": 0.05174412761856207,
"100": 0.06288330728860267,
"1000": 0.281508676845538
},
"timestamp": 1726232167
}
}
}
}
},
"timeTaken": 0.00388851
}
# Unit price of 1 JUP & 1 SOL based on the Derived Price in USDC
https://api.jup.ag/price/v2?ids=JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN,So11111111111111111111111111111111111111112
{
"data": {
"So11111111111111111111111111111111111111112": {
"id": "So11111111111111111111111111111111111111112",
"type": "derivedPrice",
"price": "133.890945000"
},
"JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN": {
"id": "JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN",
"type": "derivedPrice",
"price": "0.751467"
}
},
"timeTaken": 0.00395219
}
Rate Limits: This endpoint is rate limited to 600 requests/min.