API reference / Solana & Jupiter on-chain

Solana & Jupiter on-chain

Public Solana-ledger reads via RPC: SPL token supply & authorities, top holders, native SOL balances, and the Jupiter JLP pool (AUM, virtual price, per-asset utilization & trader exposure). Not the Jupiter API.

4 endpoints. Pay per call in USDC via x402 with no account, or get unlimited calls for $99/mo. Every response is shaped { ticker, data, source, as_of }.

GET/api/v1/solana/token/{mint}$0.01

On-chain SPL token facts for any Solana mint: supply, decimals, mint & freeze authority

On-chain facts for any Solana SPL token, read straight from the public ledger (not the Jupiter API): total supply and decimals, mint and freeze authority, initialization, and token program (SPL Token or Token-2022). Pass a base58 mint address or a known symbol (SOL, JUP, JLP, USDC, USDT, BONK, JTO, WIF). Keyless public-chain data, no account.

Example request
GET /api/v1/solana/token/MINT
Response type (TypeScript)
interface SolTokenResponse {
  source: string;
  as_of: string;
  venue: string;
  data: {
    mint: string;
    symbol: string;
    decimals: number;
    supply: number;
    supply_raw: string;
    mint_authority: null;
    freeze_authority: null;
    is_initialized: boolean;
    token_program: string;
    token_standard: string;
  };
}
Example response (click to expand)
{
  "source": "x402stock",
  "as_of": "2026-06-08T18:35:13.065Z",
  "venue": "solana",
  "data": {
    "mint": "JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN",
    "symbol": "JUP",
    "decimals": 6,
    "supply": 6862435083.458497,
    "supply_raw": "6862435083458497",
    "mint_authority": null,
    "freeze_authority": null,
    "is_initialized": true,
    "token_program": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
    "token_standard": "spl-token"
  }
}
GET/api/v1/solana/holders/{mint}$0.02

Top holders of any Solana SPL token: largest accounts, owner wallets, % of supply

The largest holders of any Solana SPL token (top accounts by balance, up to 20), each with its token account, owner wallet, balance, and share of total supply — for holder-concentration and whale analysis. Pass a base58 mint or a known symbol (JUP, JLP, …); tune with `?limit=` (max 20). Read from the public ledger, no Jupiter API.

