chain(query) — Chain scope: 'all' (blended cross-chain rollup, the default) or a single chain.
limit(query, limit) — The maximum number of top protocols to return.
offset(query, offset) — Pagination offset.
GET
/api/v1/transactions
Recent Transactions Sample
limit(query, limit) — The maximum number of recent transactions to return.
offset(query, offset) — Pagination offset.
chain(query) — Blockchain to query (ethereum, base, arbitrum, optimism)
dex_project(query) — Filter by DEX project name.
aggregator(query) — Filter by aggregator name.
token_sold(query) — Filter by token sold symbol.
token_bought(query) — Filter by token bought symbol.
start_timestamp(query) — Filter by start timestamp (Unix).
end_timestamp(query) — Filter by end timestamp (Unix).
succeeded(query) — Filter by transaction success status.
GET
/api/v1/contract/{address}/profile
Get Contract On-Chain Profile
address(path, required)
chain(query) — Blockchain network to query.
GET
/api/v1/contract/{address}/attribution
Get Address Attribution Breakdown
address(path, required)
chain(query) — Filter to a single blockchain (ethereum, base, arbitrum, optimism).
GET
/api/v1/tx/{tx_hash}
Per-Transaction Attribution
tx_hash(path, required)
chain(query) — Blockchain to query.
deep(query) — Use internal call traces to refine the classification (catches aggregators that sit as intermediates, e.g. a router reached through a separate settlement contract, and runs the calldata-suffix test per sub-call). Costs more Alchemy CU; trace support is strongest on Ethereum.
price(query) — Add a best-effort, APPROXIMATE USD trade size (dominant priced leg via the free DefiLlama spot-price API). Adds latency; never a settlement figure.
GET
/api/v1/gas
Get Multi-Chain Gas Prices
GET
/api/v1/labels
Auto-Discovered Contract Labels
chain(query) — Filter by blockchain (ethereum, base, arbitrum, optimism).
limit(query, limit) — Maximum number of labels to return.
offset(query, offset) — Pagination offset.
GET
/api/v1/attribution
Bulk Cross-Frontend Attribution
chain(query) — Filter by blockchain (ethereum, base, arbitrum, optimism).
project(query) — Filter by project or contract name (e.g., '1inch').
limit(query, limit) — Maximum number of records to return.
offset(query, offset) — Pagination offset.
GET
/api/v1/mev/sandwiches
Detected Sandwich Attacks
chain(query) — Filter by blockchain (ethereum, base, arbitrum, optimism).
project(query) — Filter by DEX project name (e.g., 'uniswap').
min_victim_volume_usd(query) — Only return events where the victim trade was at least this size (USD).
limit(query, limit) — Maximum number of events to return.
offset(query, offset) — Pagination offset.
GET
/api/v1/revert-rates
Aggregator Revert Rates
chain(query) — Filter by blockchain (ethereum, base, arbitrum, optimism).
project(query) — Filter by aggregator/project name.
revert_comparable(query) — Set true to return only venues whose revert rate may legitimately be ranked against each other — the `router` venues, where the user submits the swap so a failure is a reverted user transaction. Excludes batch-auction (CoW) and intent (1inch Fusion) venues, whose orders never reach the chain when they fail and whose on-chain revert rate is therefore structurally ~0.
limit(query, limit) — Maximum number of rows to return.
offset(query, offset) — Pagination offset.
GET
/api/v1/flows
Interface Routing Flows
source(query) — Filter by source interface (substring match).
target(query) — Filter by target interface (substring match).
limit(query, limit) — Maximum number of edges to return.
offset(query, offset) — Pagination offset.
GET
/api/v1/keys
How to get a free API key
POST
/api/v1/keys
Get a free API key (higher rate limits)
13 endpoints auto-detected
curl -X GET \
"https://cleartracedata.com/docs/api/v1/protocols"