Skip to main content

DEX (dex)

Decentralized exchange pools, swaps, liquidity events, and candles.

15 queryable tables. Every table supports the standard Hasura query arguments — where, order_by, limit, offset, distinct_on — plus an _aggregate field.

Access: Team and Premium (Playground on lower plans)

Tables

candle

ColumnPostgres typeGraphQL type
token_idbigintbigint
periodtextString
timestamp_rangeint8rangeint8range
sourcetextString
open_hbarnumericnumeric
high_hbarnumericnumeric
low_hbarnumericnumeric
close_hbarnumericnumeric
open_usdnumericnumeric
high_usdnumericnumeric
low_usdnumericnumeric
close_usdnumericnumeric
volume_tinybarbigintbigint
volume_microusdbigintbigint
liquidity_tinybarbigintbigint
liquidity_microusdbigintbigint
volume_hbarnumericnumeric
volume_usdnumericnumeric
liquidity_hbarnumericnumeric
liquidity_usdnumericnumeric
num_tradesintegerInt
query GetCandle {
dex_candle(limit: 10) {
token_id
period
timestamp_range
source
}
}

fee_event

ColumnPostgres typeGraphQL type
consensus_timestampbigintbigint
log_indexintegerInt
pool_idbigintbigint
event_typetextString
owner_evm_addressbyteabytea
recipient_evm_addressbyteabytea
tick_lowerintegerInt
tick_upperintegerInt
amount0numericnumeric
amount1numericnumeric
payer_account_idbigintbigint
transaction_hashbyteabytea
inserted_attimestamptztimestamptz
query GetFeeEvent {
dex_fee_event(limit: 10) {
consensus_timestamp
log_index
pool_id
event_type
}
}

flash_event

ColumnPostgres typeGraphQL type
consensus_timestampbigintbigint
log_indexintegerInt
pool_idbigintbigint
sender_evm_addressbyteabytea
recipient_evm_addressbyteabytea
amount0numericnumeric
amount1numericnumeric
paid0numericnumeric
paid1numericnumeric
payer_account_idbigintbigint
transaction_hashbyteabytea
inserted_attimestamptztimestamptz
query GetFlashEvent {
dex_flash_event(limit: 10) {
consensus_timestamp
log_index
pool_id
sender_evm_address
}
}

function_signature

ColumnPostgres typeGraphQL type
selectorbyteabytea
nametextString
signaturetextString
targettextString
query GetFunctionSignature {
dex_function_signature(limit: 10) {
selector
name
signature
target
}
}

liquidity_event

ColumnPostgres typeGraphQL type
consensus_timestampbigintbigint
log_indexintegerInt
pool_idbigintbigint
sourcetextString
event_typetextString
owner_evm_addressbyteabytea
tick_lowerintegerInt
tick_upperintegerInt
token0_amountnumericnumeric
token1_amountnumericnumeric
liquidity_deltanumericnumeric
payer_account_idbigintbigint
transaction_hashbyteabytea
inserted_attimestamptztimestamptz
query GetLiquidityEvent {
dex_liquidity_event(limit: 10) {
consensus_timestamp
log_index
pool_id
source
}
}

lp_transfer_event

ColumnPostgres typeGraphQL type
consensus_timestampbigintbigint
token_idbigintbigint
pool_idbigintbigint
account_idbigintbigint
amountnumericnumeric
is_approvalbooleanBoolean
transaction_hashbyteabytea
inserted_attimestamptztimestamptz
query GetLpTransferEvent {
dex_lp_transfer_event(limit: 10) {
consensus_timestamp
token_id
pool_id
account_id
}
}

pool

ColumnPostgres typeGraphQL type
pool_idbigintbigint
pool_evm_addresstextString
sourcetextString
factory_idbigintbigint
token0_idbigintbigint
token1_idbigintbigint
token0_evm_addresstextString
token1_evm_addresstextString
token0_decimalsbigintbigint
token1_decimalsbigintbigint
token0_symboltextString
token1_symboltextString
token0_nametextString
token1_nametextString
is_whbar_pairedbooleanBoolean
whbar_token_positionsmallintsmallint
is_usdc_pairedbooleanBoolean
usdc_token_positionsmallintsmallint
fee_tierintegerInt
is_activebooleanBoolean
lp_token_idbigintbigint
query GetPool {
dex_pool(limit: 10) {
pool_id
pool_evm_address
source
factory_id
}
}

pool_call_event

