Pool Lens

This API retrieves information about all of the actions that occurred for a specific liquidity pool on the protocol within a certain timespan.

🚧

Time Range Limit

The maximum time range (difference between endDate and startDate) is 60 days.

📘

Not specifying startDate and endDate

If the startDate and endDate query parameters are not provided, the API will return data from the current date - 30 days.

So if the date-time today is 2022-12-20T00:00:00, then the first object in payload.data would start from at least 2022-11-20T00:00:00.

👍

Curve Pool Support

This endpoint only supports Curve v1 pools.

RESPONSE DATA

Understanding Actions in Uniswap

There are many different types of actions in Uniswap, as you'll see in the action property for each item of the payload.data array. The guide below will help you understand the possible actions.

Uniswap v2 ActionsUniswap v3 Actions
SwapSwap
MintMint

Swap (v2)

Within the liquidity pool denoted by poolAddress, the protocol is executing a trade that swaps amount0In of token0 for amount1Out of token1. The recipient of the token1 quantity is denoted by the to address.

Normalized amounts are computed using the decimal count for the respective tokens. In this example, token0 is USDC with 6 decimals. Hence amount0Normalized is amount0 shifted 6 decimals from the right. token1 is WETH with 18 decimals. Hence amount1Normalized is amount1 shifted 18 decimals from the right.

In other words, the address to received 7.1 ETH after swapping 26,823 USDC in Uniswap v2.

{
  "action": "Swap",
  "event": "Swap(index_topic_1 address sender, uint256 amount0In, uint256 amount1In, uint256 amount0Out, uint256 amount1Out, index_topic_2 address to)",
  "timestamp": "2022-01-03 23:36:52 000",
  "blockNumber": 13935536,
  "transactionHash": "0x0b5a9fd5544757f00ff257c543614653eaa12c2e6d6b7428daf4380125c9de46",
  "logIndex": 6,
  "poolAddress": "0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc",
  "token0": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
  "token1": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
  "sender": "0xdef171fe48cf0115b1d80b88dc8eab59176fee57",
  "amount0In": "26823361137",
  "amount1In": "0",
  "amount0Out": "0",
  "amount1Out": "7118283966568551127",
  "amount0InNormalized": "26823.361137",
  "amount1InNormalized": "0.0",
  "amount0OutNormalized": "0.0",
  "amount1OutNormalized": "7.118283966568551",
  "to": "0xdef171fe48cf0115b1d80b88dc8eab59176fee57"
}
propertytype
actionstring
eventstring
timestampstring | number
blockNumbernumber
transactionHashstring
logIndexnumber
poolAddressstring
token0string
token1string
senderstring
amount0Instring
amount1Instring
amount0Outstring
amount1Outstring
amount0InNormalizedstring
amount1InNormalizedstring
amount0OutNormalizedstring
amount1OutNormalizedstring
tostring

Mint (v2)

Creates amount0 and amount1 liquidity pool tokens for token0 and token1 because liquidity was provided for the pool at poolAddress.

{
  "action": "Mint",
  "event": "Mint(index_topic_1 address sender, uint256 amount0, uint256 amount1)",
  "timestamp": "2022-01-04 14:54:24 000",
  "blockNumber": 13939620,
  "transactionHash": "0x23e9246ac4035aa48a3ade2702870fca88d7256ecd0f8a17424f92c29628d7aa",
  "logIndex": 411,
  "poolAddress": "0x4cedf45d496e5bc36beda9197b0edc4957d98080",
  "token0": "0x74edaf28fc4b9e6a1618d613839daaf6a9d075db",
  "token1": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
  "sender": "0x7a250d5630b4cf539739df2c5dacb4c659f2488d",
  "amount0": "13987749186848981681050",
  "amount1": "225028717662222390",
  "amount0Normalized": "1.3987749186848982E13",
  "amount1Normalized": "0.22502871766222238"
}

Swap (v3)

Within the liquidity pool denoted by poolAddress, the protocol is executing a trade that swaps amount0 of token0 for amount1 of token1. The recipient of the token1 quantity is denoted by the recipient address.

Note that amount1 is negative. This indicates that amount1 of token1 was removed from the liquidity pool and that at least amount0 of token0 was added, vice-versa if amount0 was negative.

