API reference · Market data

Trades stream

  • Elysium, HyperEVM: The swaps of one pool, one message per block that has some.
  • HyperCore: All trades of one market as they happen: raced between our node and Hyperliquid's public feed, first copy sent, the other dropped.

WebSocket channel elysium.trades on wss://api.femtos.xyz/v1/ws · WebSocket channel hc.trades on wss://api.femtos.xyz/v1/ws · WebSocket channel hyperevm.trades on wss://api.femtos.xyz/v1/ws

Parameters

ParamInExample or valuesMeaning
pairfilter<pair> (Elysium); <evmPair> (HyperEVM)Pool key: the pool address, or <PoolManager>:<PoolId> (V4, PancakeSwap Infinity); any case (Elysium, HyperEVM)
coinfilterBTCHyperCore market: BTC, @107 (spot), xyz:TSLA (HIP-3) (HyperCore)

Subscribe

Elysium

{"op":"subscribe","channel":"elysium.trades","filter":{"pair":"<pair>"}}

HyperCore

{"op":"subscribe","channel":"hc.trades","filter":{"coin":"BTC"}}

HyperEVM

{"op":"subscribe","channel":"hyperevm.trades","filter":{"pair":"<evmPair>"}}

Key: Authorization: Bearer $FEMTOS_KEY. Get a free key, or with no browser through agent onboarding.

Response fields

FieldTypeMeaning
snapshot: trueElysiumTrade[]last 50 swaps at subscribe, chronological (Elysium)
dataElysiumTrade[]the swaps of the pair in one block: {t, px, sz, side, id, block, tx, logIndex, vq, usd, pxUsd, mcapUsd, …} (Elysium)
latency_ms.source_to_sentintblock → sent by the server (Elysium)
snapshot: trueHcTrade[]last 50 trades of the market at subscribe (HyperCore)
dataHcTrade[]the new trades: HyperCore trades of the market as they happen, raced between our node and Hyperliquid's public feed (first copy sent): {t, px, sz, side, tid, block, hash, users} (HyperCore)
data[].tidinttrade id, unique: dedupe on it (HyperCore)
data[].users[string, string][buyer, seller], lowercase 0x (HyperCore)
data[].hashstringtransaction hash (all zeros when the public feed gives none) (HyperCore)
data[].blockint | nullnull when the public feed was first; our node fills it in the snapshots (HyperCore)
latency_ms.source_to_sentinttrade time → sent by the server (HyperCore)
snapshot: trueTrade[]last 50 swaps at subscribe, chronological (HyperEVM)
dataTrade[]the swaps of the pair in one block, as they are indexed (polled every 500 ms): {t, px, sz, side, id, block, tx, logIndex, vq, usd, pxUsd, mcapUsd, …} (HyperEVM)

Related: Market data

  • Markets GET /v1/markets Elysium, HyperCore, HyperEVM
    Every tradable perp, spot, HIP-3 and outcome market with 24 h stats.
  • Candles GET /v1/candles Elysium, HyperCore, HyperEVM
    OHLCV of any HyperCore market down to 1 s, ascending, UTC-aligned.
  • Forming candle WS elysium.candles · hc.candles · hyperevm.candles Elysium, HyperCore, HyperEVM
    The forming candle, pushed once per block where it changes.
  • Token candles GET /v1/candles Elysium, HyperCore, HyperEVM
    OHLCV of a token through its USDC market (a perp coin: the perp).
  • Trades GET /v1/trades Elysium, HyperCore, HyperEVM
    Latest fills of one market, newest first.
  • Order book GET /v1/book HyperCore
    L2 book of one market with order counts, from our node.
  • Book stream WS hc.book HyperCore
    Full-depth book, then the levels each block changes.
  • Best bid / offer WS hc.bbo HyperCore
    Top of book of one market each block: raced between Hyperliquid's public feed and our node (newest block wins, our node corrects the same block).
  • Order updates WS hc.orders HyperCore
    Every order status change, filterable by coin, user and status.
  • Token prices GET /v1/prices Elysium, HyperCore, HyperEVM
    USD price of up to 100 tokens in one call, each with its source and provenance.
  • Price history GET /v1/prices/history Elysium, HyperCore, HyperEVM
    USD closes per unit of up to 25 tokens over a window, or the price of 100 tokens at one time (at=).
  • HYPE price WS prices.hype HyperCore
    HYPE from the Hyperliquid oracle, perp mark and exchanges.
  • Pool detail GET /v1/pools/{address} Elysium, HyperEVM
    One pool: dex, fee, tokens, liquidity in USD, depth, 5m to 24h activity, top LPs.
  • Liquidity events GET /v1/liquidity Elysium, HyperEVM
    Liquidity added to and removed from one pool, newest first.
  • Daily token volume GET /v1/volume Elysium, HyperEVM
    USD swap volume of a token per UTC day, both sides of every priced swap.

More

Agent guide (agents.md)llms.txtOpenAPIMCP serverGet an API keyChangelog