Event Types

These are the event types you can configure for your webhook:

Configuration Event TypesEvent Type LabelsDescription
Wallet Activitywallet_activityThis event is triggered when any of the transfer type events (e.g. ERC20, ERC721, Native) occurs on the blockchain.
Smart Contract Activitysmart_contract_activityThis event is triggered when any of the smart contract type events occurs from the smart contract addresses configured. You can check the supported smart contracts here. You can also upload your own smart contract ABI.

Note that these activity based event types takes a list of addresses as input, with a limit of 1000 addresses per webhook configuration.

Additionally, we support defining the ERC20 and ERC721 as an event type configuration.

Although you can configure wallet_activity or smart_contract_activity as an event type, this is not a type you’ll receive on your webhook. The following table shows the supported webhook event types that you might receive:

Event TypesEvent Type LabelsDescription
ERC20 Transferserc20_transferThis event is triggered when an ERC20 token transfer occurs on the blockchain.
ERC721 Transferserc721_transferThis event is triggered when an ERC721 token (NFT) is transferred.
ERC1155 Transfers Singleerc1155_transfer_singleThis event is triggered when an ERC1155 token is transferred.
ERC1155 Transfers Batcherc1155_transfer_batchThis event is triggered when ERC1155 tokens are transferred in batch.
TransactionstransactionThis event is triggered when a native blockchain token is transferred.

Please refer to the supported networks page to view the networks available for webhooks.

If you’re interested in tracking additional event types, please reach out to us in the #onchain-data channel of the CDP Discord for assistance.

ERC20 Transfers

Sample Event
{
  "webhookId": "66b2ac80e8abf9381a162137",
  "eventType": "erc20_transfer",
  "network": "base-mainnet",
  "blockHash": "0x60036a0f0454582f60cab6f98990cdcca519b87dd63d5ec01724ce2337129abc",
  "blockNumber": "18452087",
  "blockTime": "2024-08-15T03:45:21.000Z",
  "transactionHash": "0x7f7bc473ee2b94792f033f4d12d0d4d057dab0b5b4f32cd058ad95ee652af948",
  "transactionIndex": "16",
  "logIndex": "46",
  "contractAddress": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
  "from": "0xbb8b2da5db110ad625270061e81987ce342677c3",
  "to": "0xfb2139331532e3ee59777fbbcb14af674f3fd671",
  "value": "46737096"
}
Event Fields
FieldDescription
webhookIdUnique identifier for the webhook that triggered this event.
eventTypeType of event, in this case, an ERC-20 token transfer.
networkBlockchain network where the event occurred, e.g., base-mainnet.
blockHashHash of the block containing the transaction.
blockNumberNumber of the block containing the transaction.
blockTimeTimestamp when the block was mined.
transactionHashHash of the transaction that triggered the event.
transactionIndexPosition of the transaction within the block.
logIndexPosition of the event log within the transaction.
contractAddressAddress of the ERC-20 token contract.
fromAddress of the sender in the token transfer.
toAddress of the recipient in the token transfer.
valueAmount of tokens transferred, typically in the smallest unit (e.g., wei for Ethereum).

ERC721 Transfers

Sample Event
{
  "webhookId": "66bd79d0b9c200eae1a43165",
  "eventType": "erc721_transfer",
  "network": "base-mainnet",
  "blockHash": "0x66efeaf6eb207b040eb82de0153e3349f95c048075ba38904bdc4cff1524c656",
  "blockNumber": "18452423",
  "blockTime": "2024-08-15T03:56:33.000Z",
  "transactionHash": "0x940db3006449456b386397ab42114134d745d2876196226444601670f3e99db8",
  "transactionIndex": "65",
  "logIndex": "351",
  "contractAddress": "0xdaae4a2834cae00ae3af763df9d55e6c91f7a6bc",
  "from": "0x0000000000000000000000000000000000000000",
  "to": "0x0844b27efc14059029110d1b2aa6fdcd4536e60c",
  "tokenId": "350746"
}
Event Fields
FieldDescription
webhookIdUnique identifier for the webhook that triggered this event.
eventTypeType of event, in this case, an ERC-721 token transfer.
networkBlockchain network where the event occurred, e.g., base-mainnet.
blockHashHash of the block containing the transaction.
blockNumberNumber of the block containing the transaction.
blockTimeTimestamp when the block was mined.
transactionHashHash of the transaction that triggered the event.
transactionIndexPosition of the transaction within the block.
logIndexPosition of the event log within the transaction.
contractAddressAddress of the ERC-721 token contract.
fromAddress of the sender in the token transfer.
toAddress of the recipient in the token transfer.
tokenIdUnique identifier of the NFT being transferred.

ERC1155 Transfers Single