Normalized amounts are computed using the decimal count for the respective tokens. In this example, token1Address is USDC with 6 decimals. Hence amount1Normalized is amount1 shifted 6 decimals from the right. token0Address is DAI with 18 decimals. Hence amount0Normalized is amount0 shifted 18 decimals from the right.

In other words, the address recipient received 2136.125 USDC after swapping 2,136.290 DAI in Uniswap v3.

walletAddress is the initiator of this swap.

{
  "blockNumber": 15066199,
  "transactionHash": "0xa779935b68b544a055d2caae5bcb1a162b0c440e8577320c9f6027a8b689f923",
  "logIndex": 191,
  "timestamp": "2022-07-03 00:07:07 000",
  "factoryAddress": "0x1f98431c8ad98523631ae4a59f267346ea31f984",
  "poolAddress": "0x5777d92f208679db4b9778590fa3cab3ac9e2168",
  "event": "Swap(address indexed sender, address indexed recipient, uint256 amount0, uint256 amount1, uint160 sqrtPriceX96, uint128 liquidity, int24 tick)",
  "action": "Swap",
  "walletAddress": "0x9af79773f619f6d68e35ec8fe62660649b011a90",
  "tick": "-276324",
  "sender": "0x68b3465833fb72a70ecdf485e0e4c7bd8665fc45",
  "amount0": "2136290387768991186457",
  "amount1": "-2136125245",
  "liquidity": "3557659723537831479985487",
  "recipient": "0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640",
  "sqrtPriceX96": "79229061675456427773788",
  "amount0Normalized": "2136.2903877689911864570",
  "amount1Normalized": "-2136.1252450",
  "token0Address": "0x6b175474e89094c44da98b954eedeac495271d0f",
  "token1Address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
}
propertytype
blockNumbernumber
transactionHashstring
logIndexnumber
timestampstring | number
factoryAddressstring
poolAddressstring
eventstring
actionstring
walletAddressstring
tickstring
senderstring
amount0string
amount1string
liquiditystring
recipientstring
sqrtPriceX96string
amount0Normalizedstring
amount1Normalizedstring
token0Addressstring
token1Addressstring

Calculating Price from tick

Take for example the following Swap in the WBTC/ETH 0.3% pool

{
        "blockNumber": "16673343",
        "transactionHash": "0x8a3ff1d0eaaa02a1e38d73068bd68a87e73f441b7e817f2d94f02295e9cbfb7d",
        "logIndex": 380,
        "timestamp": "2023-02-21 00:32:11 000",
        "factoryAddress": "0x1f98431c8ad98523631ae4a59f267346ea31f984",
        "poolAddress": "0xcbcdf9626bc03e24f779434178a73a0b4bad62ed",
        "event": "Swap(address indexed sender, address indexed recipient, uint256 amount0, uint256 amount1, uint160 sqrtPriceX96, uint128 liquidity, int24 tick)",
        "action": "Swap",
        "walletAddress": "0xa52eb11b9b28dfa542e8c31d5ea834a793eaf6ac",
        "tick": "257062",
        "sender": "0xef1c6e67703c7bd7107eed8303fbe6ec2554bf6b",
        "amount0": "-3215566",
        "amount1": "470000000000000000",
        "liquidity": "2300696624878817708",
        "recipient": "0xef1c6e67703c7bd7107eed8303fbe6ec2554bf6b",
        "sqrtPriceX96": "30244574474409459448480531536110269",
        "amount0Normalized": "-0.032155660",
        "amount1Normalized": "0.4700000000000000000",
        "token0Address": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",
        "token1Address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2"
}

It's quite simple to calculate the price that this trade/swap occured at.

In Uniswap v3, the price at a tick i is defined as p(i) = 1.0001i, thus for the property tick above, with the value of 257062, the price will be

1.0001257062 = 145,714,457,877.4906

Now, we take this resulting value and multiply it by the token decimal ratio, which is defined as 10token0_decimals / 10token1_decimals.

token0 is WBTC with 8 decimals and token1 is ETH with 18 decimals. Hence the token decimal ratio is

108/1018 = 10-10

Multiplying the price and token decimal ratio, we have

145,714,457,877.4906 * 10-10 = 14.571