Example request
GET /api/v1/solana/holders/MINT
Response type (TypeScript)
interface SolHoldersResponse {
  source: string;
  as_of: string;
  venue: string;
  data: {
    mint: string;
    symbol: string;
    total_supply: number;
    holder_count: number;
    holders: Array<{
      rank: number;
      token_account: string;
      owner: string;
      amount: number;
      percent_of_supply: number;
    }>;
  };
}
Example response (click to expand)
{
  "source": "x402stock",
  "as_of": "2026-06-08T22:03:06.536Z",
  "venue": "solana",
  "data": {
    "mint": "27G8MtK7VtTcCHkpASjSDdkWWYfoqT6ggEuKidVJidD4",
    "symbol": "JLP",
    "total_supply": 220642285.237394,
    "holder_count": 20,
    "holders": [
      {
        "rank": 1,
        "token_account": "EJ6CLvJPJErjkUnPQicVahzw4Q4NHLfpDV9knoP7iqfK",
        "owner": "7s1da8DduuBFqGra5bJBjpnvL5E9mGzCuMk1Qkh4or2Z",
        "amount": 82774880.344267,
        "percent_of_supply": 37.5154
      },
      {
        "rank": 2,
        "token_account": "2XYPHGFrEZxwhZQxtUETT6zEcWwBWv5yPBoAuDJf4i7w",
        "owner": "AVzP2GeRmqGphJsMxWoqjpUifPpCret7LqWhD8NWQK49",
        "amount": 63884117.77969,
        "percent_of_supply": 28.9537
      },
      {
        "rank": 3,
        "token_account": "CHcHknV6KujiUVqVsQfJrqUcsifgJmWBzhUWyYibt1ss",
        "owner": "B9spsrMK6pJicYtukaZzDyzsUQLgc3jbx5gHVwdDxb6y",
        "amount": 11627053.029668,
        "percent_of_supply": 5.2696
      },
      {
        "rank": 4,
        "token_account": "GiQADRa91S72fGLhtXpYkUExSu2w6cgojrmgnnoFnWi5",
        "owner": "DCn1s6ctS9UhHaxY31XY6pXBMnQv8MQvAy3QAoRohAkS",
        "amount": 7106085.127448,
        "percent_of_supply": 3.2206
      },
      {
        "rank": 5,
        "token_account": "BC4MGsLxETeusWSJ17dnkWDS9eH23qT1yxwSjspvfVoB",
        "owner": "5ZbLoA6DSnXoDeU7jsdmmkua4X1ugHUFYzbByzrbJDST",
        "amount": 4184217.034374,
        "percent_of_supply": 1.8964
      },
      {
        "rank": 6,
        "token_account": "BtpB4zxiWhKhephag91TJaHMmyDm2svux4GVzGmn2KUc",
        "owner": "6EAo85U5GVkbU11CufM7aWmmjGjfY2ANGwkzpc3BbXQY",
        "amount": 4001215.084406,
        "percent_of_supply": 1.8134
      },
      {
        "rank": 7,
        "token_account": "7X1pxQRowgWnDYfk7eCuRWgDrD9fniDwa1mjYnz99GEG",
        "owner": "GLX4WRHsbNu9wH6ps3rtFr3Xvgq6oRdSH3v1atGnT94k",
        "amount": 3603222,
        "percent_of_supply": 1.6331
      },
      {
        "rank": 8,
        "token_account": "6e4zuPXWLuTQXuiL1CaaQKFyqoqu98ZWurFGXqxKubCr",
        "owner": "5jd4gq2bVfMRiRGgmunwu5BFitvJbw6mqVgW1Qgf15fR",
        "amount": 2300131.90199,
        "percent_of_supply": 1.0425
      },
      {
        "rank": 9,
        "token_account": "8jBTQrVT83VH1kETeVbdaQM1pyfAWoQk3gnuzdXDAitT",
        "owner": "7eeQ4yoh1Lamq72Kdr14kgeKn7k2Hh1ic9YwtxXnEVXc",
        "amount": 1344367.323189,
        "percent_of_supply": 0.6093
      },
      {
        "rank": 10,
        "token_account": "2J93W1D2H6GXET457VpuwsacTzAwMEtQrvidzFXHkek2",
        "owner": "8BD1qaT6a4WCa4Kz1nURKfPmZd2ohxHYoXuPNijRABXv",
        "amount": 1200000,
        "percent_of_supply": 0.5439
      },
      {
        "rank": 11,
        "token_account": "42qnNzeanduTkptdMLR5833ihFwVRtS2qoRMoHrA4xYv",
        "owner": "GesHhZdR6Tp9nQQwtmU3LFpERmDqi4hqq3pF718uoPHz",
        "amount": 1197100.249743,
        "percent_of_supply": 0.5426
      },
      {
        "rank": 12,
        "token_account": "5rewPFmWf7BrXsUfhV6LUvy9eyPegNDD13XjA5fJAPzs",
        "owner": "MfDuWeqSHEqTFVYZ7LoexgAK9dxk7cy4DFJWjWMGVWa",
        "amount": 775808.345702,
        "percent_of_supply": 0.3516
      },
      {
        "rank": 13,
        "token_account": "EcThaPqNiYgSCLC1j5qEm4GKVShZdTCBPo6aBWciERtT",
        "owner": "BeMB4cHz86bSJp7cnF2tWsgh8BB24Cwn5KneFvNA5NN1",
        "amount": 690628.680711,
        "percent_of_supply": 0.313
      },
      {
        "rank": 14,
        "token_account": "5kx9D7V4RcQccGiKXzRTxULPZenUPpRDxTm1Q2CuYxHU",
        "owner": "7PS5amaYWmBwvBdF5K3o2pMGp1AMADebf34DXicQMhsF",
        "amount": 666188.892028,
        "percent_of_supply": 0.3019
      },
      {
        "rank": 15,
        "token_account": "EqXmtbtVa14g3RmZ6kUs814FubhXLVMCRVf4QfkXDoSA",
        "owner": "H34RB2WJEQo1MMTJf98D4EuJdnmUzMho7dR3hUaak2N9",
        "amount": 622217.92422,
        "percent_of_supply": 0.282
      },
      {
        "rank": 16,
        "token_account": "9xuKbxF9iF45W1zSNxmUKjxKoteHvsiwWLQxmyK2tFVA",
        "owner": "4vVs8AfArsPF6foAQwWRXzH95t16pfoc1jsX72iJLqz5",
        "amount": 620350.902676,
        "percent_of_supply": 0.2812
      },
      {
        "rank": 17,
        "token_account": "HqwXZjXeXLy7ny3qT4AZgHPgUC4trpQfUv5B64Zdq9eh",
        "owner": "3ctiKrmVFZNFEpZCXXBbXGNHeaJPcnAgVRMwm2gHPecD",
        "amount": 599443.049381,
        "percent_of_supply": 0.2717
      },
      {
        "rank": 18,
        "token_account": "5FoVeG3ZDmE6Jj8WLhhYzMbLHPiGBYPvd5fxEZAED6Qo",
        "owner": "D4QCFEvRqBWoJaZrvgVBfv5pWdgEj1VeZPSLYF3zQexr",
        "amount": 547214.300387,
        "percent_of_supply": 0.248
      },
      {
        "rank": 19,
        "token_account": "7dD6bhVgWtxyQPDAuM6Vprd22K7H6xzDYdsUbg9B3KUC",
        "owner": "9DrvZvyWh1HuAoZxvYWMvkf2XCzryCpGgHqrMjyDWpmo",
        "amount": 533111.292404,
        "percent_of_supply": 0.2416
      },
      {
        "rank": 20,
        "token_account": "12JnzFfWze399npiAryh2vTowp5pxLJX4q5VX2RhYxpd",
        "owner": "ESggJsdRCGuKexc58uEPLkYZUqLgL6KngUoKsssHxcMT",
        "amount": 468644.882922,
        "percent_of_supply": 0.2124
      }
    ]
  }
}
GET/api/v1/solana/balance/{address}$0.01