Sample Event
{
  "webhookId": "66bd79d0b9c200eae1a43165",
  "eventType": "erc1155_transfer_single",
  "network": "base-mainnet",
  "contractAddress": "0xab39a8b6801b0b6aa20e9a1953c861ec0a57d175",
  "blockHash": "0x351bd04dfe350fca186cd47080220283a75d07018ed251748a4ad19e7f327caf",
  "blockNumber": 20305354,
  "blockTime": "2024-09-27T21:16:40.000Z",
  "transactionHash": "0xa02b282ecccca77febe1abbbd0e6b13bbf2ff30b36d53e968cb4d2399f22d904",
  "transactionIndex": 63,
  "logIndex": 221,
  "id": 30014,
  "value": 1,
  "operator": "0xd7def291ec916b2e25562711dd3161ea2317638f",
  "from": "0x10db590ffa5b7bc46cffbd436180e01b6c5c0af6",
  "to": "0x4a9ab171e31daff484c70921f2f5e89a8fe12f59",
}
Event Fields
FieldDescription
webhookIdUnique identifier for the webhook that triggered this event.
eventTypeType of event, in this case, an ERC-721 token transfer.
networkBlockchain network where the event occurred, e.g., base-mainnet.
contractAddressAddress of the ERC-721 token contract.
blockHashHash of the block containing the transaction.
blockNumberNumber of the block containing the transaction.
blockTimeTimestamp when the block was mined.
transactionHashHash of the transaction that triggered the event.
transactionIndexPosition of the transaction within the block.
logIndexPosition of the event log within the transaction.
idUnique identifier of the ERC1155 token being transferred.
valueAmount of tokens transferred, typically in the smallest unit (e.g., wei for Ethereum).
operatorThe address that initiated the transfer. This can be the same as the from address if the transfer is initiated directly by the token holder. Alternatively, it could be a smart contract or another address that has been granted permission to perform transfers on behalf of the from address.
fromThe address that currently owns the tokens being transferred.
toAddress of the recipient in the token transfer.

ERC1155 Transfers Batch

Sample Event
{
  "webhookId": "66bd79d0b9c200eae1a43165",
  "eventType": "erc1155_transfer_batch",
  "network": "base-mainnet",
  "contractAddress": "0xab39a8b6801b0b6aa20e9a1953c861ec0a57d175",
  "blockHash": "0x351bd04dfe350fca186cd47080220283a75d07018ed251748a4ad19e7f327caf",
  "blockNumber": 20305354,
  "blockTime": "2024-09-27T21:16:40.000Z",
  "transactionHash": "0xa02b282ecccca77febe1abbbd0e6b13bbf2ff30b36d53e968cb4d2399f22d904",
  "transactionIndex": 63,
  "logIndex": 221,
  "ids": [30014, 30015],
  "values": [1, 1],
  "operator": "0xd7def291ec916b2e25562711dd3161ea2317638f",
  "from": "0x10db590ffa5b7bc46cffbd436180e01b6c5c0af6",
  "to": "0x4a9ab171e31daff484c70921f2f5e89a8fe12f59",
}
Event Fields
FieldDescription
webhookIdUnique identifier for the webhook that triggered this event.
eventTypeType of event, in this case, an ERC-721 token transfer.
networkBlockchain network where the event occurred, e.g., base-mainnet.
contractAddressAddress of the ERC-721 token contract.
blockHashHash of the block containing the transaction.
blockNumberNumber of the block containing the transaction.
blockTimeTimestamp when the block was mined.
transactionHashHash of the transaction that triggered the event.
transactionIndexPosition of the transaction within the block.
logIndexPosition of the event log within the transaction.
idsArray of unique identifier of the ERC1155 tokens being transferred.
valuesAmount of tokens transferred, typically in the smallest unit (e.g., wei for Ethereum).
operatorThe address that initiated the transfer. This can be the same as the from address if the transfer is initiated directly by the token holder. Alternatively, it could be a smart contract or another address that has been granted permission to perform transfers on behalf of the from address.
fromThe address that currently owns the tokens being transferred.
toAddress of the recipient in the token transfer.

Transactions