14.571 is the price as measured in token0/token1. Hence 1 WBTC = 14.571 ETH and 1 ETH = 1/14.571 = 0.0686 WBTC

Mint (v3)

{
  "blockNumber": 13659033,
  "transactionHash": "0x77cc6275f6807fec3159c3fbf5bff8ac025427a419b0a3cbefd4d2f9c7be52d6",
  "logIndex": 125,
  "timestamp": "2021-11-21 15:41:04 000",
  "factoryAddress": "0x1f98431c8ad98523631ae4a59f267346ea31f984",
  "poolAddress": "0x5777d92f208679db4b9778590fa3cab3ac9e2168",
  "event": "Mint(address sender, address indexed owner, int24 indexed tickLower, int24 indexed tickUpper, uint128 amount, uint256 amount0, uint256 amount1)",
  "action": "Mint",
  "walletAddress": "0xcaacebe2fdac9d3783563b9b80c714df82705226",
  "owner": "0xc36442b4a4522e871399cd717abdd847ab11fe88",
  "amount": "407110841443516028943",
  "sender": "0xc36442b4a4522e871399cd717abdd847ab11fe88",
  "amount0": "26356922330371906206695",
  "amount1": "34704623518",
  "tickLower": "16500891",
  "tickUpper": "16500894",
  "amount0Normalized": "26356.9223303719062066950",
  "amount1Normalized": "34704.6235180",
  "token0Address": "0x6b175474e89094c44da98b954eedeac495271d0f",
  "token1Address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
}
propertytype
blockNumbernumber
transactionHashstring
logIndexnumber
timestampstring | number
factoryAddressstring
poolAddressstring
eventstring
actionstring
walletAddressstring
ownerstring
amountstring
senderstring
amount0string
amount1string
tickLowerstring
tickUpperstring
amount0Normalizedstring
amount1Normalizedstring
token0Addressstring
token1Addressstring

Understanding Actions in Sushiswap

There are many different types of actions in Sushiswap, as you'll see in the action property for each item of the payload.data array. The guide below will help you understand the possible actions.

Swap

Within the liquidity pool denoted by poolAddress, the protocol is executing a trade that swaps amount0In of the token at token0Address for amount1Out of the token at token1Address.

Normalized amounts are computed using the decimal count for the respective tokens. In this example, token0Address is USDC with 6 decimals. Hence amount0OutNormalized is amount0Out shifted 6 decimals from the right. token1Address is WETH with 18 decimals. Hence amount1InNormalized is amount1In shifted 18 decimals from the right.

In other words, the address to received 422.699 USDC after swapping 0.17 WETH in Sushiswap.

{
	"blockNumber": 12538820,
	"transactionHash": "0x380fdf99833926a73d7d44fd32cfac02b205bcaa708a80fc460aa4569dc42f38",
	"logIndex": 377,
	"timestamp": "2021-05-31 00:05:52 000",
	"factoryAddress": "0xc0aee478e3658e2610c5f7a4a2e1777ce9e4f2ac",
	"poolAddress": "0x397ff1542f962076d0bfe58ea045ffa2d347aca0",
	"event": "Swap(index_topic_1 address sender, uint256 amount0In, uint256 amount1In, uint256 amount0Out, uint256 amount1Out, index_topic_2 address to)",
	"action": "Swap",
	"walletAddress": "0x737aad349312f36b43041737d648051a39f146e8",
	"to": "0x737aad349312f36b43041737d648051a39f146e8",
	"sender": "0xd9e1ce17f2641f24ae83637ab66a2cca9c378b9f",
	"amount0In": "0",
	"amount1In": "177026673285634919",
	"amount0Out": "422699929",
	"amount1Out": "0",
	"amount0InNormalized": "0",
	"amount1InNormalized": "0.1770266732856349190",
	"amount0OutNormalized": "422.6999290",
	"amount1OutNormalized": "0",
	"token0Address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
	"token1Address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2"
}
propertytype
blockNumberinteger
transactionHashstring
logIndexnumber
timestampstring | number
factoryAddressstring
poolAddressstring
eventstring
actionstring
walletAddressstring
tostring
senderstring
amount0Instring
amount1Instring
amount0Outstring
amount1Outstring
amount0InNormalizedstring
amount1InNormalizedstring
amount0OutNormalizedstring
amount1OutNormalizedstring
token0Addressstring
token1Addressstring

