crosschain.agents.erc8004_events table contains all decoded ERC-8004 protocol events across 6 mainnets. Each row is a single event — registrations, metadata updates, feedback submissions, revocations, and responses are all captured in a unified schema with event-specific fields stored in the extra_fields VARIANT column.
Per-chain tables (e.g., ethereum.agents.erc8004_events) share the same schema. See the protocol overview for the full list.
Table Details
| Property | Value |
|---|---|
| Table Name | crosschain.agents.erc8004_events |
| Table Status | Production-Ready |
| Unique Key | transaction_hash, log_index |
| Clustering Key(s) | to_date(block_timestamp), event_name |
Table Columns
| Column Name | Data Type | Description |
|---|---|---|
| event_name | VARCHAR | Event type: Registered, URIUpdated, MetadataSet, NewFeedback, FeedbackRevoked, ResponseAppended |
| agent_id | VARCHAR | Numeric agent NFT ID. |
| chain | VARCHAR | Network name (ethereum, base, polygon, scroll, bsc, gnosis). |
| registry_type | VARCHAR | Registry type: identity or reputation. |
| registry_address | VARCHAR | Registry contract address. |
| registry_name | VARCHAR | Registry name: IdentityRegistry or ReputationRegistry. |
| is_official | BOOLEAN | Whether the event is from an official ERC-8004 registry. |
| extra_fields | VARIANT | Event-specific decoded parameters as JSON (see below). |
| block_timestamp | TIMESTAMP_NTZ(9) | The timestamp when the event occurred. |
| transaction_hash | VARCHAR | The transaction hash containing this event. |
| transaction_from_address | VARCHAR | The address of the transaction signer. |
| transaction_to_address | VARCHAR | The address of the transaction recipient. |
| block_number | NUMBER(38,0) | The block number containing this event. |
| block_hash | VARCHAR | The hash of the block containing this event. |
| log_index | NUMBER(38,0) | The position of the event log within the transaction. |
| unique_id | VARCHAR | Unique identifier for the event. |
| _created_at | TIMESTAMP_NTZ(9) | The timestamp when the record was created. |
| _updated_at | TIMESTAMP_NTZ(9) | The timestamp when the record was last updated. |
extra_fields by Event Type
| Event | Key | Type | Description |
|---|---|---|---|
| Registered | creator | STRING | Address that registered the agent. |
| Registered | wallet | STRING | Agent’s wallet address. |
| URIUpdated | uri | STRING | New metadata URI. |
| MetadataSet | key | STRING | Metadata key. |
| MetadataSet | value | STRING | Metadata value. |
| NewFeedback | clientAddress | STRING | Address of the rater. |
| NewFeedback | value | INT | Feedback score (0-100). |
| NewFeedback | valueDecimals | INT | Decimal places for score normalization. |
| NewFeedback | tag1 | STRING | Primary feedback tag. |
| NewFeedback | tag2 | STRING | Secondary feedback tag. |
| NewFeedback | feedbackURI | STRING | URI containing feedback details (often base64-encoded JSON). |
| NewFeedback | feedbackHash | STRING | Hash of feedback content. |
| NewFeedback | feedbackIndex | INT | Index of feedback for this agent. |
| NewFeedback | endpoint | STRING | API endpoint being rated. |
| FeedbackRevoked | clientAddress | STRING | Address of the rater who revoked. |
| FeedbackRevoked | feedbackIndex | INT | Index of revoked feedback. |
| ResponseAppended | responseURI | STRING | URI of agent’s response to feedback. |