Sample Event
{
  "webhookId": "66bd79d0b9c200eae1a43165",
  "eventType": "transaction",
  "network": "base-mainnet",
  "transactionHash": "0x940db3006449456b386397ab42114134d745d2876196226444601670f3e99db8",
  "transactionIndex": "65",
  "blockHash": "0x351bd04dfe350fca186cd47080220283a75d07018ed251748a4ad19e7f327caf",
  "blockNumber": 20305354,
  "blockTime": "2024-09-27T21:16:40.000Z",
  "from": "0x10db590ffa5b7bc46cffbd436180e01b6c5c0af6",
  "to": "0x4a9ab171e31daff484c70921f2f5e89a8fe12f59",
  "nonce": 300487,
  "value": 0,
  "valueString": "0",
  "gas": 40000,
  "gasPrice": 52298,
  "input": "0x0101491057b2af47aa7757bc5d8611a6ac25417f6ad3d003020000000000000000000000000000000"
  "transactionType": 2,
  "maxFeePerGas": 300,
  "maxPriorityFeePerGas": 19922,
  "priorityFeePerGas": 19938,
  "cumulativeGasUsed": 12,
  "gasUsed": 1,
  "effectiveGasPrice": 23,
  "contractAddress": "0xab39a8b6801b0b6aa20e9a1953c861ec0a57d175",
  "logsBloom": "0x0000000000000000000000000000000000000000000000",
  "root": "",
  "type": 2,
  "status": 1,
  "l1GasUsed": 3456,
  "l1GasPrice": 2312310923,
  "l1Fee": 1231,
  "l1FeeScalar": "",
}
Event Fields
FieldDescription
webhookIdUnique identifier for the webhook that triggered this event.
eventTypeType of event, in this case, a native token (ether) transfer on base.
networkBlockchain network where the event occurred, e.g., base-mainnet.
transactionHashHash of the transaction that triggered the event.
transactionIndexPosition of the transaction within the block.
blockHashHash of the block containing the transaction.
blockNumberNumber of the block containing the transaction.
blockTimeTimestamp when the block was mined.
fromThe address that currently owns the tokens being transferred.
toAddress of the recipient in the token transfer.
noncea number that represents the count of transactions sent from a given address
valueAmount of tokens transferred, typically in the smallest unit (e.g., wei for Ethereum).
valueStringString representation of value
gasGas fee paid to execute this transaction
gasPriceThe amount of Ether you are willing to pay per unit of computational work
inputAn optional field used to send additional information to smart contracts
transactionTypeTransaction type specifies the format and features of the transaction. Common types include Legacy (Type 0) with a single gas price, EIP-2930 (Type 1) for access lists, and EIP-1559 (Type 2)
maxFeePerGasMaximum amount a sender is willing to pay per gas unit
maxPriorityFeePerGasMaximum tip the sender is willing to offer to miners/validators to prioritize their transaction
priorityFeePerGasTip the sender offers to miners/validators to prioritize their transaction
cumulativeGasUsedThe total amount of gas used by all transactions in a block up to and including the current transaction
gasUsedActual amount of gas consumed to execute that specific transaction
effectiveGasPriceActual gas price paid per unit of gas
contractAddressAddress of the ERC-721 token contract.
logsBloomA compressed representation of all logs generated in a block
rootThe state root hash of the blockchain’s global state after the transaction is processed
typethe format and features of the transaction. Common types include Legacy (Type 0) with a single gas price, EIP-2930 (Type 1) for access lists, and EIP-1559 (Type 2)
statusIndicates whether the transaction was successful (1) or failed (0) after it is processed
l1GasUsedThe amount of Layer 1 (Ethereum mainnet) gas consumed for posting transaction data to the main chain. It’s a measure of the cost for L2 to L1 communication
l1GasPriceCost per gas unit on the Ethereum mainnet (Layer 1) for posting transaction data from Layer 2
l1FeeTotal cost paid to cover Layer 1 (Ethereum mainnet) gas fees for posting and finalizing transaction data from Layer 2
l1FeeScalarA multiplier used to adjust the base L1 fee to account for additional overhead or to incentivize certain behaviors

Smart Contract Activity

Sample Event
{
  "webhookId":        "66bd79d0b9c200eae1a43165",
  "eventType":        "smart_contract_event",
  "network":          "base-mainnet",
  "projectName":      "public",
  "contractName":     "AERO",
  "func":             "Transfer",
  "sig":              "Transfer(address,address,uint256)",
  "fourBytes":        "0xddf252ad",
  "contractAddress":  "0x940181a94a35a4569e4529a3cdfb74e38fd98631",
  "blockTime":        "2024-11-19T23:47:11.000Z",
  "blockNumber":      "2253443",
  "blockHash":        "0xdda77af09629538299cb8d8b553842bb49174f2be007ff307af67c822117784f",
  "transactionHash":  "0x33ccc83d172ab4dc0f2540b24ab6b290a21806126f5761610a3f8e3f87915cb1",
  "transactionIndex": 123,
  "logIndex":         131,
  "from":             "0x042c37762d1d126bc61eac2f5ceb7a96318f5db9",
  "to":               "0x6cdcb1c4a4d1c3c6d054b27ac5b77e89eafb971d",
  "value":            13409101014,
}
Event Fields
FieldDescription
webhookIdUnique identifier for the webhook that triggered this event.
eventTypeType of event, in this case, a smart contract activity on base.
networkBlockchain network where the event occurred, e.g., base-mainnet.
projectNameName of the project associated with the event.
contractNameName of the contract associated with the event.
funcName of the function associated with the event.
sigFunction signature that is associated with the event.
fourBytesFirst four bytes of data sent in a transaction, which acts as a unique identifier for the specific function you want to call within the contract.
contractAddressAddress of the contract.
blockTimeTimestamp when the block was mined.
blockNumberNumber of the block containing the transaction.
blockHashHash of the block containing the transaction.
transactionHashHash of the transaction that triggered the event.
transactionIndexPosition of the transaction within the block.
logIndexIdentifier of a unique event log
fromThe from address of a smart contract call.
toThe to address of a smart contract call.
valueAmount of tokens transferred, typically in the smallest unit (e.g., wei for Ethereum).