ColumnPostgres typeGraphQL type
consensus_timestampbigintbigint
call_indexintegerInt
pool_idbigintbigint
sourcetextString
function_selectorbyteabytea
function_nametextString
callerbigintbigint
caller_typetextString
call_depthintegerInt
call_operation_typeintegerInt
top_callerbigintbigint
top_caller_typetextString
payer_account_idbigintbigint
result_statustextString
gas_offeredbigintbigint
gas_usedbigintbigint
value_tinybarbigintbigint
input_databyteabytea
result_databyteabytea
recipientbigintbigint
transaction_hashbyteabytea
inserted_attimestamptztimestamptz
query GetPoolCallEvent {
dex_pool_call_event(limit: 10) {
consensus_timestamp
call_index
pool_id
source
}
}

pool_state

ColumnPostgres typeGraphQL type
pool_idbigintbigint
reserve0numericnumeric
reserve1numericnumeric
sqrt_price_x96numericnumeric
tickintegerInt
liquiditynumericnumeric
liquidity_tinybarbigintbigint
liquidity_microusdbigintbigint
liquidity_hbarnumericnumeric
liquidity_usdnumericnumeric
last_event_timestampbigintbigint
updated_attimestamptztimestamptz
query GetPoolState {
dex_pool_state(limit: 10) {
pool_id
reserve0
reserve1
sqrt_price_x96
}
}

position

ColumnPostgres typeGraphQL type
token_idbigintbigint
current_owner_evm_addressbyteabytea
liquiditynumericnumeric
cumulative_fees0numericnumeric
cumulative_fees1numericnumeric
minted_timestampbigintbigint
last_event_timestampbigintbigint
last_event_log_indexintegerInt
inserted_attimestamptztimestamptz
updated_attimestamptztimestamptz
pool_idbigintbigint
tick_lowerintegerInt
tick_upperintegerInt
query GetPosition {
dex_position(limit: 10) {
token_id
current_owner_evm_address
liquidity
cumulative_fees0
}
}

position_event

ColumnPostgres typeGraphQL type
consensus_timestampbigintbigint
log_indexintegerInt
token_idbigintbigint
event_typetextString
from_evm_addressbyteabytea
to_evm_addressbyteabytea
liquidity_deltanumericnumeric
amount0numericnumeric
amount1numericnumeric
payer_account_idbigintbigint
transaction_hashbyteabytea
inserted_attimestamptztimestamptz
query GetPositionEvent {
dex_position_event(limit: 10) {
consensus_timestamp
log_index
token_id
event_type
}
}

price_event

ColumnPostgres typeGraphQL type
pool_idbigintbigint
log_indexintegerInt
sourcetextString
consensus_timestampbigintbigint
token0_idbigintbigint
token1_idbigintbigint
token0_amount_deltanumericnumeric
token1_amount_deltanumericnumeric
price_hbarnumericnumeric
price_usdnumericnumeric
volume_tinybarbigintbigint
volume_microusdbigintbigint
liquidity_tinybarbigintbigint
liquidity_microusdbigintbigint
volume_hbarnumericnumeric
volume_usdnumericnumeric
liquidity_hbarnumericnumeric
liquidity_usdnumericnumeric
query GetPriceEvent {
dex_price_event(limit: 10) {
pool_id
log_index
source
consensus_timestamp
}
}

spot_price

ColumnPostgres typeGraphQL type
token_idbigintbigint
price_hbarnumericnumeric
price_usdnumericnumeric
pool_idbigintbigint
sourcetextString
liquidity_tinybarbigintbigint
liquidity_hbarnumericnumeric
consensus_timestampbigintbigint
updated_attimestamptztimestamptz
query GetSpotPrice {
dex_spot_price(limit: 10) {
token_id
price_hbar
price_usd
pool_id
}
}

swap_event

ColumnPostgres typeGraphQL type
consensus_timestampbigintbigint
log_indexintegerInt
pool_idbigintbigint
sourcetextString
token0_idbigintbigint
token1_idbigintbigint
token0_amount_deltanumericnumeric
token1_amount_deltanumericnumeric
price_hbarnumericnumeric
price_usdnumericnumeric
volume_tinybarbigintbigint
volume_microusdbigintbigint
fee_tinybarbigintbigint
fee_microusdbigintbigint
volume_hbarnumericnumeric
volume_usdnumericnumeric
fee_hbarnumericnumeric
fee_usdnumericnumeric
payer_account_idbigintbigint
transaction_hashbyteabytea
inserted_attimestamptztimestamptz
is_routedbooleanBoolean
route_positionintegerInt
price_impact_pctnumericnumeric
direct_callerbigintbigint
direct_caller_typetextString
top_callerbigintbigint
top_caller_typetextString
call_depthintegerInt
gas_used_for_swapbigintbigint
query GetSwapEvent {
dex_swap_event(limit: 10) {
consensus_timestamp
log_index
pool_id
source
}
}

watermark

ColumnPostgres typeGraphQL type
job_nametextString
last_processed_nsbigintbigint
updated_attimestamptztimestamptz
query GetWatermark {
dex_watermark(limit: 10) {
job_name
last_processed_ns
updated_at
}
}