AddLiquidity

Adds amount0 and amount1 of the tokens at token0Address and token1Address to increase liquidity provided by the pool at poolAddress.

{
	"blockNumber": 12538820,
	"transactionHash": "0x380fdf99833926a73d7d44fd32cfac02b205bcaa708a80fc460aa4569dc42f38",
	"logIndex": 386,
	"timestamp": "2021-05-31 00:05:52 000",
	"factoryAddress": "0xc0aee478e3658e2610c5f7a4a2e1777ce9e4f2ac",
	"poolAddress": "0x397ff1542f962076d0bfe58ea045ffa2d347aca0",
	"event": "Mint(index_topic_1 address sender, uint256 amount0, uint256 amount1)",
	"action": "AddLiquidity",
	"walletAddress": "0x737aad349312f36b43041737d648051a39f146e8",
	"sender": "0xd9e1ce17f2641f24ae83637ab66a2cca9c378b9f",
	"amount0": "422699929",
	"amount1": "176495980232589668",
	"amount0Normalized": "422.6999290",
	"amount1Normalized": "0.1764959802325896680",
	"token0Address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
	"token1Address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2"
}
propertytype
blockNumberinteger
transactionHashstring
logIndexnumber
timestampstring | number
factoryAddressstring
poolAddressstring
eventstring
actionstring
walletAddressstring
senderstring
amount0string
amount1string
amount0Normalizedstring
amount1Normalizedstring
token0Addressstring
token1Addressstring

RemoveLiquidity

Remove amount0 and amount1 of the tokens at token0Address and token1Address to decrease liquidity provided by the pool at poolAddress.

{
	"blockNumber": 12538820,
	"transactionHash": "0x502b562faa9ce541d883f670884a6a2f5570aa575daead03e73fb9971d24fc1d",
	"logIndex": 98,
	"timestamp": "2021-05-31 00:05:52 000",
	"factoryAddress": "0xc0aee478e3658e2610c5f7a4a2e1777ce9e4f2ac",
	"poolAddress": "0x397ff1542f962076d0bfe58ea045ffa2d347aca0",
	"event": "Burn(index_topic_1 address sender, uint256 amount0, uint256 amount1, index_topic_2 address to)",
	"action": "RemoveLiquidity",
	"walletAddress": "0xe11fc0b43ab98eb91e9836129d1ee7c3bc95df50",
	"to": "0xe11fc0b43ab98eb91e9836129d1ee7c3bc95df50",
	"sender": "0xe11fc0b43ab98eb91e9836129d1ee7c3bc95df50",
	"amount0": "3943381729",
	"amount1": "1646596749596814264",
	"amount0Normalized": "3943.3817290",
	"amount1Normalized": "1.6465967495968142640",
	"token0Address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
	"token1Address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2"
}
propertytype
blockNumberinteger
transactionHashstring
logIndexnumber
timestampstring | number
factoryAddressstring
poolAddressstring
eventstring
actionstring
walletAddressstring
tostring
senderstring
amount0string
amount1string
amount0Normalizedstring
amount1Normalizedstring
token0Addressstring
token1Addressstring

Understanding Actions in Curve

There are many different types of actions in Curve, as you'll see in the action property for each item of the payload.data array. The guide below will help you understand the possible actions.

Swap

The tokens bought and sold are identified by tokenBoughtAddress and tokenSoldAddress. The amount of the tokens bought and sold are identified by tokenBoughtAmountNormalized and tokenSoldAmountNormalized.

In this case, 2464.268 USDT was exchanged for 2460.88 USDC.

