{"openapi":"3.1.0","info":{"title":"CoinVerum Ethereum DEX Data API","version":"1.0.0","description":"Public read-only JSON API for Ethereum mainnet token prices, liquidity pools, indexed DEX volume, trades and observed active addresses. Values are time-sensitive. See the methodology before interpreting or citing metrics.","termsOfService":"https://coinverum.com/terms","contact":{"name":"CoinVerum","url":"https://coinverum.com/contact","email":"contact@coinverum.com"}},"servers":[{"url":"https://api.coinverum.com","description":"Production"}],"externalDocs":{"description":"Methodology, definitions and limitations","url":"https://coinverum.com/methodology"},"tags":[{"name":"Discovery","description":"Service and schema discovery."},{"name":"Tokens","description":"Ethereum token market data."},{"name":"Pools","description":"Qualifying DEX liquidity pools."},{"name":"DEXes","description":"Venue-level Ethereum DEX analytics."}],"paths":{"/health":{"get":{"tags":["Discovery"],"operationId":"getHealth","summary":"Check API availability","responses":{"200":{"description":"Healthy service","content":{"application/json":{"schema":{"type":"object","required":["status","timestamp","uptime"],"properties":{"status":{"type":"string","const":"ok"},"timestamp":{"type":"string","format":"date-time"},"uptime":{"type":"number","description":"Process uptime in seconds."}}}}}}}}},"/tokens":{"get":{"tags":["Tokens"],"operationId":"listTokens","summary":"List tracked tokens ranked by qualifying liquidity","parameters":[{"name":"category","in":"query","required":false,"schema":{"type":"string","enum":["stablecoin","defi","rwa","liquid-staking","meme","ai"]}}],"responses":{"200":{"description":"Token market records","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Token"}}}}}}}},"/tokens/{address}":{"get":{"tags":["Tokens"],"operationId":"getToken","summary":"Get a token market record","parameters":[{"$ref":"#/components/parameters/Address"}],"responses":{"200":{"description":"Token market record","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Token"}}}},"404":{"description":"Token not found"}}}},"/tokens/{address}/pools":{"get":{"tags":["Tokens","Pools"],"operationId":"listTokenPools","summary":"List qualifying pools containing a token","parameters":[{"$ref":"#/components/parameters/Address"}],"responses":{"200":{"description":"Liquidity pools","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Pool"}}}}}}}},"/tokens/{address}/candles":{"get":{"tags":["Tokens"],"operationId":"listTokenCandles","summary":"Get token OHLC candles","parameters":[{"$ref":"#/components/parameters/Address"},{"name":"resolution","in":"query","schema":{"type":"string","enum":["1m","5m","1h","1d"],"default":"1h"}},{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":500,"default":200}}],"responses":{"200":{"description":"Chronological candles","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"open_time":{"type":"number","description":"Unix milliseconds."},"open":{"type":"number"},"high":{"type":"number"},"low":{"type":"number"},"close":{"type":"number"},"volume_usd":{"type":"number"}}}}}}}}}},"/tokens/{address}/depth":{"get":{"tags":["Tokens","Pools"],"operationId":"getTokenDepth","summary":"Get simulated execution depth","parameters":[{"$ref":"#/components/parameters/Address"}],"responses":{"200":{"description":"Price-impact simulation levels","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"}}}}}}}},"/search":{"get":{"tags":["Tokens"],"operationId":"searchTokens","summary":"Search tokens by symbol, name or address","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":1}}],"responses":{"200":{"description":"Matching tokens","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"}}}}}}}},"/pools":{"get":{"tags":["Pools"],"operationId":"listPools","summary":"List qualifying pools ranked by TVL","parameters":[{"name":"page","in":"query","schema":{"type":"integer","minimum":1,"default":1}},{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":100,"default":50}},{"name":"dex","in":"query","schema":{"type":"string","examples":["uniswap_v3","uniswap_v2","pancakeswap_v3","sushiswap_v3","curve"]}}],"responses":{"200":{"description":"Liquidity pools","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Pool"}}}}}}}},"/dexes":{"get":{"tags":["DEXes"],"operationId":"listDexes","summary":"Compare supported Ethereum DEX venues","responses":{"200":{"description":"DEX records and aggregate totals","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/dexes/{dex}":{"get":{"tags":["DEXes"],"operationId":"getDex","summary":"Get venue metrics, history, versions and top pools","parameters":[{"name":"dex","in":"path","required":true,"schema":{"type":"string","enum":["uniswap","pancakeswap","sushiswap","curve"]}},{"name":"days","in":"query","schema":{"type":"integer","enum":[7,30],"default":30}}],"responses":{"200":{"description":"DEX analytics","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"DEX not found"}}}}},"components":{"parameters":{"Address":{"name":"address","in":"path","required":true,"description":"Lowercase Ethereum token contract address.","schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"}}},"schemas":{"Token":{"type":"object","required":["address","symbol","name","decimals","price","volume_24h","liquidity_usd","pool_count"],"properties":{"address":{"type":"string"},"symbol":{"type":"string"},"name":{"type":"string"},"decimals":{"type":"integer"},"updated_at":{"type":["string","null"],"format":"date-time"},"price":{"type":"number","description":"Latest valid observed USD swap price."},"change_24h":{"type":["number","null"],"description":"Percentage change; null when no valid baseline exists."},"volume_24h":{"type":"number"},"liquidity_usd":{"type":"number"},"pool_count":{"type":"integer"}}},"Pool":{"type":"object","required":["address","dex","token0","token1","token0_symbol","token1_symbol","tvl_usd"],"properties":{"address":{"type":"string"},"dex":{"type":"string"},"token0":{"type":"string"},"token1":{"type":"string"},"token0_symbol":{"type":"string"},"token1_symbol":{"type":"string"},"fee_tier":{"type":["number","null"]},"tvl_usd":{"type":"number"},"last_price":{"type":["number","null"]},"updated_at":{"type":["string","null"],"format":"date-time"}}}}}}