Table description
Extrinsics (aka “transactions”) normally contain a signature, some data to describe if the extrinsic has passed some validity checks and a reference to the pallet and call that it is intended for. Extrinsics may be signed or unsigned. Some extrinsics have a complex structure, e.g. when using proxy or utility pallets, resulting in the top-level call initiating other calls involving other pallets. Common queries on theextrinsics table (e.g. polkadot.extrinsics) will typically filter on block_time, section and method and extract JSON encoded information in data or decoded_data. In many cases, an initial query on the extrinsics table is best developed on the calls table instead to properly capture how users often use proxy and utility constructs to interact with the Substrate chain.
Table Schema
| Column | Type | Description |
|---|---|---|
year | INTEGER | Calendar year of the block (partition column) |
month | INTEGER | Calendar month of the block (partition column) |
section | VARCHAR | The pallet (module) of the top-level call (e.g. Balances, Staking) |
method | VARCHAR | The method name within the pallet (e.g. transferKeepAlive, nominate) |
block_time | TIMESTAMP | The timestamp of the block containing this extrinsic |
block_number | BIGINT | The sequential number of the block containing this extrinsic |
extrinsic_id | VARCHAR | Unique identifier for this extrinsic (format: blockNumber-extrinsicIndex) |
hash | VARBINARY | Hash of this extrinsic |
block_hash | VARBINARY | Hash of the block containing this extrinsic |
lifetime | VARCHAR | Validity period of the extrinsic (mortal/immortal era) |
params | VARCHAR | JSON-encoded parameters of the top-level call |
fee | DOUBLE | Transaction fee paid for this extrinsic |
weight | BIGINT | Execution weight consumed by this extrinsic |
signed | BOOLEAN | Whether this extrinsic includes a cryptographic signature |
signer_ss58 | VARCHAR | SS58-encoded address of the signer |
signer_pub_key | VARBINARY | Public key of the signer |
status | BOOLEAN | Whether the extrinsic executed successfully (true) or failed (false) |
updated_at | TIMESTAMP | When this record was last updated in the database |
ingested_at | TIMESTAMP | When this record was first ingested into the database |