{
	"blockNumber": 15066172,
	"transactionHash": "0xdb8a64a3e6e1262e0ba133c3b876a57fbc3e3e912f1da26c733e95837a423b72",
	"logIndex": 109,
	"timestamp": 1656806423000,
	"factoryAddress": "0x90e00ace148ca3b23ac1bc8c240c2a7dd9c2d7f5",
	"poolAddress": "0xbebc44782c7db0a1a60cb6fe97d0b483032ff1c7",
	"event": "TokenExchange(index_topic_1 address buyer, int128 sold_id, uint256 tokens_sold, int128 bought_id, uint256 tokens_bought)",
	"action": "Swap",
	"walletAddress": "0x3b43b655cc979dbf8a0d06219d91608b983bc02a",
	"buyer": "0x3b43b655cc979dbf8a0d06219d91608b983bc02a",
	"tokenSoldAmount": "2464268350",
	"tokenBoughtAmount": "2460886693",
	"tokenAddresses": [
	  "0x6b175474e89094c44da98b954eedeac495271d0f",
	  "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
	  "0xdac17f958d2ee523a2206206994597c13d831ec7"
	],
	"tokenDecimals": [
	  18,
	  6,
	  6
	],
	"tokenSymbols": [
	  "DAI",
	  "USDC",
	  "USDT"
	],
	"numCoins": 3,
	"tokenSoldName": "Tether USD",
	"tokenBoughtName": "USD Coin",
	"tokenSoldSymbol": "USDT",
	"tokenSoldAddress": "0xdac17f958d2ee523a2206206994597c13d831ec7",
	"tokenBoughtSymbol": "USDC",
	"tokenBoughtAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
	"tokenSoldAmountNormalized": "2464.2683500",
	"tokenBoughtAmountNormalized": "2460.8866930"
}
propertytype
blockNumbernumber
transactionHashstring
logIndexnumber
timestampstring | number
factoryAddressstring
poolAddressstring
eventstring
actionstring
walletAddressstring
buyerstring
tokenSoldAmountstring
tokenBoughtAmountstring
tokenAddressesstring []
tokenDecimalsnumber[]
tokenSymbolsstring[]
numCoinsnumber
tokenSoldNamestring
tokenBoughtNamestring
tokenSoldSymbolstring
tokenBoughtSymbolstring
tokenSoldAmountNormalizedstring
tokenBoughtAmountNormalizedstring

AddLiquidity

Using tokenSymbols and tokenAmountsNormalized we see that 5070.082 USDT was added to the liquidity pool at poolAddress. 0 DAI and 0 USDC were added.

{
	"blockNumber": 15066257,
	"transactionHash": "0xd5f60ef754bce1c20603434efe33bbb1fb2c2f67bb102cc8929d247ba594f6b9",
	"logIndex": 429,
	"timestamp": 1656807532000,
	"factoryAddress": "0x90e00ace148ca3b23ac1bc8c240c2a7dd9c2d7f5",
	"poolAddress": "0xbebc44782c7db0a1a60cb6fe97d0b483032ff1c7",
	"event": "AddLiquidity(index_topic_1 address provider, uint256[3] token_amounts, uint256[3] fees, uint256 invariant, uint256 token_supply)",
	"action": "AddLiquidity",
	"walletAddress": "0x7bfee91193d9df2ac0bfe90191d40f23c773c060",
	"fees": [
	  "32239721365765604",
	  "32865",
	  "65191"
	],
	"provider": "0xed279fdd11ca84beef15af5d39bb4d4bee23f0ca",
	"invariant": "1024035759750197045519941896",
	"tokenSupply": "1002295842769406838984438840",
	"tokenAmounts": [
	  "0",
	  "0",
	  "5007082498"
	],
	"feesNormalized": [
	  "0.0322397213657656040",
	  "0.0328650",
	  "0.0651910"
	],
	"tokenSupplyNormalized": "1002295842.7694068389844388400",
	"tokenAmountsNormalized": [
	  "0",
	  "0",
	  "5007.0824980"
	],
	"tokenAddresses": [
	  "0x6b175474e89094c44da98b954eedeac495271d0f",
	  "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
	  "0xdac17f958d2ee523a2206206994597c13d831ec7"
	],
	"tokenDecimals": [
	  18,
	  6,
	  6
	],
	"tokenSymbols": [
	  "DAI",
	  "USDC",
	  "USDT"
	],
	"numCoins": 3
}
propertytype
blockNumbernumber
transactionHashstring
logIndexnumber
timestampstring | number
factoryAddressstring
poolAddressstring
eventstring
actionstring
walletAddressstring
feesstring[]
providerstring
invariantstring
tokenSupplystring
tokenAmountsstring[]
feesNormalizedstring[]
tokenSupplyNormalizedstring
tokenAmountsNormalizedstring []
tokenAddressesstring []
tokenDecimalsnumber[]
tokenSymbolsstring[]
numCoinsnumber

