> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dune.com/llms.txt
> Use this file to discover all available pages before exploring further.

# polkadot.extrinsics

> Description of Substrate extrinsics table on Dune.

export const TableSample = ({tableName, tableSchema}) => <>
    <div className="hidden dark:block">
      <iframe src={`https://dune.com/embeds/3419983/5785629?table_schema_t6f0df=${tableSchema}&table_name_t6f0df=${tableName}&darkMode=true`} style={{
  width: '100%',
  height: '500px',
  border: 'none',
  marginTop: '10px'
}} />
    </div>
    <div className="dark:hidden">
      <iframe src={`https://dune.com/embeds/3419983/5785629?table_schema_t6f0df=${tableSchema}&table_name_t6f0df=${tableName}`} style={{
  width: '100%',
  height: '500px',
  border: 'none',
  marginTop: '10px'
}} />
    </div>
  </>;

## 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 the `extrinsics` 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 |

## Table Sample

<TableSample tableSchema="polkadot" tableName="extrinsics" />


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.