Native SOL balance and account metadata for any Solana address

The native SOL balance and basic account state for any Solana address, read from the public ledger: lamports and SOL, whether the account exists, its owning program, executable flag, and data size. Pass a base58 address in the path. Keyless on-chain data — no Jupiter API, no account.

Example request
GET /api/v1/solana/balance/ADDRESS
Response type (TypeScript)
interface SolBalanceResponse {
  source: string;
  as_of: string;
  venue: string;
  data: {
    address: string;
    lamports: number;
    sol: number;
    exists: boolean;
    owner: string;
    executable: boolean;
    data_size: number;
  };
}
Example response (click to expand)
{
  "source": "x402stock",
  "as_of": "2026-06-08T18:35:13.178Z",
  "venue": "solana",
  "data": {
    "address": "5BUwFW4nRbftYTDMbgxykoFWqWHPzahFSNAaaaJtVKsq",
    "lamports": 102463178,
    "sol": 0.102463178,
    "exists": true,
    "owner": "PERPHjGBqRHArX4DySjwM6UJHiR3sWAatqfdBS2qQJu",
    "executable": false,
    "data_size": 2000
  }
}
GET/api/v1/solana/jlp$0.02

Jupiter JLP pool: AUM, virtual price, per-asset holdings, utilization & trader exposure

Jupiter's JLP liquidity pool, decoded from the Perpetuals program's on-chain accounts (not the Jupiter API): AUM (USD), JLP supply and virtual price (AUM ÷ supply), pool-wide long/short trader exposure, and each asset (SOL, ETH, WBTC, USDC, USDT) with holdings, owned/locked, utilization %, and long/short USD. Keyless public-chain data, no Jupiter API.