RemoveLiquidity

In Curve, there are three unique methods of removing liquidity.

What are the differences between the three methods?

RemoveLiquidity(...) - Withdraw tokenAmountsNormalized of the tokens in the liquidity pool. Each entry/value in tokenAmountsNormalized maps to exactly one token in tokenSymbols. In other words, 2369.71 DAI, 6989.62 USDC and 7271.21 USDT were removed from the liquidity pool.

RemoveLiquidityOne(...) - Withdraw tokenAmountNormalized of only one token in the liquidity pool.

RemoveLiquidityImbalance(...) - Withdraw an imbalanced amount of the tokens in the liquidity pool. The amounts of tokens withdrawn is denoted in tokenAmountsNormalized. Each entry/value in tokenAmountsNormalized maps to exactly one token in tokenSymbols. In other words, 292.92 DAI, 804.98 USDC and 883.29 USDT were removed from the liquidity pool.

{
	"blockNumber": 12538978,
	"transactionHash": "0x161feff90453a6213ccc6f9983ef15e175a939ba43e33b0ccb9e8ca89b74f8c7",
	"logIndex": 327,
	"timestamp": "2021-05-31 00:38:36 000",
	"factoryAddress": "0x90e00ace148ca3b23ac1bc8c240c2a7dd9c2d7f5",
	"poolAddress": "0xbebc44782c7db0a1a60cb6fe97d0b483032ff1c7",
	"event": "RemoveLiquidity(index_topic_1 address provider, uint256[3] token_amounts, uint256[3] fees, uint256 token_supply)",
	"action": "RemoveLiquidity",
	"walletAddress": "0xb94fb3cc45c11b3e1dffbc12490537a78306f1fe",
	"fees": [
	  "0",
	  "0",
	  "0"
	],
	"provider": "0xa79828df1850e8a3a3064576f380d90aecdd3359",
	"tokenSupply": "1222576109977577774990655593",
	"tokenAmounts": [
	  "2369717089046478622112",
	  "6989623610",
	  "7271218614"
	],
	"feesNormalized": [
	  "0",
	  "0",
	  "0"
	],
	"tokenSupplyNormalized": "1222576109.9775777749906555930",
	"tokenAmountsNormalized": [
	  "2369.7170890464786221120",
	  "6989.6236100",
	  "7271.2186140"
	],
	"tokenAddresses": [
	  "0x6b175474e89094c44da98b954eedeac495271d0f",
	  "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
	  "0xdac17f958d2ee523a2206206994597c13d831ec7"
	],
	"tokenDecimals": [
	  18,
	  6,
	  6
	],
	"tokenSymbols": [
	  "DAI",
	  "USDC",
	  "USDT"
	],
	"numCoins": 3
}
{
  "blockNumber": 15066187,
  "transactionHash": "0xbeec1726f2298afba5718bbf47057e5f6534a36076d6f690ccc834cd0fe052b7",
  "logIndex": 512,
  "timestamp": 1656806664000,
  "factoryAddress": "0x90e00ace148ca3b23ac1bc8c240c2a7dd9c2d7f5",
  "poolAddress": "0xbebc44782c7db0a1a60cb6fe97d0b483032ff1c7",
  "event": "RemoveLiquidityOne(index_topic_1 address provider, uint256 token_amount, uint256 coin_amount)",
  "action": "RemoveLiquidity",
  "walletAddress": "0x514e494c86f9249cfdc0e072f71f71a97cf33e65",
  "provider": "0x514e494c86f9249cfdc0e072f71f71a97cf33e65",
  "tokenAmount": "118035363826950809008",
  "redeemedTokenAmount": "120499827706830559650",
  "tokenAmountNormalized": "118.0353638269508090080",
  "tokenAddresses": [
    "0x6b175474e89094c44da98b954eedeac495271d0f",
    "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
    "0xdac17f958d2ee523a2206206994597c13d831ec7"
  ],
  "tokenDecimals": [
    18,
    6,
    6
  ],
  "tokenSymbols": [
    "DAI",
    "USDC",
    "USDT"
  ],
  "numCoins": 3,
  "redeemedTokenName": "Dai Stablecoin",
  "redeemedTokenSymbol": "DAI",
  "redeemedTokenAddress": "0x6b175474e89094c44da98b954eedeac495271d0f",
  "redeemedTokenAmountNormalized": "120.4998277068305596500"
}
{
	"blockNumber": 12539428,
	"transactionHash": "0xc7ec5750c45d0465ebe723806ef4cd1ae02912e8ed8619857afdbdcb207cb56c",
	"logIndex": 127,
	"timestamp": "2021-05-31 02:19:00 000",
	"factoryAddress": "0x90e00ace148ca3b23ac1bc8c240c2a7dd9c2d7f5",
	"poolAddress": "0xbebc44782c7db0a1a60cb6fe97d0b483032ff1c7",
	"event": "RemoveLiquidityImbalance(index_topic_1 address provider, uint256[3] token_amounts, uint256[3] fees, uint256 invariant, uint256 token_supply)",
	"action": "RemoveLiquidity",
	"walletAddress": "0x5132972aec6cb1611442d1ec1762dfb760f32572",
	"fees": [
	  "1456603360417224",
	  "5135",
	  "3677"
	],
	"provider": "0x8b947d8448cffb89ef07a6922b74fbabac219795",
	"invariant": "1243798309407644640197906294",
	"tokenSupply": "1222617861733978403866472471",
	"tokenAmounts": [
	  "292926230095826348249",
	  "804985128",
	  "883299920"
	],
	"feesNormalized": [
	  "0.0014566033604172240",
	  "0.0051350",
	  "0.0036770"
	],
	"tokenSupplyNormalized": "1222617861.7339784038664724710",
	"tokenAmountsNormalized": [
	  "292.9262300958263482490",
	  "804.9851280",
	  "883.2999200"
	],
	"tokenAddresses": [
	  "0x6b175474e89094c44da98b954eedeac495271d0f",
	  "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
	  "0xdac17f958d2ee523a2206206994597c13d831ec7"
	],
	"tokenDecimals": [
	  18,
	  6,
	  6
	],
	"tokenSymbols": [
	  "DAI",
	  "USDC",
	  "USDT"
	],
	"numCoins": 3
}

