Decoded swap streams

One of the most valuable features of Heimdahl is the real-time stream of decoded swap events from Solana DEXs.

These events are parsed directly from on-chain instructions — no guesswork, no decoding needed. You get structured, typed JSON messages for every swap, streamed over WebSocket.


Stream Endpoint

wss://api.heimdahl.xyz/v1/swaps/stream/<chain>.<network>.<dex>?api_key=<your_api_key>
  • chain: Currently only solana is supported

  • network: mainnet

  • dex: One of the supported DEX sources listed below

  • api_key: Your Heimdahl API key (demo works for 5 minutes)


Supported DEX Sources

DEX Name
Identifier (use in URL)

Meteora DLMM

meteora-dlmm

Pump.fun

pumpfun

PumpSwap

pumpswap

Raydium CPMM

raydium-cpmm


Sample Stream Usage (JavaScript)

const client = new HeimdahlClient("demo");

client.streamSwaps("pumpfun", (event) => {
    if (event.type === "buy") {
        console.log("Pump.fun Buy:");
        console.log("  Amount     :", event.amount);
        console.log("  Max SOL    :", event.maxSol);
        console.log("  Tx         :", event.tx);
    } else if (event.type === "sell") {
        console.log("Pump.fun Sell:");
        console.log("  Amount     :", event.amount);
        console.log("  Min SOL Out:", event.minSol);
        console.log("  Tx         :", event.tx);
    }
});

Sample Event Payloads

🟢 Pump.fun Buy

{
  "timestamp": 1748631721,
  "slot": 343522001,
  "tx_signature": "3EAWCLhT9p9i88FuyPjxzzwdHvT2VKxnrDLyC1jF4NkWo2BhTbmkQKHbiGKsbLPaSdsUBWpSfapEJqqnxocowygT",
  "program": "6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P",
  "instruction": "buy",
  "arguments": {
    "Amount": 35766666,
    "MaxSolCost": 1050
  },
  "accounts": { ... }
}

🔴 Pump.fun Sell

{
  "timestamp": 1748631721,
  "slot": 343522001,
  "tx_signature": "3iVrgnCkSJS8T9DdzMtWiB1Uc1ZQ9NKS5DuDRRsYhsGXDQzL5jzi9eGFTcUnFcsu4ZPyU6FpuJcMHDFB7Nv3yyJA",
  "program": "6EF8rrecthR5Dkzon8nwu78hRvfCKubJ14M5uBEwF6P",
  "instruction": "sell",
  "arguments": {
    "Amount": 7154169242853,
    "MinSolOutput": 970516354
  },
  "accounts": { ... }
}

🟡 Raydium CPMM Swap

{
  "timestamp": 1748688782,
  "slot": 343667036,
  "tx_signature": "45bLgdkScwd8DBVZMgWHbZUEA4syg8ed2aZcCaFjeDWRxW4gDc2CdAeP153SXbxJoaTCrpPH3m8qRgiHpqDdK2NN",
  "program": "CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C",
  "instruction": "swapBaseInput",
  "arguments": {
    "AmountIn": 12024319265,
    "MinimumAmountOut": 256164646
  },
  "accounts": { ... }
}

Notes

  • Use demo key for testing (5 min limit).

  • Data is sent as structured JSON, ready for direct use in bots, dashboards, or alerts.

  • More DEXes and chains coming soon — including Sui and Cosmos.

Last updated