Example request
GET /api/v1/solana/jlp
Response type (TypeScript)
interface JlpPoolResponse {
  source: string;
  as_of: string;
  venue: string;
  chain: string;
  protocol: string;
  program: string;
  pool: string;
  jlp_mint: string;
  aum_usd: number;
  jlp_supply: number;
  jlp_virtual_price: number;
  total_guaranteed_usd: number;
  total_short_usd: number;
  asset_count: number;
  assets: Array<{
    symbol: string;
    mint: string;
    decimals: number;
    custody: string;
    token_account: string;
    amount: number;
    owned: number;
    locked: number;
    utilization_percent: number;
    guaranteed_usd: number;
    global_short_usd: number;
  }>;
}
Example response (click to expand)
{
  "source": "x402stock",
  "as_of": "2026-06-08T20:02:11.449Z",
  "venue": "jupiter",
  "chain": "solana",
  "protocol": "jupiter-perps",
  "program": "PERPHjGBqRHArX4DySjwM6UJHiR3sWAatqfdBS2qQJu",
  "pool": "5BUwFW4nRbftYTDMbgxykoFWqWHPzahFSNAaaaJtVKsq",
  "jlp_mint": "27G8MtK7VtTcCHkpASjSDdkWWYfoqT6ggEuKidVJidD4",
  "aum_usd": 742765291.391216,
  "jlp_supply": 220876259.555971,
  "jlp_virtual_price": 3.362812,
  "total_guaranteed_usd": 35163306.86,
  "total_short_usd": 35495201.42,
  "asset_count": 5,
  "assets": [
    {
      "symbol": "SOL",
      "mint": "So11111111111111111111111111111111111111112",
      "decimals": 9,
      "custody": "7xS2gz2bTp3fwCC7knJvUWTEU9Tycczu6VhJYKgi1wdz",
      "token_account": "BUvduFTd2sWFagCunBPLupG8fBTJqweLw9DuhruNFSCm",
      "amount": 697554.921444867,
      "owned": 5189452.757695472,
      "locked": 394476.133714906,
      "utilization_percent": 7.6,
      "guaranteed_usd": 20911840.02,
      "global_short_usd": 16177269.88
    },
    {
      "symbol": "ETH",
      "mint": "7vfCXTUXx5WJV5JADk17DUJ4ksgau7utNKj4b963voxs",
      "decimals": 8,
      "custody": "AQCGyheWPLeo6Qp9WpYS9m3Qj479t7R636N9ey1rEjEn",
      "token_account": "Bgarxg65CEjN3kosjCW5Du3wEqvV3dpCGDR3a2HRQsYJ",
      "amount": 32196.19128004,
      "owned": 32162.62687581,
      "locked": 2581.62833255,
      "utilization_percent": 8.03,
      "guaranteed_usd": 3461141.65,
      "global_short_usd": 8143817.3
    },
    {
      "symbol": "WBTC",
      "mint": "3NZ9JMVBmGAqocybic2c7LQCJScmgsAZ6vQqTDzcqmJh",
      "decimals": 8,
      "custody": "5Pv3gM9JrFFH883SWAhvJC9RPYmo8UNxuFtv5bMMALkm",
      "token_account": "FgpXg2J3TzSs7w3WGYYE7aWePdrxBVLCXSxmAKnCZNtZ",
      "amount": 1906.09527623,
      "owned": 1906.09520435,
      "locked": 217.56267376,
      "utilization_percent": 11.41,
      "guaranteed_usd": 10790325.19,
      "global_short_usd": 11174114.24
    },
    {
      "symbol": "USDC",
      "mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "decimals": 6,
      "custody": "G18jKKXQwBbrHeiK3C9MRXhkHsLHf7XgCSisykV46EZa",
      "token_account": "WzWUoCmtVv7eqAbU3BfKPU3fhLP6CXR8NCJH78UK9VS",
      "amount": 129538518.870139,
      "owned": 124929772.680408,
      "locked": 35505032.661289,
      "utilization_percent": 28.42,
      "guaranteed_usd": 0,
      "global_short_usd": 0
    },
    {
      "symbol": "USDT",
      "mint": "Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB",
      "decimals": 6,
      "custody": "4vkNeXiYEUizLdrpdPS1eC2mccyM4NUPRtERrk6ZETkk",
      "token_account": "Gex24YznvguMad1mBzTQ7a64U1CJy59gvsStQmNnnwAd",
      "amount": 99316.26474,
      "owned": 0.000001,
      "locked": 0,
      "utilization_percent": 0,
      "guaranteed_usd": 0,
      "global_short_usd": 0
    }
  ]
}