📘

Mapping "action"

All the methods of removing liquidity are mapped to "action": "RemoveLiquidity".

You can retrieve all the different liquidity removal events with action=RemoveLiquidity in the query parameters.

RemoveLiquidity(...)

propertytype
blockNumbernumber
transactionHashstring
logIndexnumber
timestampstring | number
factoryAddressstring
poolAddressstring
eventstring
actionstring
walletAddressstring
feesstring[]
providerstring
tokenSupplystring
tokenAmountsstring[]
feesNormalizedstring[]
tokenSupplyNormalizedstring
tokenAmountsNormalizedstring []
tokenAddressesstring []
tokenDecimalsnumber[]
tokenSymbolsstring[]
numCoinsnumber

RemoveLiquidityOne(...)

propertytype
blockNumbernumber
transactionHashstring
logIndexnumber
timestampstring | number
factoryAddressstring
poolAddressstring
eventstring
actionstring
walletAddressstring
providerstring
tokenAmountstring
tokenAmountNormalizedstring
tokenAddressesstring []
tokenDecimalsnumber[]
tokenSymbolsstring[]
numCoinsnumber
redeemedTokenNamestring
redeemedTokenSymbolstring
redeemedTokenAddressstring
redeemedTokenAmountstring
redeemedTokenAmountNormalizedstring

RemoveLiquidityImbalance(...)

propertytype
blockNumbernumber
transactionHashstring
logIndexnumber
timestampstring | number
factoryAddressstring
poolAddressstring
eventstring
actionstring
walletAddressstring
feesstring[]
providerstring
invariantstring
tokenSupplystring
tokenAmountsstring[]
feesNormalizedstring[]
tokenSupplyNormalizedstring
tokenAmountsNormalizedstring []
tokenAddressesstring []
tokenDecimalsnumber[]
tokenSymbolsstring[]
numCoinsnumber

Language
Authorization
Header
Click Try It! to start a request and see the response here!