API reference, Bridges & wallets

Wallet PnL curve

One HyperCore wallet's PnL per hour or day: realized, fees, funding, net and cumulative, and its account value.

  • Elysium: not served
  • HyperCore
  • HyperEVM: not served
  • Not on Elysium or HyperEVM: orders, fills and funding payments are HyperCore's: on the EVM layers an address swaps and holds tokens, see its trades, ERC-20 transfers and balances

GET https://api.femtos.xyz/v1/hypercore/wallet/{address}/pnl

Parameters

ParamInExample or valuesMeaning
addresspath0xe52ec3a0f90c66510ff7892354b1a1337afaac630x address, or a named wallet's handle <entityId>.<hex>
windowquery(empty), 7d, 30d, 90d, allUTC days ending today: 7d, 30d, 90d, or all (since `dataStart`). Default 30d
bucketquery(empty), 1h, 1dBucket: 1h (window 7d or 30d) or 1d. Default 1d

Example

curl -H "Authorization: Bearer $FEMTOS_KEY" "https://api.femtos.xyz/v1/hypercore/wallet/0xe52ec3a0f90c66510ff7892354b1a1337afaac63/pnl"

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

Response fields

FieldTypeMeaning
points[]objectOne per bucket, oldest first: {t, realizedPnl, fees, funding, netPnl, cumNetPnl, fills, accountValue, netFlows}
points[].accountValuedecimal | nullPerp account value at the end of the bucket (the last one: now), the main dex and every HIP-3 dex summed in USD (each collateral at its spot price then), 6 decimals; null when unknown (see accountValue.status)
points[].netFlowsdecimal | nullNet transfers into the perp accounts in the bucket (deposits, transfers, vault moves; withdrawals and transfers out negative), USD (a HIP-3 collateral at its spot price at the end of the bucket); null when unknown
totalsobjectThe window summed: {realizedPnl, fees, funding, netPnl, fills, netFlows}
accountValueobjectThe perp account value over the window (see the route): {status, note, mode, current, start, asOf}
frommsWindow start: the first bucket
dataStartmsStart of our HyperCore history
entityobjectNamed wallet (labels), when known
billingheavyheavy with window 90d or all, else medium

Related: Bridges & wallets

  • Cross-layer wallet GET /v1/wallet/{address} Elysium, HyperCore, HyperEVM
    One address (or a named wallet's handle) on HyperCore, HyperEVM and Elysium, plus its latest events.
  • Wallet stream WS wallet Elysium, HyperCore, HyperEVM
    Every event of the three layers touching one address.
  • Wallet list stream WS wallets Elysium, HyperCore, HyperEVM
    Every event of the three layers touching any of up to 100 addresses, in one subscription, each event tagged with its address.
  • HyperCore account GET /v1/hypercore/wallet/{address} HyperCore
    One address's HyperCore account: perp value and margin, positions, spot balances.
  • Wallet open orders GET /v1/hypercore/wallet/{address}/orders HyperCore
    One wallet's open orders: resting limit orders and trigger orders, on the main dex and every HIP-3 dex.
  • Wallet order history GET /v1/hypercore/wallet/{address}/orders/history HyperCore
    One wallet's orders that left the book, newest first: how (filled, canceled, rejected) and why, the size filled and its average price.
  • Wallet fills GET /v1/hypercore/wallet/{address}/fills HyperCore
    One wallet's HyperCore fills, newest first, with closed PnL, fees and the position before each.
  • Wallet fills per bar GET /v1/hypercore/wallet/{address}/fills/bars HyperCore
    One wallet's fills on one market summed per bar: buys and sells with their average price, and the position after each bar.
  • Wallet funding GET /v1/hypercore/wallet/{address}/funding HyperCore
    One wallet's funding payments, newest first: paid or received per perp and hour, with the position and the rate.
  • Swaps by wallet GET /v1/trades Elysium, HyperEVM
    Every swap a wallet sent (or a pool’s, a token’s), newest first, filterable by token, side, size and time.
  • Transfers by wallet GET /v1/transfers Elysium, HyperEVM
    ERC-20 transfers sent and received by a wallet, newest first, filterable by token, direction, size and time.
  • Wallet PnL GET /v1/wallet/{address}/pnl Elysium, HyperEVM
    Any wallet on HyperEVM: per token balance, cost basis, realized and unrealized PnL, with 1d / 7d / 30d / all totals and win rate.
  • Portfolio value history GET /v1/wallet/{address}/value Elysium, HyperEVM
    Any address on HyperEVM: its total USD value per 5 min (1d), hour (7d) or day (30d, all).
  • Wallet PnL stream WS pnl Elysium, HyperEVM
    A wallet's positions and PnL on HyperEVM (GET /v1/wallet/{address}/pnl), pushed on subscribe, then the positions each block changes.
  • Was I sandwiched? GET /v1/wallet/{address}/mev Elysium
    Every sandwich of a wallet’s swaps on Elysium: the bot, its two transactions, what the wallet lost. Free, no key.
  • Ledger stream WS hc.ledger HyperCore
    Deposits, withdrawals, transfers and other non-trade balance moves.
  • Bridge movements GET /v1/bridges Elysium, HyperCore, HyperEVM
    Matched HyperCore ↔ HyperEVM transfers with 24 h stats.
  • Bridge stream WS elysium.bridge | bridge.transfers Elysium, HyperCore, HyperEVM
    Each HyperCore ↔ HyperEVM transfer, initiated then completed.
  • Bridge movements stream WS bridges.recent Elysium, HyperCore, HyperEVM
    The GET /v1/bridges answer (movements newest first, 24 h stats), pushed on subscribe, then when a movement of the route changes state.
  • Bridge coverage GET /v1/bridges/coverage HyperCore, HyperEVM
    Every HyperCore ↔ HyperEVM leg since our data starts, paired with its other leg: matched share per direction and token, why the others are not, latency.

More

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