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.
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"
}
property | type |
---|---|
action | string |
event | string |
timestamp | string | number |
blockNumber | number |
transactionHash | string |
logIndex | number |
poolAddress | string |
token0 | string |
token1 | string |
sender | string |
amount0In | string |
amount1In | string |
amount0Out | string |
amount1Out | string |
amount0InNormalized | string |
amount1InNormalized | string |
amount0OutNormalized | string |
amount1OutNormalized | string |
to | string |
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"
}
property | type |
---|---|
blockNumber | number |
transactionHash | string |
logIndex | number |
timestamp | string | number |
factoryAddress | string |
poolAddress | string |
event | string |
action | string |
walletAddress | string |
tick | string |
sender | string |
amount0 | string |
amount1 | string |
liquidity | string |
recipient | string |
sqrtPriceX96 | string |
amount0Normalized | string |
amount1Normalized | string |
token0Address | string |
token1Address | string |
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"
}
property | type |
---|---|
blockNumber | number |
transactionHash | string |
logIndex | number |
timestamp | string | number |
factoryAddress | string |
poolAddress | string |
event | string |
action | string |
walletAddress | string |
owner | string |
amount | string |
sender | string |
amount0 | string |
amount1 | string |
tickLower | string |
tickUpper | string |
amount0Normalized | string |
amount1Normalized | string |
token0Address | string |
token1Address | string |
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.
Sushiswap Actions |
---|
Swap |
AddLiquidity |
RemoveLiquidity |
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"
}
property | type |
---|---|
blockNumber | integer |
transactionHash | string |
logIndex | number |
timestamp | string | number |
factoryAddress | string |
poolAddress | string |
event | string |
action | string |
walletAddress | string |
to | string |
sender | string |
amount0In | string |
amount1In | string |
amount0Out | string |
amount1Out | string |
amount0InNormalized | string |
amount1InNormalized | string |
amount0OutNormalized | string |
amount1OutNormalized | string |
token0Address | string |
token1Address | string |
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"
}
property | type |
---|---|
blockNumber | integer |
transactionHash | string |
logIndex | number |
timestamp | string | number |
factoryAddress | string |
poolAddress | string |
event | string |
action | string |
walletAddress | string |
sender | string |
amount0 | string |
amount1 | string |
amount0Normalized | string |
amount1Normalized | string |
token0Address | string |
token1Address | string |
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"
}
property | type |
---|---|
blockNumber | integer |
transactionHash | string |
logIndex | number |
timestamp | string | number |
factoryAddress | string |
poolAddress | string |
event | string |
action | string |
walletAddress | string |
to | string |
sender | string |
amount0 | string |
amount1 | string |
amount0Normalized | string |
amount1Normalized | string |
token0Address | string |
token1Address | string |
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.
Curve Actions |
---|
Swap |
AddLiquidity |
RemoveLiquidity |
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"
}
property | type |
---|---|
blockNumber | number |
transactionHash | string |
logIndex | number |
timestamp | string | number |
factoryAddress | string |
poolAddress | string |
event | string |
action | string |
walletAddress | string |
buyer | string |
tokenSoldAmount | string |
tokenBoughtAmount | string |
tokenAddresses | string [] |
tokenDecimals | number[] |
tokenSymbols | string[] |
numCoins | number |
tokenSoldName | string |
tokenBoughtName | string |
tokenSoldSymbol | string |
tokenBoughtSymbol | string |
tokenSoldAmountNormalized | string |
tokenBoughtAmountNormalized | string |
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
}
property | type |
---|---|
blockNumber | number |
transactionHash | string |
logIndex | number |
timestamp | string | number |
factoryAddress | string |
poolAddress | string |
event | string |
action | string |
walletAddress | string |
fees | string[] |
provider | string |
invariant | string |
tokenSupply | string |
tokenAmounts | string[] |
feesNormalized | string[] |
tokenSupplyNormalized | string |
tokenAmountsNormalized | string [] |
tokenAddresses | string [] |
tokenDecimals | number[] |
tokenSymbols | string[] |
numCoins | number |
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(...)
property | type |
---|---|
blockNumber | number |
transactionHash | string |
logIndex | number |
timestamp | string | number |
factoryAddress | string |
poolAddress | string |
event | string |
action | string |
walletAddress | string |
fees | string[] |
provider | string |
tokenSupply | string |
tokenAmounts | string[] |
feesNormalized | string[] |
tokenSupplyNormalized | string |
tokenAmountsNormalized | string [] |
tokenAddresses | string [] |
tokenDecimals | number[] |
tokenSymbols | string[] |
numCoins | number |
RemoveLiquidityOne(...)
property | type |
---|---|
blockNumber | number |
transactionHash | string |
logIndex | number |
timestamp | string | number |
factoryAddress | string |
poolAddress | string |
event | string |
action | string |
walletAddress | string |
provider | string |
tokenAmount | string |
tokenAmountNormalized | string |
tokenAddresses | string [] |
tokenDecimals | number[] |
tokenSymbols | string[] |
numCoins | number |
redeemedTokenName | string |
redeemedTokenSymbol | string |
redeemedTokenAddress | string |
redeemedTokenAmount | string |
redeemedTokenAmountNormalized | string |
RemoveLiquidityImbalance(...)
property | type |
---|---|
blockNumber | number |
transactionHash | string |
logIndex | number |
timestamp | string | number |
factoryAddress | string |
poolAddress | string |
event | string |
action | string |
walletAddress | string |
fees | string[] |
provider | string |
invariant | string |
tokenSupply | string |
tokenAmounts | string[] |
feesNormalized | string[] |
tokenSupplyNormalized | string |
tokenAmountsNormalized | string [] |
tokenAddresses | string [] |
tokenDecimals | number[] |
tokenSymbols | string[] |
numCoins | number |