POST
/
#enhancedGetPrice
curl --request POST \
  --url 'https://rpc.particle.network/solana/#enhancedGetPrice' \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '{
  "jsonrpc": "2.0",
  "id": 1,
  "chainId": 101,
  "method": "enhancedGetPrice",
  "params": [
    [
      "<string>"
    ]
  ]
}'
{
  "jsonrpc": "2.0",
  "id": 1,
  "chainId": 101,
  "result": [
    {
      "address": "<string>",
      "currencies": [
        {
          "type": "<string>",
          "price": 123,
          "marketCap": 123,
          "24hChange": 123,
          "24hVol": 123,
          "lastUpdatedAt": 123
        }
      ]
    }
  ]
}

Understanding enhancedGetPrice

  • enhancedGetPrice retrieves the real-time price (fiat exchange rate) of a Solana token (SPL token). It takes:
    • address - array of strings. This represents the SPL token address; for $SOL, you can use the string native.
    • currencies - array of strings. It can contain usd and cny.

Query example

JavaScript
const axios = require('axios');

(async () => {
    const response = await axios.post('https://rpc.particle.network/solana', {
        chainId: 103,
        jsonrpc: '2.0',
        id: 0,
        method: 'enhancedGetPrice',
        params: [
            [
                'native', 
                '2Dzzc14S1D7cEFGJyMZMACuoQRHVUYFhVE74C5o8Fwau',
            ],
            [
                'usd', 
                'cny',
            ],
        ],
    }, {
        auth: {
            username: 'Your Project Id',
            password: 'Your Project Server Key',
        },
    });

    console.log(response.data);
})();

Authorizations

Authorization
string
header
required

Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.

Body

application/json
Request to get the price of a token.
jsonrpc
string
default:
2.0
required

Version of the JSON-RPC protocol, should be 2.0.

id
integer
default:
1
required

The request identifier.

chainId
integer
required

The blockchain chain ID.

method
enum<string>
required

API method being called.

Available options:
enhancedGetPrice
params
array
required

Parameters for getting token price.

Response

200 - application/json
Successful response with token price information.
jsonrpc
string
default:
2.0
required

Version of the JSON-RPC protocol, should be 2.0.

id
integer
default:
1
required

The request identifier.

chainId
integer
required

The blockchain chain ID.

result
object[]
required

Array of price details for tokens.