Skip to main content
One row per withdrawal from a lending market, including the sending side of a receipt-token transfer. amount is the tokens taken out, and summing it per user_address replays a position.

Columns

ColumnTypeDescription
block_timestampTIMESTAMPTime of the block containing the withdrawal. Partition column.
block_numberINT64Number of the block containing the withdrawal.
transaction_hashSTRINGHash of the transaction that emitted the withdrawal event.
log_indexINT64Position of the withdrawal event in the block.
unique_idINT64Row key: fingerprint of chain_id, block_number, transaction_hash, log_index.
event_typeSTRINGConstant β€˜withdrawals’; stacking key across the lending facts.
project_idSTRINGProtocol operating the market, such as aave.
app_idSTRINGDeployment of the protocol the market belongs to.
chain_idSTRINGChain the withdrawal happened on.
lending_market_idSTRINGMarket the withdrawal left; joins dimensions.lending_markets.
lending_market_reserve_idSTRINGReserve within the market; joins dimensions.lending_market_reserves.
lending_market_contract_addressSTRINGContract the market lives on; not a key.
receipt_token_addressSTRINGReceipt token whose balance moved (the aToken for Aave); null where positions are not tokenised.
token_idSTRINGToken withdrawn: {token_address}-{chain_id}.
token_addressSTRINGContract address of the token withdrawn.
token_symbolSTRINGSymbol of the token withdrawn.
token_decimalsINT64Decimals of the token withdrawn.
withdrawer_addressSTRINGWhere the value went: the receiver of the withdrawal, or the recipient on a receipt-token transfer.
user_addressSTRINGAccount whose supplied balance fell; the position key across the lending facts.
shares_rawBIGNUMERICMovement in the protocol’s interest-bearing unit, exact integer; summing per position replays the share balance.
sharesBIGNUMERICshares_raw decimal-corrected.
amount_rawBIGNUMERICEvent-time amount in the token’s stored unit, exact integer.
amountBIGNUMERICamount_raw decimal-corrected into whole tokens. */}

Sample queries

This table is large and split by day. Bound block_timestamp and filter chain_id on every query, or you read the whole table and the whole table is billed to you.
amount is whole tokens and amount_raw the integer the contract emitted. user_address is whose supplied balance fell.