Skip to main content
GET
Single swap by transaction signature

Authorizations

X-API-Key
string
header
required

Preferred for swaps-api endpoints (/swaps/*, /stats/*, /trending, /pool-events).

Path Parameters

signature
string
required

Response

Swap event

A single swap event from the raw swaps index. Same shape across /swaps, /swaps/range, /swaps/whale, /swaps/{signature}, /swaps/trader/{wallet}, /swaps/token/{mint}.

Note that the streaming feeds (WebSocket and gRPC) use a different shape — see WebSocket wire format — most notably swap_type (string) vs is_buy (bool) here, and dex as the string name vs dex as the integer ID here.

signature
string

Solana transaction signature (base58).

slot
integer<int64>
timestamp
integer<int64>

Unix epoch milliseconds.

token_address
string

Non-SOL side of the pool (the token being bought/sold).

pair_address
string

On-chain pool/LP account.

user
string

Trader wallet.

is_buy
boolean

true if SOL → token; false if token → SOL.

dex
enum<integer>

Integer DEX identifier used in raw swap rows. Mapping:

Available options:
1,
2,
3,
4,
5,
6,
7,
8,
9,
10
sol_amount
integer<int64>

Lamports (1 SOL = 1e9).

token_amount
integer<int64>

Token base units; divide by 10**quote_decimals for human-readable.

fee
integer<int64>

LP fee paid, in lamports.

fee_bps
integer

Effective LP fee, in basis points.

creator_fee
integer<int64>

Creator-set fee paid, in lamports (pump.fun + meteora-dbc).

creator_fee_bps
integer
price_per_token
number

Realized fill price in lamports per atomic token unit — the raw stored value, NOT decimals-adjusted SOL. To get SOL per whole token: price_per_token * 10**quote_decimals / 1e9. Matches the definition on ScreenerResultV2.price_per_token. If you want the decimals-adjusted price directly, use pool_price instead — reading this field as SOL-per-token overstates it by 10**(9 - quote_decimals) (1000x for a 6-decimal token).

pool_price
number

Pool mid-price after the swap, in SOL per whole token (already decimals-adjusted). This is the decimals-adjusted companion to price_per_token, which is raw lamports per atomic unit.

price_impact_bps
integer

Difference between fill price and pre-swap mid, in basis points.

base_decimals
integer

Decimals of the base (SOL) side — typically 9.

quote_decimals
integer

Decimals of the quote (token) side.

virtual_sol_reserves
integer<int64>

Virtual SOL reserves (pump.fun bonding curve). 0 on non-pump pools.

virtual_token_reserves
integer<int64>
real_sol_reserves
integer<int64>

Actual reserves on the pool after the swap.

real_token_reserves
integer<int64>
transfer_fee_in
integer<int64>

Token-2022 transfer-fee paid on the input side (lamports/base units).

transfer_fee_out
integer<int64>
cashback
integer<int64>

Cashback rebated to the trader (lamports).

cashback_bps
integer