SmartContract Calls API
Frequently Asked Questions
What is the Smart Contract Calls API?
Query which functions were called on Ethereum contracts, with decoded inputs, gas usage, internal calls, and transaction context.
When should I use Calls vs Events vs Transfers?
Use Calls for function execution traces. Use Events for emitted logs. Use Transfers for token movements. See the Mental Model guide linked on this page.
Can I track new contract deployments?
Yes. Filter EVM.Calls with Call.Create true to list recent contract creation calls.
Can I stream contract calls in real time?
Yes. Convert your query to a GraphQL subscription or use Kafka ethereum.transactions.proto for high-volume monitoring.
Smart Contract Calls API Guide
Before you start: Not sure when to use Calls vs Transfers vs Events vs DexTrades? Read our Mental Model guide to understand which primitive to use for your use case.
This API helps retrieve information about smart contract transactions, including details about the contract function that was called, the input and output parameters, and more. With this data, you can build applications that interact with smart contracts, perform analytics on contract activity, and more.
Recent Smart Contract Calls
This query retrieves the most recent smart contract calls on the Ethereum network, focusing on contract creation calls. It provides comprehensive information about the call details, transaction data, and block information.
Click to expand GraphQL query
{
EVM(dataset: realtime, network: eth) {
Calls(
limit: {count: 10}
orderBy: {descending: Block_Time}
) {
Call {
LogCount
InternalCalls
Create
EnterIndex
ExitIndex
}
Transaction {
Gas
Hash
From
To
Type
Index
}
Block {
Date
}
}
}
}
Recent Smart Contract Creation Calls
This GraphQL query fetches data from the "eth" network about the 10 most recent calls made in Ethereum that were contract creation calls.
You can run the query here
query MyQuery {
EVM(dataset: realtime, network: eth) {
Calls(
limit: {count: 10}
orderBy: {descending: Block_Time}
where: {Call: {Create: true}}
) {
Call {
LogCount
InternalCalls
Create
EnterIndex
ExitIndex
}
Transaction {
Gas
Hash
From
To
Type
Index
}
Block {
Date
}
}
}
}