{
  "components": {
    "schemas": {
      "Account": {
        "additionalProperties": false,
        "description": "Account struct.",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "creation_op_hash": {
            "$ref": "#/components/schemas/FullHashNullable"
          },
          "creation_timestamp": {
            "$ref": "#/components/schemas/TimestampNullable"
          },
          "creation_transaction_hash": {
            "$ref": "#/components/schemas/FullHashNullable"
          },
          "factory": {
            "$ref": "#/components/schemas/AddressNullable"
          },
          "total_ops": {
            "minimum": 0,
            "type": "integer"
          }
        },
        "required": [
          "address",
          "creation_op_hash",
          "creation_transaction_hash",
          "creation_timestamp",
          "factory",
          "total_ops"
        ],
        "title": "Account",
        "type": "object"
      },
      "AccountAbstractionStatus": {
        "additionalProperties": {
          "additionalProperties": false,
          "properties": {
            "enabled": {
              "type": "boolean"
            },
            "live": {
              "type": "boolean"
            },
            "past_db_logs_indexing_finished": {
              "type": "boolean"
            },
            "past_rpc_logs_indexing_finished": {
              "type": "boolean"
            }
          },
          "type": "object"
        },
        "description": "Status struct.",
        "properties": {
          "finished_past_indexing": {
            "type": "boolean"
          }
        },
        "required": [
          "finished_past_indexing"
        ],
        "title": "AccountAbstractionStatus",
        "type": "object"
      },
      "Address": {
        "additionalProperties": false,
        "description": "Address",
        "properties": {
          "ens_domain_name": {
            "description": "ENS domain name associated with the address",
            "nullable": true,
            "type": "string"
          },
          "hash": {
            "$ref": "#/components/schemas/AddressHash"
          },
          "implementations": {
            "description": "Implementations linked with the contract",
            "items": {
              "$ref": "#/components/schemas/Implementation"
            },
            "type": "array"
          },
          "is_contract": {
            "description": "Has address contract code?",
            "nullable": true,
            "type": "boolean"
          },
          "is_scam": {
            "description": "Has address scam badge?",
            "type": "boolean"
          },
          "is_verified": {
            "description": "Has address associated source code?",
            "nullable": true,
            "type": "boolean"
          },
          "metadata": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Metadata"
              }
            ],
            "nullable": true
          },
          "name": {
            "description": "Name associated with the address",
            "nullable": true,
            "type": "string"
          },
          "private_tags": {
            "description": "Private tags associated with the address",
            "items": {
              "$ref": "#/components/schemas/Tag"
            },
            "type": "array"
          },
          "proxy_type": {
            "$ref": "#/components/schemas/ProxyType"
          },
          "public_tags": {
            "description": "Public tags associated with the address",
            "items": {
              "$ref": "#/components/schemas/Tag"
            },
            "type": "array"
          },
          "reputation": {
            "description": "Reputation of the address",
            "enum": [
              "ok",
              "scam"
            ],
            "type": "string"
          },
          "watchlist_names": {
            "description": "Watchlist name associated with the address",
            "items": {
              "$ref": "#/components/schemas/WatchlistName"
            },
            "type": "array"
          }
        },
        "required": [
          "hash",
          "is_contract",
          "name",
          "is_scam",
          "reputation",
          "proxy_type",
          "implementations",
          "is_verified",
          "ens_domain_name",
          "metadata"
        ],
        "title": "Address",
        "type": "object"
      },
      "AddressCounters": {
        "additionalProperties": false,
        "description": "Address counters",
        "properties": {
          "gas_usage_count": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "token_transfers_count": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "transactions_count": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "validations_count": {
            "$ref": "#/components/schemas/IntegerString"
          }
        },
        "required": [
          "transactions_count",
          "token_transfers_count",
          "gas_usage_count",
          "validations_count"
        ],
        "title": "AddressCounters",
        "type": "object"
      },
      "AddressHash": {
        "pattern": "^0x([A-Fa-f0-9]{40})$",
        "title": "AddressHash",
        "type": "string"
      },
      "AddressHashNullable": {
        "nullable": true,
        "pattern": "^0x([A-Fa-f0-9]{40})$",
        "title": "AddressHashNullable",
        "type": "string"
      },
      "AddressNullable": {
        "additionalProperties": false,
        "description": "AddressNullable",
        "nullable": true,
        "properties": {
          "ens_domain_name": {
            "description": "ENS domain name associated with the address",
            "nullable": true,
            "type": "string"
          },
          "hash": {
            "$ref": "#/components/schemas/AddressHash"
          },
          "implementations": {
            "description": "Implementations linked with the contract",
            "items": {
              "$ref": "#/components/schemas/Implementation"
            },
            "type": "array"
          },
          "is_contract": {
            "description": "Has address contract code?",
            "nullable": true,
            "type": "boolean"
          },
          "is_scam": {
            "description": "Has address scam badge?",
            "type": "boolean"
          },
          "is_verified": {
            "description": "Has address associated source code?",
            "nullable": true,
            "type": "boolean"
          },
          "metadata": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Metadata"
              }
            ],
            "nullable": true
          },
          "name": {
            "description": "Name associated with the address",
            "nullable": true,
            "type": "string"
          },
          "private_tags": {
            "description": "Private tags associated with the address",
            "items": {
              "$ref": "#/components/schemas/Tag"
            },
            "type": "array"
          },
          "proxy_type": {
            "$ref": "#/components/schemas/ProxyType"
          },
          "public_tags": {
            "description": "Public tags associated with the address",
            "items": {
              "$ref": "#/components/schemas/Tag"
            },
            "type": "array"
          },
          "reputation": {
            "description": "Reputation of the address",
            "enum": [
              "ok",
              "scam"
            ],
            "type": "string"
          },
          "watchlist_names": {
            "description": "Watchlist name associated with the address",
            "items": {
              "$ref": "#/components/schemas/WatchlistName"
            },
            "type": "array"
          }
        },
        "required": [
          "hash",
          "is_contract",
          "name",
          "is_scam",
          "reputation",
          "proxy_type",
          "implementations",
          "is_verified",
          "ens_domain_name",
          "metadata"
        ],
        "title": "AddressNullable",
        "type": "object"
      },
      "AddressResponse": {
        "additionalProperties": false,
        "description": "Address response",
        "properties": {
          "block_number_balance_updated_at": {
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          },
          "coin_balance": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "creation_status": {
            "description": "Creation status of the contract",
            "enum": [
              "success",
              "failed",
              "selfdestructed"
            ],
            "nullable": true,
            "type": "string"
          },
          "creation_transaction_hash": {
            "$ref": "#/components/schemas/FullHashNullable"
          },
          "creator_address_hash": {
            "$ref": "#/components/schemas/AddressHashNullable"
          },
          "ens_domain_name": {
            "description": "ENS domain name associated with the address",
            "nullable": true,
            "type": "string"
          },
          "exchange_rate": {
            "$ref": "#/components/schemas/FloatStringNullable"
          },
          "has_beacon_chain_withdrawals": {
            "type": "boolean"
          },
          "has_logs": {
            "type": "boolean"
          },
          "has_token_transfers": {
            "type": "boolean"
          },
          "has_tokens": {
            "type": "boolean"
          },
          "has_validated_blocks": {
            "type": "boolean"
          },
          "hash": {
            "$ref": "#/components/schemas/AddressHash"
          },
          "implementations": {
            "description": "Implementations linked with the contract",
            "items": {
              "$ref": "#/components/schemas/Implementation"
            },
            "type": "array"
          },
          "is_contract": {
            "description": "Has address contract code?",
            "nullable": true,
            "type": "boolean"
          },
          "is_scam": {
            "description": "Has address scam badge?",
            "type": "boolean"
          },
          "is_verified": {
            "description": "Has address associated source code?",
            "nullable": true,
            "type": "boolean"
          },
          "metadata": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Metadata"
              }
            ],
            "nullable": true
          },
          "name": {
            "description": "Name associated with the address",
            "nullable": true,
            "type": "string"
          },
          "private_tags": {
            "description": "Private tags associated with the address",
            "items": {
              "$ref": "#/components/schemas/Tag"
            },
            "type": "array"
          },
          "proxy_type": {
            "$ref": "#/components/schemas/ProxyType"
          },
          "public_tags": {
            "description": "Public tags associated with the address",
            "items": {
              "$ref": "#/components/schemas/Tag"
            },
            "type": "array"
          },
          "reputation": {
            "description": "Reputation of the address",
            "enum": [
              "ok",
              "scam"
            ],
            "type": "string"
          },
          "token": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Token"
              }
            ],
            "nullable": true
          },
          "watchlist_address_id": {
            "nullable": true,
            "type": "integer"
          },
          "watchlist_names": {
            "description": "Watchlist name associated with the address",
            "items": {
              "$ref": "#/components/schemas/WatchlistName"
            },
            "type": "array"
          }
        },
        "required": [
          "hash",
          "is_contract",
          "name",
          "is_scam",
          "reputation",
          "proxy_type",
          "implementations",
          "is_verified",
          "ens_domain_name",
          "metadata",
          "creator_address_hash",
          "creation_transaction_hash",
          "token",
          "coin_balance",
          "exchange_rate",
          "block_number_balance_updated_at",
          "has_validated_blocks",
          "has_logs",
          "has_tokens",
          "has_token_transfers",
          "watchlist_address_id",
          "has_beacon_chain_withdrawals",
          "creation_status"
        ],
        "title": "AddressResponse",
        "type": "object"
      },
      "AddressTabsCounters": {
        "additionalProperties": false,
        "description": "Counters for address tabs",
        "properties": {
          "internal_transactions_count": {
            "type": "integer"
          },
          "logs_count": {
            "type": "integer"
          },
          "token_balances_count": {
            "type": "integer"
          },
          "token_transfers_count": {
            "type": "integer"
          },
          "transactions_count": {
            "type": "integer"
          },
          "validations_count": {
            "type": "integer"
          },
          "withdrawals_count": {
            "type": "integer"
          }
        },
        "title": "AddressTabsCounters",
        "type": "object"
      },
      "AdvancedFilterCsvExportAccepted": {
        "additionalProperties": false,
        "description": "Body returned when an asynchronous CSV export job has been queued. Poll `/api/v2/csv-exports/{request_id}` with the returned `request_id` to check status.",
        "properties": {
          "request_id": {
            "description": "UUID of the queued export request.",
            "format": "uuid",
            "type": "string"
          }
        },
        "required": [
          "request_id"
        ],
        "title": "AdvancedFilterCsvExportAccepted",
        "type": "object"
      },
      "AdvancedFilterCsvExportError": {
        "additionalProperties": false,
        "properties": {
          "error": {
            "description": "Human-readable error description.",
            "type": "string"
          }
        },
        "required": [
          "error"
        ],
        "title": "AdvancedFilterCsvExportError",
        "type": "object"
      },
      "AdvancedFilterItem": {
        "additionalProperties": false,
        "properties": {
          "block_number": {
            "description": "Number of the block that contains the parent transaction.",
            "minimum": 0,
            "type": "integer"
          },
          "created_contract": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "description": "Address of the contract deployed by this item. `null` unless the item is a contract creation.",
            "nullable": true
          },
          "fee": {
            "description": "Transaction fee paid by the sender, in the chain's base unit (e.g. wei).",
            "pattern": "^([1-9][0-9]*|0)$",
            "type": "string"
          },
          "from": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "description": "Sender address. `null` for contract-creation items.",
            "nullable": true
          },
          "hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "internal_transaction_index": {
            "description": "Zero-based position of the internal transaction within its parent transaction. Populated only for internal-transaction items; `null` otherwise.",
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          },
          "method": {
            "$ref": "#/components/schemas/MethodNameNullable"
          },
          "status": {
            "description": "Execution status of the parent transaction. One of `pending`, `awaiting_internal_transactions`, `success`, or a free-form error reason string when the transaction reverted (e.g. `Reverted`).",
            "type": "string"
          },
          "timestamp": {
            "description": "Block timestamp of the parent transaction.",
            "format": "date-time",
            "type": "string"
          },
          "to": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "description": "Recipient address. `null` for contract-creation items and some internal transactions.",
            "nullable": true
          },
          "token": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Token"
              }
            ],
            "description": "Token contract metadata. Populated only for token-transfer items; `null` otherwise.",
            "nullable": true
          },
          "token_transfer_batch_index": {
            "description": "Zero-based position within an ERC-1155 batch token transfer. Populated only for items that belong to a batch; `null` otherwise.",
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          },
          "token_transfer_index": {
            "description": "Zero-based position of the token transfer, unique per parent transaction. Populated only for token-transfer items; `null` otherwise.",
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          },
          "total": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/TotalERC721"
              },
              {
                "$ref": "#/components/schemas/TotalERC1155"
              },
              {
                "$ref": "#/components/schemas/TotalERC7984"
              },
              {
                "$ref": "#/components/schemas/Total"
              }
            ],
            "description": "Token transfer amount (or token id for NFTs). Populated only for token-transfer items; `null` otherwise.",
            "nullable": true
          },
          "transaction_index": {
            "description": "Zero-based position of the parent transaction within its block.",
            "minimum": 0,
            "type": "integer"
          },
          "type": {
            "description": "Kind of activity represented by the item. Values `coin_transfer`, `contract_interaction`, and `contract_creation` apply to top-level transactions and internal transactions; the `ERC-*` values apply to token transfers.",
            "enum": [
              "coin_transfer",
              "contract_interaction",
              "contract_creation",
              "ERC-20",
              "ERC-721",
              "ERC-1155",
              "ERC-404",
              "ERC-7984"
            ],
            "type": "string"
          },
          "value": {
            "description": "Native coin amount transferred, in the chain's base unit (e.g. wei). `null` for token-transfer items.",
            "nullable": true,
            "pattern": "^([1-9][0-9]*|0)$",
            "type": "string"
          }
        },
        "required": [
          "hash",
          "type",
          "status",
          "method",
          "from",
          "to",
          "created_contract",
          "value",
          "total",
          "token",
          "timestamp",
          "block_number",
          "transaction_index",
          "internal_transaction_index",
          "token_transfer_index",
          "token_transfer_batch_index",
          "fee"
        ],
        "title": "AdvancedFilterItem",
        "type": "object"
      },
      "AdvancedFilterMethod": {
        "additionalProperties": false,
        "description": "Contract method identified by its 4-byte selector and human-readable name.",
        "properties": {
          "method_id": {
            "description": "4-byte method selector prefixed with 0x (lowercase hex).",
            "example": "0xa9059cbb",
            "pattern": "^0x[0-9a-f]{8}$",
            "type": "string"
          },
          "name": {
            "description": "Human-readable method name. Empty string if the name could not be resolved.",
            "example": "transfer",
            "type": "string"
          }
        },
        "required": [
          "method_id",
          "name"
        ],
        "title": "AdvancedFilterMethod",
        "type": "object"
      },
      "AdvancedFilterResponse": {
        "additionalProperties": false,
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/AdvancedFilterItem"
            },
            "type": "array"
          },
          "next_page_params": {
            "additionalProperties": true,
            "example": {
              "block_number": 23532302,
              "internal_transaction_index": null,
              "token_transfer_batch_index": null,
              "token_transfer_index": 0,
              "transaction_index": 1
            },
            "nullable": true,
            "type": "object"
          },
          "search_params": {
            "$ref": "#/components/schemas/AdvancedFilterSearchParams"
          }
        },
        "required": [
          "items",
          "search_params",
          "next_page_params"
        ],
        "title": "AdvancedFilterResponse",
        "type": "object"
      },
      "AdvancedFilterSearchParams": {
        "additionalProperties": false,
        "properties": {
          "methods": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "Map of 4-byte method selectors (keys) to resolved method names (values) for the `methods` filter.",
            "type": "object"
          },
          "tokens": {
            "additionalProperties": {
              "$ref": "#/components/schemas/Token"
            },
            "description": "Map of token contract address hashes (keys) to `Token` objects for tokens referenced in the `token_contract_address_hashes_to_include`/`_exclude` filters. At most 20 entries are returned (combined across both lists).",
            "type": "object"
          }
        },
        "required": [
          "methods",
          "tokens"
        ],
        "title": "AdvancedFilterSearchParams",
        "type": "object"
      },
      "Anytrust": {
        "additionalProperties": false,
        "description": "AnyTrust data availability certificate.",
        "properties": {
          "batch_data_container": {
            "enum": [
              "in_anytrust"
            ],
            "type": "string"
          },
          "bls_signature": {
            "description": "Aggregated BLS signature of committee members.",
            "nullable": true,
            "type": "string"
          },
          "data_hash": {
            "description": "AnyTrust data hash.",
            "nullable": true,
            "type": "string"
          },
          "signers": {
            "description": "Committee members who guaranteed data availability.",
            "items": {
              "additionalProperties": false,
              "properties": {
                "key": {
                  "description": "BLS public key.",
                  "type": "string"
                },
                "proof": {
                  "description": "Proof of possession (absent for trusted members).",
                  "type": "string"
                },
                "trusted": {
                  "description": "Whether the signer is a trusted member.",
                  "type": "boolean"
                }
              },
              "required": [
                "trusted",
                "key"
              ],
              "type": "object"
            },
            "type": "array"
          },
          "timeout": {
            "description": "Data availability timeout (ISO 8601).",
            "nullable": true,
            "type": "string"
          }
        },
        "required": [
          "batch_data_container",
          "data_hash",
          "timeout",
          "bls_signature",
          "signers"
        ],
        "title": "Anytrust",
        "type": "object"
      },
      "Arbitrum.Batch": {
        "additionalProperties": false,
        "description": "Detailed Arbitrum batch info.",
        "properties": {
          "after_acc_hash": {
            "description": "Accumulator hash of the sequencer inbox after this batch was appended. Must equal `before_acc_hash` of the next batch.",
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "before_acc_hash": {
            "description": "Accumulator hash of the sequencer inbox before this batch was appended. Forms a hash chain: must equal `after_acc_hash` of the previous batch.",
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "commitment_transaction": {
            "$ref": "#/components/schemas/CommitmentTransaction"
          },
          "data_availability": {
            "description": "Data availability information. Structure varies by `batch_data_container` type.",
            "oneOf": [
              {
                "$ref": "#/components/schemas/Base"
              },
              {
                "$ref": "#/components/schemas/Anytrust"
              },
              {
                "$ref": "#/components/schemas/Celestia"
              },
              {
                "$ref": "#/components/schemas/Eigenda"
              }
            ]
          },
          "end_block_number": {
            "description": "Last Rollup block included in the batch.",
            "minimum": 0,
            "type": "integer"
          },
          "number": {
            "description": "Sequential identifier assigned to this batch by the sequencer.",
            "minimum": 0,
            "type": "integer"
          },
          "start_block_number": {
            "description": "First Rollup block included in the batch.",
            "minimum": 0,
            "type": "integer"
          },
          "transactions_count": {
            "description": "Number of transactions in the batch.",
            "minimum": 0,
            "type": "integer"
          }
        },
        "required": [
          "number",
          "transactions_count",
          "start_block_number",
          "end_block_number",
          "before_acc_hash",
          "after_acc_hash",
          "commitment_transaction",
          "data_availability"
        ],
        "title": "Arbitrum.Batch",
        "type": "object"
      },
      "Arbitrum.BatchByAnytrust": {
        "additionalProperties": false,
        "description": "Arbitrum batch with AnyTrust data availability.",
        "properties": {
          "after_acc_hash": {
            "description": "Accumulator hash of the sequencer inbox after this batch was appended. Must equal `before_acc_hash` of the next batch.",
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "before_acc_hash": {
            "description": "Accumulator hash of the sequencer inbox before this batch was appended. Forms a hash chain: must equal `after_acc_hash` of the previous batch.",
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "commitment_transaction": {
            "$ref": "#/components/schemas/CommitmentTransaction"
          },
          "data_availability": {
            "$ref": "#/components/schemas/Anytrust"
          },
          "end_block_number": {
            "description": "Last Rollup block included in the batch.",
            "minimum": 0,
            "type": "integer"
          },
          "number": {
            "description": "Sequential identifier assigned to this batch by the sequencer.",
            "minimum": 0,
            "type": "integer"
          },
          "start_block_number": {
            "description": "First Rollup block included in the batch.",
            "minimum": 0,
            "type": "integer"
          },
          "transactions_count": {
            "description": "Number of transactions in the batch.",
            "minimum": 0,
            "type": "integer"
          }
        },
        "required": [
          "number",
          "transactions_count",
          "start_block_number",
          "end_block_number",
          "before_acc_hash",
          "after_acc_hash",
          "commitment_transaction",
          "data_availability"
        ],
        "title": "Arbitrum.BatchByAnytrust",
        "type": "object"
      },
      "Arbitrum.BatchByCelestia": {
        "additionalProperties": false,
        "description": "Arbitrum batch with Celestia data availability.",
        "properties": {
          "after_acc_hash": {
            "description": "Accumulator hash of the sequencer inbox after this batch was appended. Must equal `before_acc_hash` of the next batch.",
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "before_acc_hash": {
            "description": "Accumulator hash of the sequencer inbox before this batch was appended. Forms a hash chain: must equal `after_acc_hash` of the previous batch.",
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "commitment_transaction": {
            "$ref": "#/components/schemas/CommitmentTransaction"
          },
          "data_availability": {
            "$ref": "#/components/schemas/Celestia"
          },
          "end_block_number": {
            "description": "Last Rollup block included in the batch.",
            "minimum": 0,
            "type": "integer"
          },
          "number": {
            "description": "Sequential identifier assigned to this batch by the sequencer.",
            "minimum": 0,
            "type": "integer"
          },
          "start_block_number": {
            "description": "First Rollup block included in the batch.",
            "minimum": 0,
            "type": "integer"
          },
          "transactions_count": {
            "description": "Number of transactions in the batch.",
            "minimum": 0,
            "type": "integer"
          }
        },
        "required": [
          "number",
          "transactions_count",
          "start_block_number",
          "end_block_number",
          "before_acc_hash",
          "after_acc_hash",
          "commitment_transaction",
          "data_availability"
        ],
        "title": "Arbitrum.BatchByCelestia",
        "type": "object"
      },
      "Arbitrum.BatchByEigenda": {
        "additionalProperties": false,
        "description": "Arbitrum batch with EigenDA data availability.",
        "properties": {
          "after_acc_hash": {
            "description": "Accumulator hash of the sequencer inbox after this batch was appended. Must equal `before_acc_hash` of the next batch.",
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "before_acc_hash": {
            "description": "Accumulator hash of the sequencer inbox before this batch was appended. Forms a hash chain: must equal `after_acc_hash` of the previous batch.",
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "commitment_transaction": {
            "$ref": "#/components/schemas/CommitmentTransaction"
          },
          "data_availability": {
            "$ref": "#/components/schemas/Eigenda"
          },
          "end_block_number": {
            "description": "Last Rollup block included in the batch.",
            "minimum": 0,
            "type": "integer"
          },
          "number": {
            "description": "Sequential identifier assigned to this batch by the sequencer.",
            "minimum": 0,
            "type": "integer"
          },
          "start_block_number": {
            "description": "First Rollup block included in the batch.",
            "minimum": 0,
            "type": "integer"
          },
          "transactions_count": {
            "description": "Number of transactions in the batch.",
            "minimum": 0,
            "type": "integer"
          }
        },
        "required": [
          "number",
          "transactions_count",
          "start_block_number",
          "end_block_number",
          "before_acc_hash",
          "after_acc_hash",
          "commitment_transaction",
          "data_availability"
        ],
        "title": "Arbitrum.BatchByEigenda",
        "type": "object"
      },
      "Arbitrum.ClaimMessage": {
        "additionalProperties": false,
        "description": "Calldata and outbox contract address needed to execute a withdrawal on the Parent chain.",
        "properties": {
          "calldata": {
            "description": "ABI-encoded calldata for the executeTransaction call.",
            "type": "string"
          },
          "outbox_address_hash": {
            "description": "Address of the Arbitrum Outbox contract on the Parent chain through which the withdrawal is executed.",
            "pattern": "^0x([A-Fa-f0-9]{40})$",
            "type": "string"
          }
        },
        "required": [
          "calldata",
          "outbox_address_hash"
        ],
        "title": "Arbitrum.ClaimMessage",
        "type": "object"
      },
      "Arbitrum.Message": {
        "additionalProperties": false,
        "description": "Full Arbitrum cross-chain message.",
        "properties": {
          "completion_transaction_hash": {
            "description": "Hash of the transaction on the destination chain that executed this message.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "id": {
            "description": "Unique cross-chain message identifier assigned by the protocol.",
            "minimum": 0,
            "type": "integer"
          },
          "origination_address_hash": {
            "description": "Address that initiated the message on the originating chain.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{40})$",
            "type": "string"
          },
          "origination_timestamp": {
            "$ref": "#/components/schemas/TimestampNullable"
          },
          "origination_transaction_block_number": {
            "description": "Block number on the originating chain containing the initiation transaction.",
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          },
          "origination_transaction_hash": {
            "description": "Hash of the transaction on the originating chain that initiated this message.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "status": {
            "description": "Cross-chain message lifecycle. For Rollup→Parent messages: `initiated` (L2ToL1Tx event emitted on Rollup) → `sent` (included in a batch committed to Parent chain) → `confirmed` (batch state root posted to the Outbox contract) → `relayed` (executed on Parent chain). For Parent→Rollup messages only `initiated` and `relayed` apply.",
            "enum": [
              "initiated",
              "sent",
              "confirmed",
              "relayed"
            ],
            "type": "string"
          }
        },
        "required": [
          "origination_transaction_hash",
          "origination_timestamp",
          "origination_transaction_block_number",
          "completion_transaction_hash",
          "id",
          "origination_address_hash",
          "status"
        ],
        "title": "Arbitrum.Message",
        "type": "object"
      },
      "Arbitrum.Withdrawal": {
        "additionalProperties": false,
        "description": "Arbitrum Rollup withdrawal message.",
        "properties": {
          "arb_block_number": {
            "description": "Rollup block number.",
            "minimum": 0,
            "type": "integer"
          },
          "caller_address_hash": {
            "description": "Address of the account that initiated the withdrawal on the Rollup.",
            "pattern": "^0x([A-Fa-f0-9]{40})$",
            "type": "string"
          },
          "callvalue": {
            "description": "Native coin amount in wei attached to the withdrawal message.",
            "pattern": "^-?([1-9][0-9]*|0)$",
            "type": "string"
          },
          "completion_transaction_hash": {
            "$ref": "#/components/schemas/FullHashNullable"
          },
          "data": {
            "description": "ABI-encoded calldata passed to the destination address when the withdrawal is executed on the Parent chain. Empty (`0x`) for plain native coin transfers.",
            "pattern": "^0x([A-Fa-f0-9]*)$",
            "type": "string"
          },
          "destination_address_hash": {
            "description": "Recipient address on the Parent chain that will receive funds when the withdrawal is executed.",
            "pattern": "^0x([A-Fa-f0-9]{40})$",
            "type": "string"
          },
          "eth_block_number": {
            "description": "Parent chain block number.",
            "minimum": 0,
            "type": "integer"
          },
          "id": {
            "description": "Withdrawal message ID.",
            "minimum": 0,
            "type": "integer"
          },
          "l2_timestamp": {
            "description": "Unix timestamp of the originating transaction.",
            "minimum": 0,
            "type": "integer"
          },
          "status": {
            "description": "Withdrawal lifecycle status. Progresses from `initiated` (L2ToL1Tx event emitted) through `sent` (included in an RBlock) and `confirmed` (RBlock confirmed on Parent chain) to `relayed` (executed on Parent chain). `unknown` indicates the status could not be determined, e.g. when the Parent chain RPC is unavailable.",
            "enum": [
              "unknown",
              "initiated",
              "sent",
              "confirmed",
              "relayed"
            ],
            "type": "string"
          },
          "token": {
            "additionalProperties": false,
            "description": "Token withdrawal details. Present when the withdrawal is for a bridged token, null for native coin.",
            "nullable": true,
            "properties": {
              "address_hash": {
                "description": "Token contract address on the Parent chain.",
                "nullable": true,
                "pattern": "^0x([A-Fa-f0-9]{40})$",
                "type": "string"
              },
              "amount": {
                "description": "Token amount in the token's smallest unit.",
                "pattern": "^-?([1-9][0-9]*|0)$",
                "type": "string"
              },
              "decimals": {
                "minimum": 0,
                "nullable": true,
                "type": "integer"
              },
              "destination_address_hash": {
                "description": "Token recipient address on the Parent chain.",
                "nullable": true,
                "pattern": "^0x([A-Fa-f0-9]{40})$",
                "type": "string"
              },
              "name": {
                "nullable": true,
                "type": "string"
              },
              "symbol": {
                "nullable": true,
                "type": "string"
              }
            },
            "required": [
              "address_hash",
              "destination_address_hash",
              "amount",
              "decimals",
              "name",
              "symbol"
            ],
            "type": "object"
          }
        },
        "required": [
          "id",
          "status",
          "caller_address_hash",
          "destination_address_hash",
          "arb_block_number",
          "eth_block_number",
          "l2_timestamp",
          "callvalue",
          "data",
          "token",
          "completion_transaction_hash"
        ],
        "title": "Arbitrum.Withdrawal",
        "type": "object"
      },
      "AuditReport": {
        "description": "Smart contract audit report item",
        "properties": {
          "audit_company_name": {
            "type": "string"
          },
          "audit_publish_date": {
            "format": "date",
            "type": "string"
          },
          "audit_report_url": {
            "type": "string"
          }
        },
        "required": [
          "audit_company_name",
          "audit_publish_date",
          "audit_report_url"
        ],
        "title": "AuditReport",
        "type": "object"
      },
      "BadRequestResponse": {
        "description": "Response returned when the request is invalid",
        "properties": {
          "message": {
            "description": "Error message indicating the request is invalid",
            "example": "Invalid request",
            "type": "string"
          }
        },
        "title": "BadRequestResponse",
        "type": "object"
      },
      "Base": {
        "additionalProperties": false,
        "description": "Data availability info for batches posted via EIP-4844 blobs, calldata, or with no DA.",
        "properties": {
          "batch_data_container": {
            "description": "Data availability container type.",
            "enum": [
              "in_blob4844",
              "in_calldata"
            ],
            "nullable": true,
            "type": "string"
          }
        },
        "required": [
          "batch_data_container"
        ],
        "title": "Base",
        "type": "object"
      },
      "BatchDataContainer": {
        "description": "Data availability container type.",
        "enum": [
          "in_blob4844",
          "in_calldata",
          "in_celestia",
          "in_anytrust",
          "in_eigenda"
        ],
        "nullable": true,
        "title": "BatchDataContainer",
        "type": "string"
      },
      "BatchForList": {
        "additionalProperties": false,
        "description": "Arbitrum batch summary for list endpoints.",
        "properties": {
          "batch_data_container": {
            "$ref": "#/components/schemas/BatchDataContainer"
          },
          "blocks_count": {
            "description": "Number of blocks included in the batch.",
            "minimum": 0,
            "type": "integer"
          },
          "commitment_transaction": {
            "$ref": "#/components/schemas/CommitmentTransaction"
          },
          "number": {
            "description": "Sequential identifier assigned to this batch by the sequencer.",
            "minimum": 0,
            "type": "integer"
          },
          "transactions_count": {
            "description": "Number of transactions in the batch.",
            "minimum": 0,
            "type": "integer"
          }
        },
        "required": [
          "number",
          "transactions_count",
          "blocks_count",
          "batch_data_container",
          "commitment_transaction"
        ],
        "title": "BatchForList",
        "type": "object"
      },
      "Beacon.Deposit.Status": {
        "description": "Beacon deposit lifecycle status.",
        "enum": [
          "invalid",
          "pending",
          "completed"
        ],
        "title": "Beacon.Deposit.Status",
        "type": "string"
      },
      "BeaconDepositResponse": {
        "additionalProperties": false,
        "description": "BeaconDeposit response",
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "block_hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "block_number": {
            "type": "integer"
          },
          "block_timestamp": {
            "$ref": "#/components/schemas/Timestamp"
          },
          "from_address": {
            "$ref": "#/components/schemas/Address"
          },
          "index": {
            "type": "integer"
          },
          "pubkey": {
            "pattern": "^0x([A-Fa-f0-9]{96})$",
            "type": "string"
          },
          "signature": {
            "pattern": "^0x([A-Fa-f0-9]{192})$",
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/Beacon.Deposit.Status"
          },
          "transaction_hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "withdrawal_address": {
            "$ref": "#/components/schemas/AddressNullable"
          },
          "withdrawal_credentials": {
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          }
        },
        "required": [
          "index",
          "transaction_hash",
          "block_hash",
          "block_number",
          "block_timestamp",
          "pubkey",
          "withdrawal_credentials",
          "amount",
          "signature",
          "status",
          "from_address"
        ],
        "title": "BeaconDepositResponse",
        "type": "object"
      },
      "BlobResponse": {
        "additionalProperties": false,
        "description": "Blob response",
        "properties": {
          "blob_data": {
            "$ref": "#/components/schemas/HexData"
          },
          "hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "kzg_commitment": {
            "$ref": "#/components/schemas/HexData"
          },
          "kzg_proof": {
            "$ref": "#/components/schemas/HexData"
          }
        },
        "required": [
          "blob_data",
          "hash",
          "kzg_commitment",
          "kzg_proof"
        ],
        "title": "BlobResponse",
        "type": "object"
      },
      "Block": {
        "additionalProperties": false,
        "properties": {
          "arbitrum": {
            "additionalProperties": false,
            "properties": {
              "batch_data_container": {
                "enum": [
                  "in_blob4844",
                  "in_calldata",
                  "in_celestia",
                  "in_anytrust",
                  "in_eigenda"
                ],
                "nullable": true,
                "type": "string"
              },
              "batch_number": {
                "nullable": true,
                "type": "integer"
              },
              "commitment_transaction": {
                "properties": {
                  "hash": {
                    "$ref": "#/components/schemas/FullHashNullable"
                  },
                  "status": {
                    "enum": [
                      "unfinalized",
                      "finalized"
                    ],
                    "nullable": true,
                    "type": "string"
                  },
                  "timestamp": {
                    "$ref": "#/components/schemas/TimestampNullable"
                  }
                },
                "required": [
                  "hash",
                  "timestamp",
                  "status"
                ],
                "type": "object"
              },
              "confirmation_transaction": {
                "properties": {
                  "hash": {
                    "$ref": "#/components/schemas/FullHashNullable"
                  },
                  "status": {
                    "enum": [
                      "unfinalized",
                      "finalized"
                    ],
                    "nullable": true,
                    "type": "string"
                  },
                  "timestamp": {
                    "$ref": "#/components/schemas/TimestampNullable"
                  }
                },
                "required": [
                  "hash",
                  "timestamp",
                  "status"
                ],
                "type": "object"
              },
              "delayed_messages": {
                "type": "integer"
              },
              "l1_block_number": {
                "nullable": true,
                "type": "integer"
              },
              "send_count": {
                "nullable": true,
                "type": "integer"
              },
              "send_root": {
                "$ref": "#/components/schemas/FullHashNullable"
              },
              "status": {
                "enum": [
                  "Confirmed on base",
                  "Sent to base",
                  "Sealed on rollup",
                  "Processed on rollup"
                ],
                "type": "string"
              }
            },
            "required": [
              "batch_number",
              "status",
              "commitment_transaction",
              "confirmation_transaction"
            ],
            "type": "object"
          },
          "base_fee_per_gas": {
            "description": "EIP-1559 base fee per gas, in wei. Null on blocks produced before EIP-1559 activation or on chains that do not implement EIP-1559.",
            "nullable": true,
            "pattern": "^-?([1-9][0-9]*|0)$",
            "type": "string"
          },
          "burnt_fees": {
            "description": "Sum of EIP-1559 base fees burned by transactions in this block, in wei.",
            "nullable": true,
            "pattern": "^-?([1-9][0-9]*|0)$",
            "type": "string"
          },
          "burnt_fees_percentage": {
            "description": "Burned base fees as a percentage of total transaction fees in this block.",
            "format": "float",
            "nullable": true,
            "type": "number"
          },
          "difficulty": {
            "description": "Proof-of-work difficulty of this block. Zero on proof-of-stake chains.",
            "nullable": true,
            "pattern": "^-?([1-9][0-9]*|0)$",
            "type": "string"
          },
          "gas_limit": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "gas_target_percentage": {
            "description": "Percent above the EIP-1559 elasticity target (gas_used vs. gas_limit / elasticity_multiplier).",
            "format": "float",
            "type": "number"
          },
          "gas_used": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "gas_used_percentage": {
            "description": "Gas used in this block as a percentage of `gas_limit`.",
            "format": "float",
            "type": "number"
          },
          "hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "height": {
            "description": "Block number (zero-based index from genesis).",
            "minimum": 0,
            "type": "integer"
          },
          "internal_transactions_count": {
            "description": "Number of internal transactions in this block; null when the count is unavailable.",
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          },
          "is_pending_update": {
            "description": "True when the block is scheduled for re-fetch; its fields may change once re-fetching completes.",
            "nullable": true,
            "type": "boolean"
          },
          "miner": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "description": "Address credited with the block — the miner on PoW chains, the fee recipient / proposer on PoS chains, and the sequencer on rollups."
          },
          "nonce": {
            "description": "Proof-of-work nonce used to satisfy the difficulty target. Zero on proof-of-stake chains.",
            "pattern": "^0x([A-Fa-f0-9]*)$",
            "type": "string"
          },
          "parent_hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "priority_fee": {
            "description": "Sum of validator tips (EIP-1559 priority fees) paid by transactions in this block, in wei.",
            "nullable": true,
            "pattern": "^-?([1-9][0-9]*|0)$",
            "type": "string"
          },
          "rewards": {
            "description": "Block rewards grouped by recipient category. Each entry describes a reward paid for this block; the set of categories depends on the chain and block type.",
            "items": {
              "additionalProperties": false,
              "properties": {
                "reward": {
                  "$ref": "#/components/schemas/IntegerString"
                },
                "type": {
                  "description": "Reward category (machine-readable identifier).",
                  "enum": [
                    "emission_funds",
                    "uncle",
                    "validator"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "type",
                "reward"
              ],
              "type": "object"
            },
            "type": "array"
          },
          "size": {
            "description": "Block size in bytes (length of the RLP-encoded block).",
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          },
          "timestamp": {
            "$ref": "#/components/schemas/Timestamp"
          },
          "total_difficulty": {
            "description": "Cumulative chain difficulty through this block (sum of `difficulty` of this block and all ancestors).",
            "nullable": true,
            "pattern": "^-?([1-9][0-9]*|0)$",
            "type": "string"
          },
          "transaction_fees": {
            "description": "Sum of transaction fees (gas price × gas used) paid by transactions in this block, in wei.",
            "pattern": "^-?([1-9][0-9]*|0)$",
            "type": "string"
          },
          "transactions_count": {
            "minimum": 0,
            "type": "integer"
          },
          "type": {
            "description": "Block classification: `block` = main-chain consensus block; `uncle` = ommer (valid but not in main chain); `reorg` = former main-chain block lost to reorganization.",
            "enum": [
              "block",
              "uncle",
              "reorg"
            ],
            "type": "string"
          },
          "uncles_hashes": {
            "description": "Hashes of ommer (uncle) blocks referenced by this block.",
            "items": {
              "additionalProperties": false,
              "properties": {
                "hash": {
                  "$ref": "#/components/schemas/FullHash"
                }
              },
              "required": [
                "hash"
              ],
              "type": "object"
            },
            "type": "array"
          },
          "withdrawals_count": {
            "description": "Number of withdrawals included in this block; null when the count is unavailable.",
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          }
        },
        "required": [
          "height",
          "timestamp",
          "transactions_count",
          "internal_transactions_count",
          "miner",
          "size",
          "hash",
          "parent_hash",
          "difficulty",
          "total_difficulty",
          "gas_used",
          "gas_limit",
          "nonce",
          "base_fee_per_gas",
          "burnt_fees",
          "priority_fee",
          "uncles_hashes",
          "rewards",
          "gas_target_percentage",
          "gas_used_percentage",
          "burnt_fees_percentage",
          "type",
          "transaction_fees",
          "withdrawals_count",
          "is_pending_update"
        ],
        "title": "Block",
        "type": "object"
      },
      "BlockCountdown": {
        "description": "Block countdown information showing estimated time until a target block is reached",
        "example": {
          "countdown_block": 22600000,
          "current_block": 22566361,
          "estimated_time_in_sec": 404868,
          "remaining_blocks": 33639
        },
        "properties": {
          "countdown_block": {
            "description": "The target block number for the countdown",
            "example": 22600000,
            "minimum": 0,
            "type": "integer"
          },
          "current_block": {
            "description": "The current highest block number in the blockchain",
            "example": 22566361,
            "minimum": 0,
            "type": "integer"
          },
          "estimated_time_in_sec": {
            "description": "Estimated time in seconds until the target block is reached",
            "example": 404868,
            "format": "float",
            "minimum": 0,
            "type": "number"
          },
          "remaining_blocks": {
            "description": "Number of blocks remaining until the target block is reached",
            "example": 33639,
            "minimum": 0,
            "type": "integer"
          }
        },
        "required": [
          "current_block",
          "countdown_block",
          "remaining_blocks",
          "estimated_time_in_sec"
        ],
        "title": "BlockCountdown",
        "type": "object"
      },
      "BlockResponse": {
        "additionalProperties": false,
        "description": "Block response",
        "properties": {
          "arbitrum": {
            "additionalProperties": false,
            "properties": {
              "batch_data_container": {
                "enum": [
                  "in_blob4844",
                  "in_calldata",
                  "in_celestia",
                  "in_anytrust",
                  "in_eigenda"
                ],
                "nullable": true,
                "type": "string"
              },
              "batch_number": {
                "nullable": true,
                "type": "integer"
              },
              "commitment_transaction": {
                "properties": {
                  "hash": {
                    "$ref": "#/components/schemas/FullHashNullable"
                  },
                  "status": {
                    "enum": [
                      "unfinalized",
                      "finalized"
                    ],
                    "nullable": true,
                    "type": "string"
                  },
                  "timestamp": {
                    "$ref": "#/components/schemas/TimestampNullable"
                  }
                },
                "required": [
                  "hash",
                  "timestamp",
                  "status"
                ],
                "type": "object"
              },
              "confirmation_transaction": {
                "properties": {
                  "hash": {
                    "$ref": "#/components/schemas/FullHashNullable"
                  },
                  "status": {
                    "enum": [
                      "unfinalized",
                      "finalized"
                    ],
                    "nullable": true,
                    "type": "string"
                  },
                  "timestamp": {
                    "$ref": "#/components/schemas/TimestampNullable"
                  }
                },
                "required": [
                  "hash",
                  "timestamp",
                  "status"
                ],
                "type": "object"
              },
              "delayed_messages": {
                "type": "integer"
              },
              "l1_block_number": {
                "nullable": true,
                "type": "integer"
              },
              "send_count": {
                "nullable": true,
                "type": "integer"
              },
              "send_root": {
                "$ref": "#/components/schemas/FullHashNullable"
              },
              "status": {
                "enum": [
                  "Confirmed on base",
                  "Sent to base",
                  "Sealed on rollup",
                  "Processed on rollup"
                ],
                "type": "string"
              }
            },
            "required": [
              "batch_number",
              "status",
              "commitment_transaction",
              "confirmation_transaction"
            ],
            "type": "object"
          },
          "base_fee_per_gas": {
            "description": "EIP-1559 base fee per gas, in wei. Null on blocks produced before EIP-1559 activation or on chains that do not implement EIP-1559.",
            "nullable": true,
            "pattern": "^-?([1-9][0-9]*|0)$",
            "type": "string"
          },
          "burnt_fees": {
            "description": "Sum of EIP-1559 base fees burned by transactions in this block, in wei.",
            "nullable": true,
            "pattern": "^-?([1-9][0-9]*|0)$",
            "type": "string"
          },
          "burnt_fees_percentage": {
            "description": "Burned base fees as a percentage of total transaction fees in this block.",
            "format": "float",
            "nullable": true,
            "type": "number"
          },
          "difficulty": {
            "description": "Proof-of-work difficulty of this block. Zero on proof-of-stake chains.",
            "nullable": true,
            "pattern": "^-?([1-9][0-9]*|0)$",
            "type": "string"
          },
          "gas_limit": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "gas_target_percentage": {
            "description": "Percent above the EIP-1559 elasticity target (gas_used vs. gas_limit / elasticity_multiplier).",
            "format": "float",
            "type": "number"
          },
          "gas_used": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "gas_used_percentage": {
            "description": "Gas used in this block as a percentage of `gas_limit`.",
            "format": "float",
            "type": "number"
          },
          "hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "height": {
            "description": "Block number (zero-based index from genesis).",
            "minimum": 0,
            "type": "integer"
          },
          "internal_transactions_count": {
            "description": "Number of internal transactions in this block; null when the count is unavailable.",
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          },
          "is_pending_update": {
            "description": "True when the block is scheduled for re-fetch; its fields may change once re-fetching completes.",
            "nullable": true,
            "type": "boolean"
          },
          "miner": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "description": "Address credited with the block — the miner on PoW chains, the fee recipient / proposer on PoS chains, and the sequencer on rollups."
          },
          "nonce": {
            "description": "Proof-of-work nonce used to satisfy the difficulty target. Zero on proof-of-stake chains.",
            "pattern": "^0x([A-Fa-f0-9]*)$",
            "type": "string"
          },
          "parent_hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "priority_fee": {
            "description": "Sum of validator tips (EIP-1559 priority fees) paid by transactions in this block, in wei.",
            "nullable": true,
            "pattern": "^-?([1-9][0-9]*|0)$",
            "type": "string"
          },
          "rewards": {
            "description": "Block rewards grouped by recipient category. Single-block variant: `type` is a human-readable label rather than a machine identifier.",
            "items": {
              "additionalProperties": false,
              "properties": {
                "reward": {
                  "$ref": "#/components/schemas/IntegerString"
                },
                "type": {
                  "description": "Human-readable reward category label (e.g. \"Miner Reward\", \"Uncle Reward\").",
                  "type": "string"
                }
              },
              "required": [
                "type",
                "reward"
              ],
              "type": "object"
            },
            "type": "array"
          },
          "size": {
            "description": "Block size in bytes (length of the RLP-encoded block).",
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          },
          "timestamp": {
            "$ref": "#/components/schemas/Timestamp"
          },
          "total_difficulty": {
            "description": "Cumulative chain difficulty through this block (sum of `difficulty` of this block and all ancestors).",
            "nullable": true,
            "pattern": "^-?([1-9][0-9]*|0)$",
            "type": "string"
          },
          "transaction_fees": {
            "description": "Sum of transaction fees (gas price × gas used) paid by transactions in this block, in wei.",
            "pattern": "^-?([1-9][0-9]*|0)$",
            "type": "string"
          },
          "transactions_count": {
            "minimum": 0,
            "type": "integer"
          },
          "type": {
            "description": "Block classification: `block` = main-chain consensus block; `uncle` = ommer (valid but not in main chain); `reorg` = former main-chain block lost to reorganization.",
            "enum": [
              "block",
              "uncle",
              "reorg"
            ],
            "type": "string"
          },
          "uncles_hashes": {
            "description": "Hashes of ommer (uncle) blocks referenced by this block.",
            "items": {
              "additionalProperties": false,
              "properties": {
                "hash": {
                  "$ref": "#/components/schemas/FullHash"
                }
              },
              "required": [
                "hash"
              ],
              "type": "object"
            },
            "type": "array"
          },
          "withdrawals_count": {
            "description": "Number of withdrawals included in this block; null when the count is unavailable.",
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          }
        },
        "required": [
          "height",
          "timestamp",
          "transactions_count",
          "internal_transactions_count",
          "miner",
          "size",
          "hash",
          "parent_hash",
          "difficulty",
          "total_difficulty",
          "gas_used",
          "gas_limit",
          "nonce",
          "base_fee_per_gas",
          "burnt_fees",
          "priority_fee",
          "uncles_hashes",
          "rewards",
          "gas_target_percentage",
          "gas_used_percentage",
          "burnt_fees_percentage",
          "type",
          "transaction_fees",
          "withdrawals_count",
          "is_pending_update"
        ],
        "title": "BlockResponse",
        "type": "object"
      },
      "BlockTag": {
        "anyOf": [
          {
            "pattern": "^0x([A-Fa-f0-9]+)$",
            "type": "string"
          },
          {
            "enum": [
              "latest",
              "earliest",
              "pending"
            ],
            "type": "string"
          }
        ],
        "description": "Block parameter: a hex-encoded block number (`0x` prefix) or one of the tags `latest`, `earliest`, `pending`.",
        "title": "BlockTag"
      },
      "Bridge": {
        "additionalProperties": false,
        "description": "Scroll Bridge item struct.",
        "properties": {
          "completion_transaction_hash": {
            "$ref": "#/components/schemas/FullHashNullable"
          },
          "id": {
            "nullable": true,
            "type": "integer"
          },
          "origination_timestamp": {
            "$ref": "#/components/schemas/TimestampNullable"
          },
          "origination_transaction_block_number": {
            "nullable": true,
            "type": "integer"
          },
          "origination_transaction_hash": {
            "$ref": "#/components/schemas/FullHashNullable"
          },
          "value": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          }
        },
        "required": [
          "completion_transaction_hash",
          "id",
          "origination_timestamp",
          "origination_transaction_block_number",
          "origination_transaction_hash",
          "value"
        ],
        "title": "Bridge",
        "type": "object"
      },
      "Bundle": {
        "additionalProperties": false,
        "description": "Bundle struct.",
        "properties": {
          "block_number": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "bundle_index": {
            "minimum": 0,
            "type": "integer"
          },
          "bundler": {
            "$ref": "#/components/schemas/Address"
          },
          "timestamp": {
            "$ref": "#/components/schemas/Timestamp"
          },
          "total_ops": {
            "minimum": 0,
            "type": "integer"
          },
          "transaction_hash": {
            "$ref": "#/components/schemas/FullHash"
          }
        },
        "required": [
          "transaction_hash",
          "bundler",
          "block_number",
          "bundle_index",
          "timestamp",
          "total_ops"
        ],
        "title": "Bundle",
        "type": "object"
      },
      "Bundler": {
        "additionalProperties": false,
        "description": "Bundler struct.",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "total_bundles": {
            "minimum": 0,
            "type": "integer"
          },
          "total_ops": {
            "minimum": 0,
            "type": "integer"
          }
        },
        "required": [
          "address",
          "total_bundles",
          "total_ops"
        ],
        "title": "Bundler",
        "type": "object"
      },
      "Celestia": {
        "additionalProperties": false,
        "description": "Celestia data availability blob reference.",
        "properties": {
          "batch_data_container": {
            "enum": [
              "in_celestia"
            ],
            "type": "string"
          },
          "height": {
            "description": "Celestia block height.",
            "nullable": true,
            "type": "integer"
          },
          "transaction_commitment": {
            "description": "Celestia transaction commitment hash.",
            "nullable": true,
            "type": "string"
          }
        },
        "required": [
          "batch_data_container",
          "height",
          "transaction_commitment"
        ],
        "title": "Celestia",
        "type": "object"
      },
      "CeloElectionRewardType": {
        "enum": [
          "voter",
          "validator",
          "group",
          "delegated_payment",
          "delegated-payment"
        ],
        "title": "CeloElectionRewardType",
        "type": "string"
      },
      "CeloEpochDetailed": {
        "additionalProperties": false,
        "description": "Celo epoch summary.",
        "properties": {
          "aggregated_election_rewards": {
            "additionalProperties": {
              "additionalProperties": false,
              "nullable": true,
              "properties": {
                "count": {
                  "minimum": 0,
                  "type": "integer"
                },
                "token": {
                  "additionalProperties": true,
                  "nullable": true,
                  "type": "object"
                },
                "total": {
                  "$ref": "#/components/schemas/IntegerString"
                }
              },
              "required": [
                "total",
                "count",
                "token"
              ],
              "type": "object"
            },
            "nullable": true,
            "type": "object"
          },
          "distribution": {
            "additionalProperties": true,
            "nullable": true,
            "type": "object"
          },
          "end_block_number": {
            "minimum": 0,
            "type": "integer"
          },
          "end_processing_block_hash": {
            "$ref": "#/components/schemas/FullHashNullable"
          },
          "end_processing_block_number": {
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          },
          "is_finalized": {
            "type": "boolean"
          },
          "number": {
            "minimum": 0,
            "type": "integer"
          },
          "start_block_number": {
            "minimum": 0,
            "type": "integer"
          },
          "start_processing_block_hash": {
            "$ref": "#/components/schemas/FullHashNullable"
          },
          "start_processing_block_number": {
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          },
          "timestamp": {
            "$ref": "#/components/schemas/TimestampNullable"
          },
          "type": {
            "enum": [
              "L1",
              "L2"
            ],
            "type": "string"
          }
        },
        "required": [
          "number",
          "type",
          "start_block_number",
          "end_block_number",
          "timestamp",
          "is_finalized",
          "distribution",
          "start_processing_block_hash",
          "start_processing_block_number",
          "end_processing_block_hash",
          "end_processing_block_number",
          "aggregated_election_rewards"
        ],
        "title": "CeloEpochDetailed",
        "type": "object"
      },
      "CoinBalance": {
        "additionalProperties": false,
        "properties": {
          "block_number": {
            "type": "integer"
          },
          "block_timestamp": {
            "$ref": "#/components/schemas/Timestamp"
          },
          "delta": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "transaction_hash": {
            "$ref": "#/components/schemas/FullHashNullable"
          },
          "value": {
            "$ref": "#/components/schemas/IntegerString"
          }
        },
        "required": [
          "transaction_hash",
          "block_number",
          "delta",
          "value",
          "block_timestamp"
        ],
        "title": "CoinBalance",
        "type": "object"
      },
      "CoinBalanceByDay": {
        "additionalProperties": false,
        "properties": {
          "date": {
            "format": "date",
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/IntegerString"
          }
        },
        "required": [
          "date",
          "value"
        ],
        "title": "CoinBalanceByDay",
        "type": "object"
      },
      "CommitmentTransaction": {
        "additionalProperties": false,
        "description": "Parent chain transaction that committed the batch.",
        "properties": {
          "block_number": {
            "description": "Parent chain block number containing this transaction.",
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          },
          "hash": {
            "$ref": "#/components/schemas/FullHashNullable"
          },
          "status": {
            "description": "Finalization status of the Parent chain transaction.",
            "enum": [
              "unfinalized",
              "finalized"
            ],
            "nullable": true,
            "type": "string"
          },
          "timestamp": {
            "$ref": "#/components/schemas/TimestampNullable"
          }
        },
        "required": [
          "hash",
          "block_number",
          "timestamp",
          "status"
        ],
        "title": "CommitmentTransaction",
        "type": "object"
      },
      "Counter": {
        "additionalProperties": false,
        "properties": {
          "withdrawals_count": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "withdrawals_sum": {
            "$ref": "#/components/schemas/IntegerString"
          }
        },
        "required": [
          "withdrawals_count",
          "withdrawals_sum"
        ],
        "title": "Counter",
        "type": "object"
      },
      "Counters": {
        "description": "Smart contracts counters",
        "properties": {
          "new_smart_contracts_24h": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "new_verified_smart_contracts_24h": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "smart_contracts": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "verified_smart_contracts": {
            "$ref": "#/components/schemas/IntegerString"
          }
        },
        "title": "Counters",
        "type": "object"
      },
      "DecodedInput": {
        "additionalProperties": false,
        "properties": {
          "method_call": {
            "nullable": true,
            "type": "string"
          },
          "method_id": {
            "nullable": true,
            "type": "string"
          },
          "parameters": {
            "items": {
              "additionalProperties": false,
              "properties": {
                "name": {
                  "type": "string"
                },
                "type": {
                  "type": "string"
                },
                "value": {
                  "anyOf": [
                    {
                      "type": "object"
                    },
                    {
                      "items": {
                        "anyOf": [
                          {
                            "type": "object"
                          },
                          {
                            "items": {
                              "type": "string"
                            },
                            "type": "array"
                          },
                          {
                            "type": "string"
                          }
                        ]
                      },
                      "type": "array"
                    },
                    {
                      "type": "string"
                    }
                  ]
                }
              },
              "type": "object"
            },
            "type": "array"
          }
        },
        "required": [
          "method_id",
          "method_call",
          "parameters"
        ],
        "title": "DecodedInput",
        "type": "object"
      },
      "DecodedLogInput": {
        "additionalProperties": false,
        "properties": {
          "abi": {
            "nullable": true,
            "type": "object"
          },
          "method_call": {
            "nullable": true,
            "type": "string"
          },
          "method_id": {
            "nullable": true,
            "type": "string"
          },
          "parameters": {
            "items": {
              "additionalProperties": false,
              "properties": {
                "indexed": {
                  "type": "boolean"
                },
                "name": {
                  "type": "string"
                },
                "type": {
                  "type": "string"
                },
                "value": {
                  "anyOf": [
                    {
                      "type": "object"
                    },
                    {
                      "items": {
                        "anyOf": [
                          {
                            "type": "object"
                          },
                          {
                            "items": {
                              "type": "string"
                            },
                            "type": "array"
                          },
                          {
                            "type": "string"
                          }
                        ]
                      },
                      "type": "array"
                    },
                    {
                      "type": "string"
                    }
                  ]
                }
              },
              "required": [
                "name",
                "type",
                "indexed",
                "value"
              ],
              "type": "object"
            },
            "type": "array"
          }
        },
        "required": [
          "method_id",
          "method_call",
          "parameters"
        ],
        "title": "DecodedLogInput",
        "type": "object"
      },
      "Deposit": {
        "additionalProperties": false,
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "block_hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "block_number": {
            "type": "integer"
          },
          "block_timestamp": {
            "$ref": "#/components/schemas/Timestamp"
          },
          "from_address": {
            "$ref": "#/components/schemas/Address"
          },
          "index": {
            "type": "integer"
          },
          "pubkey": {
            "pattern": "^0x([A-Fa-f0-9]{96})$",
            "type": "string"
          },
          "signature": {
            "pattern": "^0x([A-Fa-f0-9]{192})$",
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/Beacon.Deposit.Status"
          },
          "transaction_hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "withdrawal_address": {
            "$ref": "#/components/schemas/AddressNullable"
          },
          "withdrawal_credentials": {
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          }
        },
        "required": [
          "index",
          "transaction_hash",
          "block_hash",
          "block_number",
          "block_timestamp",
          "pubkey",
          "withdrawal_credentials",
          "amount",
          "signature",
          "status",
          "from_address"
        ],
        "title": "Deposit",
        "type": "object"
      },
      "DomainsExtractorBatchResolveAddressNamesBody": {
        "properties": {
          "addresses": {
            "items": {
              "type": "string"
            },
            "title": "List of requested addresses",
            "type": "array"
          }
        },
        "type": "object"
      },
      "Eigenda": {
        "additionalProperties": false,
        "description": "EigenDA data availability blob reference.",
        "properties": {
          "batch_data_container": {
            "enum": [
              "in_eigenda"
            ],
            "type": "string"
          },
          "blob_header": {
            "description": "ABI-encoded EigenDA blob header.",
            "nullable": true,
            "type": "string"
          },
          "blob_verification_proof": {
            "description": "ABI-encoded EigenDA blob verification proof.",
            "nullable": true,
            "type": "string"
          }
        },
        "required": [
          "batch_data_container",
          "blob_header",
          "blob_verification_proof"
        ],
        "title": "Eigenda",
        "type": "object"
      },
      "ElectionReward": {
        "additionalProperties": false,
        "properties": {
          "account": {
            "$ref": "#/components/schemas/Address"
          },
          "amount": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "associated_account": {
            "$ref": "#/components/schemas/Address"
          },
          "block_hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "block_number": {
            "type": "integer"
          },
          "block_timestamp": {
            "$ref": "#/components/schemas/Timestamp"
          },
          "epoch_number": {
            "type": "integer"
          },
          "token": {
            "$ref": "#/components/schemas/Token"
          },
          "type": {
            "$ref": "#/components/schemas/CeloElectionRewardType"
          }
        },
        "required": [
          "amount",
          "account",
          "associated_account"
        ],
        "title": "ElectionReward",
        "type": "object"
      },
      "EmptyString": {
        "maxLength": 0,
        "minLength": 0,
        "title": "EmptyString",
        "type": "string"
      },
      "Epoch": {
        "additionalProperties": false,
        "description": "Celo epoch summary.",
        "properties": {
          "distribution": {
            "additionalProperties": true,
            "nullable": true,
            "type": "object"
          },
          "end_block_number": {
            "minimum": 0,
            "type": "integer"
          },
          "is_finalized": {
            "type": "boolean"
          },
          "number": {
            "minimum": 0,
            "type": "integer"
          },
          "start_block_number": {
            "minimum": 0,
            "type": "integer"
          },
          "timestamp": {
            "$ref": "#/components/schemas/TimestampNullable"
          },
          "type": {
            "enum": [
              "L1",
              "L2"
            ],
            "type": "string"
          }
        },
        "required": [
          "number",
          "type",
          "start_block_number",
          "end_block_number",
          "timestamp",
          "is_finalized",
          "distribution"
        ],
        "title": "Epoch",
        "type": "object"
      },
      "EthBlockNumberResult": {
        "description": "Hex-encoded latest block number on the chain. Nullable in the schema for defensive reasons; always present in practice.",
        "nullable": true,
        "pattern": "^0x([A-Fa-f0-9]+)$",
        "title": "EthBlockNumberResult",
        "type": "string"
      },
      "EthCallResult": {
        "description": "Hex-encoded return data from the executed call. May be `0x` if the call returned no data.",
        "pattern": "^0x([A-Fa-f0-9]*)$",
        "title": "EthCallResult",
        "type": "string"
      },
      "EthGetBalanceResult": {
        "description": "Hex-encoded account balance in wei. Always at least one digit (`0x0` for zero).",
        "pattern": "^0x([A-Fa-f0-9]+)$",
        "title": "EthGetBalanceResult",
        "type": "string"
      },
      "EthGetLogsResult": {
        "properties": {
          "address": {
            "$ref": "#/components/schemas/AddressHash"
          },
          "blockHash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "blockNumber": {
            "description": "Hex-encoded block number.",
            "pattern": "^0x([A-Fa-f0-9]+)$",
            "type": "string"
          },
          "data": {
            "description": "Hex-encoded event data payload.",
            "pattern": "^0x([A-Fa-f0-9]*)$",
            "type": "string"
          },
          "logIndex": {
            "description": "Hex-encoded position of the log within the block.",
            "pattern": "^0x([A-Fa-f0-9]+)$",
            "type": "string"
          },
          "removed": {
            "description": "`true` if the log was removed due to a chain reorganization.",
            "type": "boolean"
          },
          "topics": {
            "description": "Indexed event topics. Up to four 32-byte hex strings; unused slots are `null`.",
            "items": {
              "$ref": "#/components/schemas/FullHashNullable"
            },
            "type": "array"
          },
          "transactionHash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "transactionIndex": {
            "description": "Hex-encoded position of the transaction within the block.",
            "pattern": "^0x([A-Fa-f0-9]+)$",
            "type": "string"
          }
        },
        "required": [
          "address",
          "blockHash",
          "blockNumber",
          "data",
          "logIndex",
          "removed",
          "topics",
          "transactionHash",
          "transactionIndex"
        ],
        "title": "EthGetLogsResult",
        "type": "object"
      },
      "EthGetStorageAtResult": {
        "description": "Hex-encoded 32-byte storage value at the requested slot.",
        "pattern": "^0x([A-Fa-f0-9]{64})$",
        "title": "EthGetStorageAtResult",
        "type": "string"
      },
      "EthSendRawTransactionResult": {
        "description": "Hash of the submitted transaction — 32 bytes, hex-encoded.",
        "example": "0xe670ec64341771606e55d6b4ca35a1a6b75ee3d5145a99d05921026d1527331e",
        "pattern": "^0x([A-Fa-f0-9]{64})$",
        "title": "EthSendRawTransactionResult",
        "type": "string"
      },
      "Factory": {
        "additionalProperties": false,
        "description": "Factory struct.",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "total_accounts": {
            "minimum": 0,
            "type": "integer"
          }
        },
        "required": [
          "address",
          "total_accounts"
        ],
        "title": "Factory",
        "type": "object"
      },
      "Fee": {
        "additionalProperties": false,
        "properties": {
          "type": {
            "enum": [
              "maximum",
              "actual"
            ],
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          }
        },
        "required": [
          "type",
          "value"
        ],
        "title": "Fee",
        "type": "object"
      },
      "FheOperation": {
        "additionalProperties": false,
        "properties": {
          "block_number": {
            "example": 12345678,
            "type": "integer"
          },
          "caller": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "nullable": true
          },
          "fhe_type": {
            "enum": [
              "Bool",
              "Uint8",
              "Uint16",
              "Uint32",
              "Uint64",
              "Uint128",
              "Uint160",
              "Uint256",
              "Bytes64",
              "Bytes128",
              "Bytes256"
            ],
            "example": "Uint8",
            "type": "string"
          },
          "hcu_cost": {
            "example": 100,
            "minimum": 0,
            "type": "integer"
          },
          "hcu_depth": {
            "example": 1,
            "minimum": 0,
            "type": "integer"
          },
          "inputs": {
            "additionalProperties": false,
            "properties": {
              "control": {
                "nullable": true,
                "type": "string"
              },
              "ct": {
                "nullable": true,
                "type": "string"
              },
              "if_false": {
                "nullable": true,
                "type": "string"
              },
              "if_true": {
                "nullable": true,
                "type": "string"
              },
              "lhs": {
                "nullable": true,
                "type": "string"
              },
              "plaintext": {
                "nullable": true,
                "type": "number"
              },
              "rhs": {
                "nullable": true,
                "type": "string"
              }
            },
            "type": "object"
          },
          "is_scalar": {
            "example": false,
            "type": "boolean"
          },
          "log_index": {
            "type": "integer"
          },
          "operation": {
            "example": "FheAdd",
            "type": "string"
          },
          "result": {
            "$ref": "#/components/schemas/HexData"
          },
          "type": {
            "enum": [
              "arithmetic",
              "bitwise",
              "comparison",
              "unary",
              "control",
              "encryption",
              "random"
            ],
            "example": "arithmetic",
            "type": "string"
          }
        },
        "required": [
          "log_index",
          "operation",
          "type",
          "fhe_type",
          "is_scalar",
          "hcu_cost",
          "hcu_depth",
          "inputs",
          "result",
          "block_number"
        ],
        "title": "FheOperation",
        "type": "object"
      },
      "FheOperationsResponse": {
        "additionalProperties": false,
        "properties": {
          "items": {
            "items": {
              "allOf": [
                {
                  "$ref": "#/components/schemas/FheOperation"
                }
              ]
            },
            "type": "array"
          },
          "max_depth_hcu": {
            "description": "Maximum HCU depth across all operations in the transaction",
            "example": 3,
            "minimum": 0,
            "type": "integer"
          },
          "operation_count": {
            "description": "Total number of FHE operations in the transaction",
            "example": 5,
            "minimum": 0,
            "type": "integer"
          },
          "total_hcu": {
            "description": "Total HCU (Homomorphic Compute Units) cost for all operations in the transaction",
            "example": 500,
            "minimum": 0,
            "type": "integer"
          }
        },
        "required": [
          "items",
          "total_hcu",
          "max_depth_hcu",
          "operation_count"
        ],
        "title": "FheOperationsResponse",
        "type": "object"
      },
      "FloatString": {
        "pattern": "^([1-9][0-9]*|0)(\\.[0-9]+)?$",
        "title": "FloatString",
        "type": "string"
      },
      "FloatStringNullable": {
        "nullable": true,
        "pattern": "^([1-9][0-9]*|0)(\\.[0-9]+)?$",
        "title": "FloatStringNullable",
        "type": "string"
      },
      "ForbiddenResponse": {
        "description": "Response returned when the user is forbidden to access the resource",
        "properties": {
          "message": {
            "description": "Error message indicating the user is forbidden to access the resource",
            "example": "Unverified email",
            "type": "string"
          }
        },
        "title": "ForbiddenResponse",
        "type": "object"
      },
      "FullHash": {
        "pattern": "^0x([A-Fa-f0-9]{64})$",
        "title": "FullHash",
        "type": "string"
      },
      "FullHashNullable": {
        "nullable": true,
        "pattern": "^0x([A-Fa-f0-9]{64})$",
        "title": "FullHashNullable",
        "type": "string"
      },
      "Game": {
        "additionalProperties": false,
        "description": "Optimism Dispute Game struct.",
        "properties": {
          "contract_address_hash": {
            "$ref": "#/components/schemas/AddressHash"
          },
          "created_at": {
            "$ref": "#/components/schemas/Timestamp"
          },
          "game_type": {
            "type": "integer"
          },
          "index": {
            "type": "integer"
          },
          "l2_block_number": {
            "type": "integer"
          },
          "resolved_at": {
            "$ref": "#/components/schemas/TimestampNullable"
          },
          "status": {
            "enum": [
              "In progress",
              "Challenger wins",
              "Defender wins"
            ],
            "type": "string"
          }
        },
        "required": [
          "contract_address_hash",
          "created_at",
          "game_type",
          "index",
          "l2_block_number",
          "resolved_at",
          "status"
        ],
        "title": "Game",
        "type": "object"
      },
      "GetBlockNumberByTimeResult": {
        "additionalProperties": false,
        "description": "Block number closest to the requested timestamp; `null` if the lookup fails.",
        "nullable": true,
        "properties": {
          "blockNumber": {
            "description": "Decimal-string block number.",
            "pattern": "^-?([1-9][0-9]*|0)$",
            "type": "string"
          }
        },
        "required": [
          "blockNumber"
        ],
        "title": "GetBlockNumberByTimeResult",
        "type": "object"
      },
      "HexData": {
        "pattern": "^0x([A-Fa-f0-9]*)$",
        "title": "HexData",
        "type": "string"
      },
      "HexDataNullable": {
        "nullable": true,
        "pattern": "^0x([A-Fa-f0-9]*)$",
        "title": "HexDataNullable",
        "type": "string"
      },
      "HexQuantity": {
        "pattern": "^0x([A-Fa-f0-9]+)$",
        "title": "HexQuantity",
        "type": "string"
      },
      "HotContract": {
        "additionalProperties": false,
        "properties": {
          "balance": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "contract_address": {
            "$ref": "#/components/schemas/Address"
          },
          "total_gas_used": {
            "minimum": 1,
            "type": "integer"
          },
          "transactions_count": {
            "minimum": 1,
            "type": "integer"
          }
        },
        "required": [
          "contract_address",
          "transactions_count",
          "total_gas_used",
          "balance"
        ],
        "title": "HotContract",
        "type": "object"
      },
      "Implementation": {
        "additionalProperties": false,
        "description": "Proxy smart contract implementation",
        "properties": {
          "address_hash": {
            "$ref": "#/components/schemas/AddressHash"
          },
          "name": {
            "nullable": true,
            "type": "string"
          }
        },
        "required": [
          "address_hash",
          "name"
        ],
        "title": "Implementation",
        "type": "object"
      },
      "IntegerString": {
        "pattern": "^-?([1-9][0-9]*|0)$",
        "title": "IntegerString",
        "type": "string"
      },
      "IntegerStringNullable": {
        "nullable": true,
        "pattern": "^-?([1-9][0-9]*|0)$",
        "title": "IntegerStringNullable",
        "type": "string"
      },
      "IntegerStringOrEmptyOrNullLiteral": {
        "oneOf": [
          {
            "pattern": "^([1-9][0-9]*|0)$",
            "type": "string"
          },
          {
            "enum": [
              "",
              "null"
            ],
            "type": "string"
          }
        ],
        "title": "IntegerStringOrEmptyOrNullLiteral"
      },
      "InternalTransaction": {
        "additionalProperties": false,
        "properties": {
          "block_number": {
            "type": "integer"
          },
          "created_contract": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "nullable": true
          },
          "error": {
            "nullable": true,
            "type": "string"
          },
          "from": {
            "$ref": "#/components/schemas/Address"
          },
          "gas_limit": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "index": {
            "description": "The index of this internal transaction inside the transaction.",
            "type": "integer"
          },
          "success": {
            "type": "boolean"
          },
          "timestamp": {
            "$ref": "#/components/schemas/Timestamp"
          },
          "to": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "nullable": true
          },
          "transaction_hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "transaction_index": {
            "description": "The index of the parent transaction inside the block.",
            "type": "integer"
          },
          "type": {
            "description": "Type of the internal transaction (call, create, etc.)",
            "type": "string"
          },
          "value": {
            "$ref": "#/components/schemas/IntegerString"
          }
        },
        "required": [
          "error",
          "success",
          "type",
          "transaction_hash",
          "transaction_index",
          "from",
          "to",
          "created_contract",
          "value",
          "block_number",
          "timestamp",
          "index",
          "gas_limit"
        ],
        "title": "InternalTransaction",
        "type": "object"
      },
      "JsonErrorResponse": {
        "properties": {
          "errors": {
            "items": {
              "properties": {
                "detail": {
                  "example": "null value where string expected",
                  "type": "string"
                },
                "source": {
                  "properties": {
                    "pointer": {
                      "example": "/data/attributes/petName",
                      "type": "string"
                    }
                  },
                  "required": [
                    "pointer"
                  ],
                  "type": "object"
                },
                "title": {
                  "example": "Invalid value",
                  "type": "string"
                }
              },
              "required": [
                "title",
                "source",
                "detail"
              ],
              "type": "object"
            },
            "type": "array"
          }
        },
        "required": [
          "errors"
        ],
        "title": "JsonErrorResponse",
        "type": "object"
      },
      "Language": {
        "enum": [
          "solidity",
          "vyper",
          "yul",
          "geas",
          "stylus_rust"
        ],
        "title": "Language",
        "type": "string"
      },
      "Log": {
        "additionalProperties": false,
        "properties": {
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "block_hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "block_number": {
            "type": "integer"
          },
          "block_timestamp": {
            "$ref": "#/components/schemas/TimestampNullable"
          },
          "data": {
            "$ref": "#/components/schemas/HexData"
          },
          "decoded": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DecodedLogInput"
              }
            ],
            "nullable": true
          },
          "index": {
            "type": "integer"
          },
          "smart_contract": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "nullable": true
          },
          "topics": {
            "items": {
              "$ref": "#/components/schemas/HexDataNullable"
            },
            "type": "array"
          },
          "transaction_hash": {
            "$ref": "#/components/schemas/FullHash"
          }
        },
        "required": [
          "transaction_hash",
          "address",
          "topics",
          "data",
          "index",
          "decoded",
          "smart_contract",
          "block_hash",
          "block_number",
          "block_timestamp"
        ],
        "title": "Log",
        "type": "object"
      },
      "MainPage": {
        "additionalProperties": false,
        "description": "Optimism Deposit struct for the main page.",
        "properties": {
          "l1_block_number": {
            "type": "integer"
          },
          "l1_block_timestamp": {
            "$ref": "#/components/schemas/Timestamp"
          },
          "l1_transaction_hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "l2_transaction_hash": {
            "$ref": "#/components/schemas/FullHash"
          }
        },
        "required": [
          "l1_block_number",
          "l1_block_timestamp",
          "l1_transaction_hash",
          "l2_transaction_hash"
        ],
        "title": "MainPage",
        "type": "object"
      },
      "Metadata": {
        "additionalProperties": false,
        "description": "Metadata struct",
        "properties": {
          "tags": {
            "description": "Metadata tags linked with the address",
            "items": {
              "$ref": "#/components/schemas/MetadataTag"
            },
            "type": "array"
          }
        },
        "required": [
          "tags"
        ],
        "title": "Metadata",
        "type": "object"
      },
      "MetadataTag": {
        "additionalProperties": false,
        "description": "Metadata tag struct",
        "properties": {
          "meta": {
            "additionalProperties": true,
            "nullable": true,
            "type": "object"
          },
          "name": {
            "type": "string"
          },
          "ordinal": {
            "type": "integer"
          },
          "slug": {
            "type": "string"
          },
          "tagType": {
            "enum": [
              "name",
              "generic",
              "classifier",
              "information",
              "note",
              "protocol"
            ],
            "type": "string"
          }
        },
        "required": [
          "slug",
          "name",
          "tagType",
          "ordinal",
          "meta"
        ],
        "title": "MetadataTag",
        "type": "object"
      },
      "MethodNameNullable": {
        "description": "Method name or hex method id",
        "example": "transfer",
        "nullable": true,
        "title": "MethodNameNullable",
        "type": "string"
      },
      "MinimalMessage": {
        "additionalProperties": false,
        "description": "Minimal Arbitrum cross-chain message with origination and completion fields.",
        "properties": {
          "completion_transaction_hash": {
            "description": "Hash of the transaction on the destination chain that executed this message.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "origination_timestamp": {
            "$ref": "#/components/schemas/TimestampNullable"
          },
          "origination_transaction_block_number": {
            "description": "Block number on the originating chain containing the initiation transaction.",
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          },
          "origination_transaction_hash": {
            "description": "Hash of the transaction on the originating chain that initiated this message.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          }
        },
        "required": [
          "origination_transaction_hash",
          "origination_timestamp",
          "origination_transaction_block_number",
          "completion_transaction_hash"
        ],
        "title": "MinimalMessage",
        "type": "object"
      },
      "NFTCollection": {
        "additionalProperties": false,
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "token": {
            "$ref": "#/components/schemas/Token"
          },
          "token_instances": {
            "items": {
              "$ref": "#/components/schemas/TokenInstanceInList"
            },
            "type": "array"
          }
        },
        "required": [
          "token",
          "amount",
          "token_instances"
        ],
        "title": "NFTCollection",
        "type": "object"
      },
      "NotFoundResponse": {
        "description": "Response returned when the requested resource is not found",
        "properties": {
          "message": {
            "description": "Error message indicating the requested resource was not found",
            "example": "Resource not found",
            "type": "string"
          }
        },
        "title": "NotFoundResponse",
        "type": "object"
      },
      "NotImplementedResponse": {
        "description": "Response returned when the feature is not implemented",
        "properties": {
          "message": {
            "description": "Error message indicating the feature is not implemented",
            "example": "Feature not implemented",
            "type": "string"
          }
        },
        "title": "NotImplementedResponse",
        "type": "object"
      },
      "NullString": {
        "pattern": "^null$",
        "title": "NullString",
        "type": "string"
      },
      "Optimism.Batch": {
        "additionalProperties": false,
        "description": "Optimism Batch struct.",
        "properties": {
          "batch_data_container": {
            "enum": [
              "in_blob4844",
              "in_celestia",
              "in_eigenda",
              "in_alt_da",
              "in_calldata"
            ],
            "nullable": true,
            "type": "string"
          },
          "l1_timestamp": {
            "$ref": "#/components/schemas/Timestamp"
          },
          "l1_transaction_hashes": {
            "items": {
              "$ref": "#/components/schemas/FullHash"
            },
            "type": "array"
          },
          "l2_end_block_number": {
            "type": "integer"
          },
          "l2_start_block_number": {
            "type": "integer"
          },
          "number": {
            "type": "integer"
          },
          "transactions_count": {
            "type": "integer"
          }
        },
        "required": [
          "number",
          "transactions_count",
          "l1_timestamp",
          "l1_transaction_hashes",
          "batch_data_container",
          "l2_end_block_number",
          "l2_start_block_number"
        ],
        "title": "Optimism.Batch",
        "type": "object"
      },
      "Optimism.Batch.Detailed": {
        "additionalProperties": false,
        "description": "Optimism Batch struct.",
        "nullable": true,
        "properties": {
          "batch_data_container": {
            "enum": [
              "in_blob4844",
              "in_celestia",
              "in_eigenda",
              "in_alt_da",
              "in_calldata"
            ],
            "nullable": true,
            "type": "string"
          },
          "blobs": {
            "items": {
              "additionalProperties": false,
              "description": "Blob struct bound with Optimism batch.",
              "properties": {
                "cert": {
                  "description": "EigenDA cert raw bytes.",
                  "pattern": "^0x([A-Fa-f0-9]*)$",
                  "type": "string"
                },
                "commitment": {
                  "description": "Celestia or Alt-DA blob commitment.",
                  "pattern": "^0x([A-Fa-f0-9]*)$",
                  "type": "string"
                },
                "hash": {
                  "description": "EIP-4844 blob hash.",
                  "pattern": "^0x([A-Fa-f0-9]*)$",
                  "type": "string"
                },
                "height": {
                  "description": "Celestia block height.",
                  "type": "integer"
                },
                "l1_timestamp": {
                  "description": "L1 transaction timestamp bound with the blob.",
                  "format": "date-time",
                  "type": "string"
                },
                "l1_transaction_hash": {
                  "description": "L1 transaction hash bound with the blob.",
                  "pattern": "^0x([A-Fa-f0-9]{64})$",
                  "type": "string"
                },
                "namespace": {
                  "description": "Celestia blob namespace.",
                  "pattern": "^0x([A-Fa-f0-9]*)$",
                  "type": "string"
                }
              },
              "required": [
                "l1_transaction_hash",
                "l1_timestamp"
              ],
              "type": "object"
            },
            "type": "array"
          },
          "l1_timestamp": {
            "$ref": "#/components/schemas/Timestamp"
          },
          "l1_transaction_hashes": {
            "items": {
              "$ref": "#/components/schemas/FullHash"
            },
            "type": "array"
          },
          "l2_end_block_number": {
            "type": "integer"
          },
          "l2_start_block_number": {
            "type": "integer"
          },
          "number": {
            "type": "integer"
          },
          "transactions_count": {
            "type": "integer"
          }
        },
        "required": [
          "number",
          "transactions_count",
          "l1_timestamp",
          "l1_transaction_hashes",
          "batch_data_container",
          "l2_end_block_number",
          "l2_start_block_number"
        ],
        "title": "Optimism.Batch.Detailed",
        "type": "object"
      },
      "OutputRoot": {
        "additionalProperties": false,
        "description": "Optimism Output Root struct.",
        "properties": {
          "l1_block_number": {
            "type": "integer"
          },
          "l1_timestamp": {
            "$ref": "#/components/schemas/Timestamp"
          },
          "l1_transaction_hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "l2_block_number": {
            "type": "integer"
          },
          "l2_output_index": {
            "type": "integer"
          },
          "output_root": {
            "$ref": "#/components/schemas/FullHash"
          }
        },
        "required": [
          "l1_block_number",
          "l1_timestamp",
          "l1_transaction_hash",
          "l2_block_number",
          "l2_output_index",
          "output_root"
        ],
        "title": "OutputRoot",
        "type": "object"
      },
      "Paymaster": {
        "additionalProperties": false,
        "description": "Paymaster struct.",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "total_ops": {
            "minimum": 0,
            "type": "integer"
          }
        },
        "required": [
          "address",
          "total_ops"
        ],
        "title": "Paymaster",
        "type": "object"
      },
      "ProxyType": {
        "enum": [
          "eip1167",
          "eip1967",
          "eip1822",
          "eip1967_oz",
          "eip1967_beacon",
          "master_copy",
          "basic_implementation",
          "basic_get_implementation",
          "comptroller",
          "eip2535",
          "clone_with_immutable_arguments",
          "eip7702",
          "resolved_delegate_proxy",
          "erc7760",
          "minimal_proxy"
        ],
        "nullable": true,
        "title": "ProxyType",
        "type": "string"
      },
      "RawTrace": {
        "items": {
          "additionalProperties": false,
          "properties": {
            "action": {
              "additionalProperties": false,
              "properties": {
                "callType": {
                  "enum": [
                    "call",
                    "callcode",
                    "delegatecall",
                    "staticcall"
                  ],
                  "type": "string"
                },
                "from": {
                  "$ref": "#/components/schemas/AddressHash"
                },
                "gas": {
                  "$ref": "#/components/schemas/HexData"
                },
                "init": {
                  "$ref": "#/components/schemas/HexData"
                },
                "input": {
                  "$ref": "#/components/schemas/HexData"
                },
                "to": {
                  "$ref": "#/components/schemas/AddressHash"
                },
                "value": {
                  "$ref": "#/components/schemas/HexData"
                }
              },
              "required": [
                "from",
                "gas",
                "input",
                "value"
              ],
              "type": "object"
            },
            "result": {
              "additionalProperties": false,
              "properties": {
                "gasUsed": {
                  "$ref": "#/components/schemas/HexData"
                },
                "output": {
                  "$ref": "#/components/schemas/HexData"
                }
              },
              "required": [
                "gasUsed",
                "output"
              ],
              "type": "object"
            },
            "subtraces": {
              "minimum": 0,
              "type": "integer"
            },
            "traceAddress": {
              "items": {
                "type": "integer"
              },
              "type": "array"
            },
            "transactionHash": {
              "$ref": "#/components/schemas/FullHashNullable"
            },
            "type": {
              "enum": [
                "call",
                "create",
                "create2",
                "reward",
                "selfdestruct",
                "stop",
                "invalid"
              ],
              "type": "string"
            }
          },
          "required": [
            "action",
            "subtraces",
            "traceAddress",
            "type"
          ],
          "type": "object"
        },
        "title": "RawTrace",
        "type": "array"
      },
      "Response": {
        "properties": {
          "expires_at": {
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "file_id": {
            "nullable": true,
            "type": "string"
          },
          "status": {
            "enum": [
              "pending",
              "completed",
              "failed"
            ],
            "type": "string"
          }
        },
        "title": "Response",
        "type": "object"
      },
      "Scroll.Batch": {
        "additionalProperties": false,
        "description": "Scroll Batch struct.",
        "properties": {
          "commitment_transaction": {
            "additionalProperties": false,
            "properties": {
              "block_number": {
                "type": "integer"
              },
              "hash": {
                "$ref": "#/components/schemas/FullHash"
              },
              "timestamp": {
                "$ref": "#/components/schemas/Timestamp"
              }
            },
            "required": [
              "block_number",
              "hash",
              "timestamp"
            ],
            "type": "object"
          },
          "confirmation_transaction": {
            "additionalProperties": false,
            "properties": {
              "block_number": {
                "nullable": true,
                "type": "integer"
              },
              "hash": {
                "$ref": "#/components/schemas/FullHashNullable"
              },
              "timestamp": {
                "$ref": "#/components/schemas/TimestampNullable"
              }
            },
            "required": [
              "block_number",
              "hash",
              "timestamp"
            ],
            "type": "object"
          },
          "data_availability": {
            "additionalProperties": false,
            "properties": {
              "batch_data_container": {
                "enum": [
                  "in_blob4844",
                  "in_calldata"
                ],
                "type": "string"
              }
            },
            "required": [
              "batch_data_container"
            ],
            "type": "object"
          },
          "end_block_number": {
            "nullable": true,
            "type": "integer"
          },
          "number": {
            "type": "integer"
          },
          "start_block_number": {
            "nullable": true,
            "type": "integer"
          },
          "transactions_count": {
            "nullable": true,
            "type": "integer"
          }
        },
        "required": [
          "number",
          "transactions_count",
          "start_block_number",
          "end_block_number",
          "data_availability",
          "commitment_transaction",
          "confirmation_transaction"
        ],
        "title": "Scroll.Batch",
        "type": "object"
      },
      "SearchResult": {
        "description": "Search results containing blocks, transactions, and addresses",
        "properties": {
          "items": {
            "items": {
              "type": "object"
            },
            "type": "array"
          },
          "next_page_params": {
            "additionalProperties": true,
            "nullable": true,
            "type": "object"
          }
        },
        "title": "SearchResult",
        "type": "object"
      },
      "ShibariumDeposit": {
        "additionalProperties": false,
        "description": "Shibarium deposit item that bridges assets from the parent chain to Shibarium.",
        "properties": {
          "l1_block_number": {
            "description": "Parent chain block in which the deposit was initiated.",
            "minimum": 0,
            "type": "integer"
          },
          "l1_transaction_hash": {
            "description": "Hash of the parent chain transaction that initiates the deposit.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "l2_transaction_hash": {
            "description": "Hash of the Shibarium transaction that completes the deposit.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "timestamp": {
            "description": "Timestamp of the parent chain block that contains the deposit transaction.",
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "user": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "description": "Address of the user that initiated the deposit on the parent chain; the same address acts as the recipient on Shibarium."
          }
        },
        "required": [
          "l1_block_number",
          "l1_transaction_hash",
          "l2_transaction_hash",
          "user",
          "timestamp"
        ],
        "title": "ShibariumDeposit",
        "type": "object"
      },
      "ShibariumWithdrawal": {
        "additionalProperties": false,
        "description": "Shibarium withdrawal item that bridges assets from Shibarium to the parent chain.",
        "properties": {
          "l1_transaction_hash": {
            "description": "Hash of the parent chain transaction that completes the withdrawal.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "l2_block_number": {
            "description": "Shibarium block in which the withdrawal was initiated.",
            "minimum": 0,
            "type": "integer"
          },
          "l2_transaction_hash": {
            "description": "Hash of the Shibarium transaction that initiates the withdrawal.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "timestamp": {
            "description": "Timestamp of the Shibarium block that contains the withdrawal transaction.",
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "user": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "description": "Address of the user that initiated the withdrawal on Shibarium; the same address acts as the recipient on the parent chain."
          }
        },
        "required": [
          "l2_block_number",
          "l2_transaction_hash",
          "l1_transaction_hash",
          "user",
          "timestamp"
        ],
        "title": "ShibariumWithdrawal",
        "type": "object"
      },
      "SignedAuthorization": {
        "additionalProperties": false,
        "properties": {
          "address_hash": {
            "$ref": "#/components/schemas/AddressHash"
          },
          "authority": {
            "$ref": "#/components/schemas/AddressHash"
          },
          "chain_id": {
            "type": "integer"
          },
          "nonce": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "r": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "s": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "status": {
            "enum": [
              "ok",
              "invalid_chain_id",
              "invalid_signature",
              "invalid_nonce"
            ],
            "nullable": true,
            "type": "string"
          },
          "v": {
            "type": "integer"
          }
        },
        "required": [
          "address_hash",
          "chain_id",
          "nonce",
          "r",
          "s",
          "v",
          "authority",
          "status"
        ],
        "title": "SignedAuthorization",
        "type": "object"
      },
      "SmartContract": {
        "additionalProperties": false,
        "description": "Smart contract",
        "properties": {
          "abi": {
            "items": {
              "type": "object"
            },
            "nullable": true,
            "type": "array"
          },
          "additional_sources": {
            "items": {
              "properties": {
                "file_path": {
                  "type": "string"
                },
                "source_code": {
                  "type": "string"
                }
              },
              "type": "object"
            },
            "nullable": true,
            "type": "array"
          },
          "can_be_visualized_via_sol2uml": {
            "nullable": true,
            "type": "boolean"
          },
          "certified": {
            "type": "boolean"
          },
          "coin_balance": {
            "nullable": true,
            "type": "string"
          },
          "compiler_settings": {
            "nullable": true,
            "type": "object"
          },
          "compiler_version": {
            "nullable": true,
            "type": "string"
          },
          "conflicting_implementations": {
            "items": {
              "type": "object"
            },
            "nullable": true,
            "type": "array"
          },
          "constructor_args": {
            "nullable": true,
            "type": "string"
          },
          "creation_bytecode": {
            "nullable": true,
            "type": "string"
          },
          "creation_status": {
            "nullable": true,
            "type": "string"
          },
          "decoded_constructor_args": {
            "items": {
              "items": {
                "anyOf": [
                  {
                    "type": "object"
                  },
                  {
                    "type": "string"
                  }
                ]
              },
              "type": "array"
            },
            "nullable": true,
            "type": "array"
          },
          "deployed_bytecode": {
            "nullable": true,
            "type": "string"
          },
          "evm_version": {
            "nullable": true,
            "type": "string"
          },
          "external_libraries": {
            "items": {
              "properties": {
                "address_hash": {
                  "$ref": "#/components/schemas/AddressHash"
                },
                "name": {
                  "nullable": true,
                  "type": "string"
                }
              },
              "type": "object"
            },
            "nullable": true,
            "type": "array"
          },
          "file_path": {
            "nullable": true,
            "type": "string"
          },
          "github_repository_metadata": {
            "nullable": true,
            "type": "object"
          },
          "has_constructor_args": {
            "nullable": true,
            "type": "boolean"
          },
          "implementations": {
            "items": {
              "properties": {
                "address_hash": {
                  "$ref": "#/components/schemas/AddressHash"
                },
                "name": {
                  "nullable": true,
                  "type": "string"
                }
              },
              "type": "object"
            },
            "nullable": true,
            "type": "array"
          },
          "is_blueprint": {
            "nullable": true,
            "type": "boolean"
          },
          "is_changed_bytecode": {
            "nullable": true,
            "type": "boolean"
          },
          "is_fully_verified": {
            "nullable": true,
            "type": "boolean"
          },
          "is_partially_verified": {
            "nullable": true,
            "type": "boolean"
          },
          "is_verified": {
            "nullable": true,
            "type": "boolean"
          },
          "is_verified_via_eth_bytecode_db": {
            "nullable": true,
            "type": "boolean"
          },
          "is_verified_via_sourcify": {
            "nullable": true,
            "type": "boolean"
          },
          "is_verified_via_verifier_alliance": {
            "nullable": true,
            "type": "boolean"
          },
          "language": {
            "enum": [
              "solidity",
              "vyper",
              "yul",
              "scilla",
              "stylus_rust",
              "geas"
            ],
            "nullable": true,
            "type": "string"
          },
          "license_type": {
            "nullable": true,
            "type": "string"
          },
          "market_cap": {
            "nullable": true,
            "type": "string"
          },
          "name": {
            "nullable": true,
            "type": "string"
          },
          "optimization_enabled": {
            "nullable": true,
            "type": "boolean"
          },
          "optimization_runs": {
            "nullable": true,
            "type": "integer"
          },
          "package_name": {
            "nullable": true,
            "type": "string"
          },
          "proxy_type": {
            "nullable": true,
            "type": "string"
          },
          "reputation": {
            "nullable": true,
            "type": "string"
          },
          "source_code": {
            "nullable": true,
            "type": "string"
          },
          "sourcify_repo_url": {
            "nullable": true,
            "type": "string"
          },
          "transactions_count": {
            "nullable": true,
            "type": "integer"
          },
          "verification_metadata": {
            "nullable": true,
            "type": "object"
          },
          "verified_at": {
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "verified_twin_address_hash": {
            "nullable": true,
            "type": "string"
          }
        },
        "required": [
          "proxy_type",
          "implementations",
          "conflicting_implementations",
          "deployed_bytecode",
          "creation_bytecode",
          "creation_status"
        ],
        "title": "SmartContract",
        "type": "object"
      },
      "SmartContractListItem": {
        "additionalProperties": false,
        "description": "Smart contract list item",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "certified": {
            "type": "boolean"
          },
          "coin_balance": {
            "nullable": true,
            "type": "string"
          },
          "compiler_version": {
            "nullable": true,
            "type": "string"
          },
          "github_repository_metadata": {
            "nullable": true,
            "type": "object"
          },
          "has_constructor_args": {
            "nullable": true,
            "type": "boolean"
          },
          "language": {
            "nullable": true,
            "type": "string"
          },
          "license_type": {
            "nullable": true,
            "type": "string"
          },
          "market_cap": {
            "nullable": true,
            "type": "string"
          },
          "optimization_enabled": {
            "nullable": true,
            "type": "boolean"
          },
          "package_name": {
            "nullable": true,
            "type": "string"
          },
          "reputation": {
            "nullable": true,
            "type": "string"
          },
          "transactions_count": {
            "nullable": true,
            "type": "integer"
          },
          "verified_at": {
            "format": "date-time",
            "nullable": true,
            "type": "string"
          }
        },
        "required": [
          "address",
          "compiler_version",
          "optimization_enabled",
          "language",
          "verified_at",
          "has_constructor_args",
          "license_type",
          "certified",
          "reputation"
        ],
        "title": "SmartContractListItem",
        "type": "object"
      },
      "StabilityValidator": {
        "additionalProperties": false,
        "description": "Validator on the Stability chain. Stability validators are the addresses authorized to produce blocks; each entry tracks the validator's operational state and the number of blocks it has produced so far.",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "blocks_validated_count": {
            "description": "Total number of blocks produced by this validator.",
            "minimum": 0,
            "type": "integer"
          },
          "state": {
            "description": "Operational state of the validator (`active` — producing blocks, `probation` — missed blocks but still in the active set, `inactive` — removed from the active set).",
            "enum": [
              "active",
              "probation",
              "inactive"
            ],
            "nullable": true,
            "type": "string"
          }
        },
        "required": [
          "address",
          "state",
          "blocks_validated_count"
        ],
        "title": "StabilityValidator",
        "type": "object"
      },
      "StabilityValidatorsCounters": {
        "additionalProperties": false,
        "description": "Aggregate counters describing the Stability chain validator set.",
        "example": {
          "active_validators_count": "3",
          "active_validators_percentage": 33.33,
          "new_validators_count_24h": "2",
          "validators_count": "9"
        },
        "properties": {
          "active_validators_count": {
            "description": "Number of validators currently in the `active` operational state.",
            "pattern": "^([1-9][0-9]*|0)$",
            "type": "string"
          },
          "active_validators_percentage": {
            "description": "Share of `active` validators in the total set, expressed as a percentage and floored to two decimal places. `null` when there are no validators.",
            "format": "float",
            "maximum": 100,
            "minimum": 0,
            "nullable": true,
            "type": "number"
          },
          "new_validators_count_24h": {
            "description": "Number of validators that joined the set within the last 24 hours.",
            "pattern": "^([1-9][0-9]*|0)$",
            "type": "string"
          },
          "validators_count": {
            "description": "Total number of validators known on the Stability chain across all operational states.",
            "pattern": "^([1-9][0-9]*|0)$",
            "type": "string"
          }
        },
        "required": [
          "validators_count",
          "new_validators_count_24h",
          "active_validators_count",
          "active_validators_percentage"
        ],
        "title": "StabilityValidatorsCounters",
        "type": "object"
      },
      "Staker": {
        "additionalProperties": false,
        "description": "Zilliqa Staker struct.",
        "properties": {
          "balance": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "bls_public_key": {
            "$ref": "#/components/schemas/HexData"
          },
          "index": {
            "type": "integer"
          }
        },
        "required": [
          "balance",
          "bls_public_key",
          "index"
        ],
        "title": "Staker",
        "type": "object"
      },
      "StakerDetailed": {
        "additionalProperties": false,
        "description": "Zilliqa Staker struct.",
        "properties": {
          "added_at_block_number": {
            "type": "integer"
          },
          "balance": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "bls_public_key": {
            "$ref": "#/components/schemas/HexData"
          },
          "control_address": {
            "$ref": "#/components/schemas/AddressNullable"
          },
          "index": {
            "type": "integer"
          },
          "peer_id": {
            "$ref": "#/components/schemas/HexDataNullable"
          },
          "reward_address": {
            "$ref": "#/components/schemas/AddressNullable"
          },
          "signing_address": {
            "$ref": "#/components/schemas/AddressNullable"
          },
          "stake_updated_at_block_number": {
            "type": "integer"
          }
        },
        "required": [
          "balance",
          "bls_public_key",
          "index",
          "peer_id",
          "control_address",
          "reward_address",
          "signing_address",
          "added_at_block_number",
          "stake_updated_at_block_number"
        ],
        "title": "StakerDetailed",
        "type": "object"
      },
      "StateChange": {
        "additionalProperties": false,
        "properties": {
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "balance_after": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "balance_before": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "change": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "is_miner": {
            "type": "boolean"
          },
          "token": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Token"
              }
            ],
            "nullable": true
          },
          "token_id": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "type": {
            "enum": [
              "token",
              "coin"
            ],
            "type": "string"
          }
        },
        "required": [
          "address",
          "balance_after",
          "balance_before",
          "change",
          "is_miner",
          "token",
          "type"
        ],
        "title": "StateChange",
        "type": "object"
      },
      "StatsResponse": {
        "description": "Stats response",
        "properties": {
          "average_block_time": {
            "format": "float",
            "type": "number"
          },
          "coin_image": {
            "nullable": true,
            "type": "string"
          },
          "coin_price": {
            "$ref": "#/components/schemas/FloatStringNullable"
          },
          "coin_price_change_percentage": {
            "format": "float",
            "nullable": true,
            "type": "number"
          },
          "gas_price_updated_at": {
            "$ref": "#/components/schemas/TimestampNullable"
          },
          "gas_prices": {
            "nullable": true,
            "type": "object"
          },
          "gas_prices_update_in": {
            "nullable": true,
            "type": "integer"
          },
          "gas_used_today": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/IntegerStringNullable"
              },
              {
                "type": "integer"
              }
            ]
          },
          "market_cap": {
            "$ref": "#/components/schemas/FloatString"
          },
          "network_utilization_percentage": {
            "nullable": true,
            "type": "number"
          },
          "secondary_coin_image": {
            "nullable": true,
            "type": "string"
          },
          "secondary_coin_price": {
            "$ref": "#/components/schemas/FloatStringNullable"
          },
          "static_gas_price": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "total_addresses": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "total_blocks": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "total_gas_used": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "total_transactions": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "transactions_today": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "tvl": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          }
        },
        "title": "StatsResponse",
        "type": "object"
      },
      "Summary": {
        "additionalProperties": false,
        "properties": {
          "data": {
            "additionalProperties": false,
            "properties": {
              "summaries": {
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "summary_template": {
                      "type": "string"
                    },
                    "summary_template_variables": {
                      "additionalProperties": {
                        "additionalProperties": false,
                        "properties": {
                          "type": {
                            "type": "string"
                          },
                          "value": {
                            "anyOf": [
                              {
                                "type": "string"
                              },
                              {
                                "type": "number"
                              },
                              {
                                "type": "object"
                              }
                            ]
                          }
                        },
                        "required": [
                          "type",
                          "value"
                        ],
                        "type": "object"
                      },
                      "type": "object"
                    }
                  },
                  "required": [
                    "summary_template",
                    "summary_template_variables"
                  ],
                  "type": "object"
                },
                "type": "array"
              }
            },
            "required": [
              "summaries"
            ],
            "type": "object"
          },
          "success": {
            "type": "boolean"
          }
        },
        "required": [
          "data",
          "success"
        ],
        "title": "Summary",
        "type": "object"
      },
      "SummaryJustRequestBody": {
        "additionalProperties": false,
        "properties": {
          "chain_id": {
            "nullable": true,
            "type": "integer"
          },
          "data": {
            "additionalProperties": false,
            "properties": {
              "decoded_input": {
                "nullable": true,
                "type": "object"
              },
              "from": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Address"
                  }
                ],
                "nullable": true
              },
              "hash": {
                "type": "string"
              },
              "internal_transactions": {
                "items": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/InternalTransaction"
                    }
                  ],
                  "nullable": true
                },
                "type": "array"
              },
              "method": {
                "nullable": true,
                "type": "string"
              },
              "raw_input": {
                "type": "string"
              },
              "status": {
                "type": "string"
              },
              "to": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Address"
                  }
                ],
                "nullable": true
              },
              "token_transfers": {
                "items": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/TokenTransfer"
                    }
                  ],
                  "nullable": true
                },
                "type": "array"
              },
              "transaction_types": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "type": {
                "nullable": true,
                "type": "integer"
              },
              "value": {
                "type": "string"
              }
            },
            "required": [
              "status",
              "type",
              "value",
              "hash",
              "from",
              "to",
              "method",
              "token_transfers",
              "internal_transactions",
              "transaction_types",
              "decoded_input",
              "raw_input"
            ],
            "type": "object"
          },
          "logs_data": {
            "additionalProperties": false,
            "properties": {
              "items": {
                "items": {
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/Log"
                    }
                  ],
                  "nullable": true
                },
                "type": "array"
              }
            },
            "required": [
              "items"
            ],
            "type": "object"
          }
        },
        "required": [
          "data"
        ],
        "title": "SummaryJustRequestBody",
        "type": "object"
      },
      "Tag": {
        "additionalProperties": false,
        "description": "Address tag struct",
        "properties": {
          "address_hash": {
            "$ref": "#/components/schemas/AddressHash"
          },
          "display_name": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "required": [
          "address_hash",
          "display_name",
          "label"
        ],
        "title": "Tag",
        "type": "object"
      },
      "Timestamp": {
        "format": "date-time",
        "title": "Timestamp",
        "type": "string"
      },
      "TimestampNullable": {
        "format": "date-time",
        "nullable": true,
        "title": "TimestampNullable",
        "type": "string"
      },
      "Token": {
        "additionalProperties": false,
        "description": "Token struct",
        "properties": {
          "address_hash": {
            "$ref": "#/components/schemas/AddressHash"
          },
          "bridge_type": {
            "description": "Type of bridge used for this bridged token",
            "enum": [
              "omni",
              "amb"
            ],
            "nullable": true,
            "type": "string"
          },
          "circulating_market_cap": {
            "$ref": "#/components/schemas/FloatStringNullable"
          },
          "circulating_supply": {
            "$ref": "#/components/schemas/FloatStringNullable"
          },
          "decimals": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "exchange_rate": {
            "$ref": "#/components/schemas/FloatStringNullable"
          },
          "foreign_address": {
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{40})$",
            "type": "string"
          },
          "holders_count": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "icon_url": {
            "$ref": "#/components/schemas/URLNullable"
          },
          "name": {
            "nullable": true,
            "type": "string"
          },
          "origin_chain_id": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "reputation": {
            "description": "Reputation of the token",
            "enum": [
              "ok",
              "scam"
            ],
            "nullable": true,
            "type": "string"
          },
          "symbol": {
            "nullable": true,
            "type": "string"
          },
          "total_supply": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "type": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TokenType"
              }
            ],
            "nullable": true
          },
          "volume_24h": {
            "$ref": "#/components/schemas/FloatStringNullable"
          }
        },
        "required": [
          "address_hash",
          "symbol",
          "name",
          "decimals",
          "type",
          "holders_count",
          "exchange_rate",
          "volume_24h",
          "total_supply",
          "icon_url",
          "circulating_market_cap",
          "circulating_supply",
          "reputation"
        ],
        "title": "Token",
        "type": "object"
      },
      "TokenBalance": {
        "additionalProperties": false,
        "properties": {
          "token": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Token"
              }
            ],
            "nullable": true
          },
          "token_id": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "token_instance": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TokenInstance"
              }
            ],
            "nullable": true
          },
          "value": {
            "$ref": "#/components/schemas/IntegerString"
          }
        },
        "required": [
          "value",
          "token",
          "token_id",
          "token_instance"
        ],
        "title": "TokenBalance",
        "type": "object"
      },
      "TokenCountersResponse": {
        "additionalProperties": false,
        "description": "Token counters response",
        "example": {
          "token_holders_count": "0",
          "transfers_count": "0"
        },
        "properties": {
          "token_holders_count": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "transfers_count": {
            "$ref": "#/components/schemas/IntegerString"
          }
        },
        "required": [
          "token_holders_count",
          "transfers_count"
        ],
        "title": "TokenCountersResponse",
        "type": "object"
      },
      "TokenHolderResponse": {
        "additionalProperties": false,
        "description": "Token holder response",
        "example": {
          "address": {
            "ens_domain_name": null,
            "hash": "0xF977814e90dA44bFA03b6295A0616a897441aceC",
            "implementations": [],
            "is_contract": false,
            "is_scam": false,
            "is_verified": false,
            "metadata": {
              "tags": [
                {
                  "meta": {
                    "main_entity": "Binance",
                    "tooltipUrl": "https://www.binance.com/"
                  },
                  "name": "Binance: Hot Wallet 20",
                  "ordinal": 10,
                  "slug": "binance-hot-wallet-20",
                  "tagType": "name"
                },
                {
                  "meta": {
                    "tooltipUrl": "https://www.binance.com"
                  },
                  "name": "Binance 8",
                  "ordinal": 10,
                  "slug": "binance-8",
                  "tagType": "name"
                },
                {
                  "meta": {},
                  "name": "HOT WALLET",
                  "ordinal": 0,
                  "slug": "hot-wallet",
                  "tagType": "generic"
                },
                {
                  "meta": {},
                  "name": "Exchange",
                  "ordinal": 0,
                  "slug": "exchange",
                  "tagType": "generic"
                },
                {
                  "meta": {},
                  "name": "Binance",
                  "ordinal": 0,
                  "slug": "binance",
                  "tagType": "protocol"
                }
              ]
            },
            "name": null,
            "private_tags": [],
            "proxy_type": null,
            "public_tags": [],
            "reputation": "ok",
            "watchlist_names": []
          },
          "token_id": null,
          "value": "19474530513868000"
        },
        "properties": {
          "address": {
            "additionalProperties": false,
            "description": "Address",
            "properties": {
              "ens_domain_name": {
                "description": "ENS domain name associated with the address",
                "nullable": true,
                "type": "string"
              },
              "hash": {
                "$ref": "#/components/schemas/AddressHash"
              },
              "implementations": {
                "description": "Implementations linked with the contract",
                "items": {
                  "$ref": "#/components/schemas/Implementation"
                },
                "type": "array"
              },
              "is_contract": {
                "description": "Has address contract code?",
                "nullable": true,
                "type": "boolean"
              },
              "is_scam": {
                "description": "Has address scam badge?",
                "type": "boolean"
              },
              "is_verified": {
                "description": "Has address associated source code?",
                "nullable": true,
                "type": "boolean"
              },
              "metadata": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/Metadata"
                  }
                ],
                "nullable": true
              },
              "name": {
                "description": "Name associated with the address",
                "nullable": true,
                "type": "string"
              },
              "private_tags": {
                "description": "Private tags associated with the address",
                "items": {
                  "$ref": "#/components/schemas/Tag"
                },
                "type": "array"
              },
              "proxy_type": {
                "$ref": "#/components/schemas/ProxyType"
              },
              "public_tags": {
                "description": "Public tags associated with the address",
                "items": {
                  "$ref": "#/components/schemas/Tag"
                },
                "type": "array"
              },
              "reputation": {
                "description": "Reputation of the address",
                "enum": [
                  "ok",
                  "scam"
                ],
                "type": "string"
              },
              "watchlist_names": {
                "description": "Watchlist name associated with the address",
                "items": {
                  "$ref": "#/components/schemas/WatchlistName"
                },
                "type": "array"
              }
            },
            "required": [
              "hash",
              "is_contract",
              "name",
              "is_scam",
              "reputation",
              "proxy_type",
              "implementations",
              "is_verified",
              "ens_domain_name",
              "metadata"
            ],
            "title": "Address",
            "type": "object"
          },
          "token_id": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "value": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          }
        },
        "required": [
          "address",
          "token_id",
          "value"
        ],
        "title": "TokenHolderResponse",
        "type": "object"
      },
      "TokenInstance": {
        "additionalProperties": false,
        "properties": {
          "animation_media_type": {
            "description": "Media type category of the token instance animation URL",
            "enum": [
              "image",
              "video",
              "html"
            ],
            "nullable": true,
            "type": "string"
          },
          "animation_url": {
            "$ref": "#/components/schemas/URLNullable"
          },
          "external_app_url": {
            "$ref": "#/components/schemas/URLNullable"
          },
          "id": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "image_media_type": {
            "description": "Media type category of the token instance image URL",
            "enum": [
              "image",
              "video",
              "html"
            ],
            "nullable": true,
            "type": "string"
          },
          "image_url": {
            "$ref": "#/components/schemas/URLNullable"
          },
          "is_unique": {
            "nullable": true,
            "type": "boolean"
          },
          "media_type": {
            "description": "Mime type of the media in media_url",
            "example": "image/png",
            "nullable": true,
            "type": "string"
          },
          "media_url": {
            "$ref": "#/components/schemas/URLNullable"
          },
          "metadata": {
            "additionalProperties": true,
            "example": {
              "description": "Test",
              "image": "https://example.com/image.png",
              "name": "Test"
            },
            "nullable": true,
            "type": "object"
          },
          "owner": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "nullable": true
          },
          "thumbnails": {
            "nullable": true,
            "properties": {
              "250x250": {
                "format": "uri",
                "type": "string"
              },
              "500x500": {
                "format": "uri",
                "type": "string"
              },
              "60x60": {
                "format": "uri",
                "type": "string"
              },
              "original": {
                "format": "uri",
                "type": "string"
              }
            },
            "required": [
              "original"
            ],
            "type": "object"
          },
          "token": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Token"
              }
            ],
            "nullable": true
          },
          "token_type": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TokenType"
              }
            ],
            "nullable": true
          },
          "value": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          }
        },
        "required": [
          "id",
          "metadata",
          "owner",
          "token",
          "external_app_url",
          "animation_url",
          "image_url",
          "is_unique",
          "thumbnails",
          "media_type",
          "media_url"
        ],
        "title": "TokenInstance",
        "type": "object"
      },
      "TokenInstanceInList": {
        "additionalProperties": false,
        "properties": {
          "animation_media_type": {
            "description": "Media type category of the token instance animation URL",
            "enum": [
              "image",
              "video",
              "html"
            ],
            "nullable": true,
            "type": "string"
          },
          "animation_url": {
            "$ref": "#/components/schemas/URLNullable"
          },
          "external_app_url": {
            "$ref": "#/components/schemas/URLNullable"
          },
          "id": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "image_media_type": {
            "description": "Media type category of the token instance image URL",
            "enum": [
              "image",
              "video",
              "html"
            ],
            "nullable": true,
            "type": "string"
          },
          "image_url": {
            "$ref": "#/components/schemas/URLNullable"
          },
          "is_unique": {
            "nullable": true,
            "type": "boolean"
          },
          "media_type": {
            "description": "Mime type of the media in media_url",
            "example": "image/png",
            "nullable": true,
            "type": "string"
          },
          "media_url": {
            "$ref": "#/components/schemas/URLNullable"
          },
          "metadata": {
            "additionalProperties": true,
            "example": {
              "description": "Test",
              "image": "https://example.com/image.png",
              "name": "Test"
            },
            "nullable": true,
            "type": "object"
          },
          "owner": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "nullable": true
          },
          "thumbnails": {
            "nullable": true,
            "properties": {
              "250x250": {
                "format": "uri",
                "type": "string"
              },
              "500x500": {
                "format": "uri",
                "type": "string"
              },
              "60x60": {
                "format": "uri",
                "type": "string"
              },
              "original": {
                "format": "uri",
                "type": "string"
              }
            },
            "required": [
              "original"
            ],
            "type": "object"
          },
          "token": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Token"
              }
            ],
            "nullable": true
          },
          "token_type": {
            "$ref": "#/components/schemas/TokenType"
          },
          "value": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          }
        },
        "required": [
          "id",
          "metadata",
          "owner",
          "token",
          "external_app_url",
          "animation_url",
          "image_url",
          "is_unique",
          "thumbnails",
          "media_type",
          "media_url",
          "token_type",
          "value"
        ],
        "title": "TokenInstanceInList",
        "type": "object"
      },
      "TokenInstanceInTokenInstancesList": {
        "additionalProperties": false,
        "properties": {
          "animation_media_type": {
            "description": "Media type category of the token instance animation URL",
            "enum": [
              "image",
              "video",
              "html"
            ],
            "nullable": true,
            "type": "string"
          },
          "animation_url": {
            "$ref": "#/components/schemas/URLNullable"
          },
          "external_app_url": {
            "$ref": "#/components/schemas/URLNullable"
          },
          "id": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "image_media_type": {
            "description": "Media type category of the token instance image URL",
            "enum": [
              "image",
              "video",
              "html"
            ],
            "nullable": true,
            "type": "string"
          },
          "image_url": {
            "$ref": "#/components/schemas/URLNullable"
          },
          "is_unique": {
            "nullable": true,
            "type": "boolean"
          },
          "media_type": {
            "description": "Mime type of the media in media_url",
            "example": "image/png",
            "nullable": true,
            "type": "string"
          },
          "media_url": {
            "$ref": "#/components/schemas/URLNullable"
          },
          "metadata": {
            "additionalProperties": true,
            "example": {
              "description": "Test",
              "image": "https://example.com/image.png",
              "name": "Test"
            },
            "nullable": true,
            "type": "object"
          },
          "owner": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "nullable": true
          },
          "thumbnails": {
            "nullable": true,
            "properties": {
              "250x250": {
                "format": "uri",
                "type": "string"
              },
              "500x500": {
                "format": "uri",
                "type": "string"
              },
              "60x60": {
                "format": "uri",
                "type": "string"
              },
              "original": {
                "format": "uri",
                "type": "string"
              }
            },
            "required": [
              "original"
            ],
            "type": "object"
          },
          "token_type": {
            "$ref": "#/components/schemas/TokenType"
          },
          "value": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          }
        },
        "required": [
          "id",
          "metadata",
          "owner",
          "external_app_url",
          "animation_url",
          "image_url",
          "is_unique",
          "thumbnails",
          "media_type",
          "media_url"
        ],
        "title": "TokenInstanceInTokenInstancesList",
        "type": "object"
      },
      "TokenResponse": {
        "additionalProperties": false,
        "description": "Token response",
        "properties": {
          "address_hash": {
            "$ref": "#/components/schemas/AddressHash"
          },
          "bridge_type": {
            "description": "Type of bridge used for this bridged token",
            "enum": [
              "omni",
              "amb"
            ],
            "nullable": true,
            "type": "string"
          },
          "circulating_market_cap": {
            "$ref": "#/components/schemas/FloatStringNullable"
          },
          "circulating_supply": {
            "$ref": "#/components/schemas/FloatStringNullable"
          },
          "decimals": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "exchange_rate": {
            "$ref": "#/components/schemas/FloatStringNullable"
          },
          "foreign_address": {
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{40})$",
            "type": "string"
          },
          "holders_count": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "icon_url": {
            "$ref": "#/components/schemas/URLNullable"
          },
          "name": {
            "nullable": true,
            "type": "string"
          },
          "origin_chain_id": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "reputation": {
            "description": "Reputation of the token",
            "enum": [
              "ok",
              "scam"
            ],
            "nullable": true,
            "type": "string"
          },
          "symbol": {
            "nullable": true,
            "type": "string"
          },
          "total_supply": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "type": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TokenType"
              }
            ],
            "nullable": true
          },
          "volume_24h": {
            "$ref": "#/components/schemas/FloatStringNullable"
          }
        },
        "required": [
          "address_hash",
          "symbol",
          "name",
          "decimals",
          "type",
          "holders_count",
          "exchange_rate",
          "volume_24h",
          "total_supply",
          "icon_url",
          "circulating_market_cap",
          "circulating_supply",
          "reputation"
        ],
        "title": "TokenResponse",
        "type": "object"
      },
      "TokenTransfer": {
        "additionalProperties": false,
        "properties": {
          "block_hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "block_number": {
            "type": "integer"
          },
          "from": {
            "$ref": "#/components/schemas/Address"
          },
          "log_index": {
            "type": "integer"
          },
          "method": {
            "$ref": "#/components/schemas/MethodNameNullable"
          },
          "timestamp": {
            "$ref": "#/components/schemas/TimestampNullable"
          },
          "to": {
            "$ref": "#/components/schemas/Address"
          },
          "token": {
            "$ref": "#/components/schemas/Token"
          },
          "token_type": {
            "$ref": "#/components/schemas/TokenType"
          },
          "total": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/TotalERC721"
              },
              {
                "$ref": "#/components/schemas/TotalERC1155"
              },
              {
                "$ref": "#/components/schemas/TotalERC7984"
              },
              {
                "$ref": "#/components/schemas/Total"
              }
            ],
            "nullable": true
          },
          "transaction_hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "type": {
            "enum": [
              "token_burning",
              "token_minting",
              "token_spawning",
              "token_transfer"
            ],
            "type": "string"
          }
        },
        "required": [
          "transaction_hash",
          "from",
          "to",
          "total",
          "token",
          "type",
          "timestamp",
          "method",
          "block_hash",
          "block_number",
          "log_index",
          "token_type"
        ],
        "title": "TokenTransfer",
        "type": "object"
      },
      "TokenType": {
        "enum": [
          "ERC-20",
          "ERC-721",
          "ERC-1155",
          "ERC-404",
          "ERC-7984"
        ],
        "title": "TokenType",
        "type": "string"
      },
      "TopAddress": {
        "additionalProperties": false,
        "description": "Address holding native coin, with its balance and transactions count",
        "properties": {
          "coin_balance": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "ens_domain_name": {
            "description": "ENS domain name associated with the address",
            "nullable": true,
            "type": "string"
          },
          "hash": {
            "$ref": "#/components/schemas/AddressHash"
          },
          "implementations": {
            "description": "Implementations linked with the contract",
            "items": {
              "$ref": "#/components/schemas/Implementation"
            },
            "type": "array"
          },
          "is_contract": {
            "description": "Has address contract code?",
            "nullable": true,
            "type": "boolean"
          },
          "is_scam": {
            "description": "Has address scam badge?",
            "type": "boolean"
          },
          "is_verified": {
            "description": "Has address associated source code?",
            "nullable": true,
            "type": "boolean"
          },
          "metadata": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Metadata"
              }
            ],
            "nullable": true
          },
          "name": {
            "description": "Name associated with the address",
            "nullable": true,
            "type": "string"
          },
          "private_tags": {
            "description": "Private tags associated with the address",
            "items": {
              "$ref": "#/components/schemas/Tag"
            },
            "type": "array"
          },
          "proxy_type": {
            "$ref": "#/components/schemas/ProxyType"
          },
          "public_tags": {
            "description": "Public tags associated with the address",
            "items": {
              "$ref": "#/components/schemas/Tag"
            },
            "type": "array"
          },
          "reputation": {
            "description": "Reputation of the address",
            "enum": [
              "ok",
              "scam"
            ],
            "type": "string"
          },
          "transactions_count": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/IntegerString"
              },
              {
                "$ref": "#/components/schemas/EmptyString"
              }
            ],
            "nullable": true
          },
          "watchlist_names": {
            "description": "Watchlist name associated with the address",
            "items": {
              "$ref": "#/components/schemas/WatchlistName"
            },
            "type": "array"
          }
        },
        "required": [
          "hash",
          "is_contract",
          "name",
          "is_scam",
          "reputation",
          "proxy_type",
          "implementations",
          "is_verified",
          "ens_domain_name",
          "metadata",
          "coin_balance",
          "transactions_count"
        ],
        "title": "TopAddress",
        "type": "object"
      },
      "Total": {
        "additionalProperties": false,
        "properties": {
          "decimals": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "value": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          }
        },
        "required": [
          "value",
          "decimals"
        ],
        "title": "Total",
        "type": "object"
      },
      "TotalERC1155": {
        "additionalProperties": false,
        "properties": {
          "decimals": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "token_id": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "token_instance": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TokenInstance"
              }
            ],
            "nullable": true
          },
          "value": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          }
        },
        "required": [
          "token_id",
          "value",
          "decimals",
          "token_instance"
        ],
        "title": "TotalERC1155",
        "type": "object"
      },
      "TotalERC721": {
        "additionalProperties": false,
        "properties": {
          "token_id": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "token_instance": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TokenInstance"
              }
            ],
            "nullable": true
          }
        },
        "required": [
          "token_id",
          "token_instance"
        ],
        "title": "TotalERC721",
        "type": "object"
      },
      "TotalERC7984": {
        "additionalProperties": false,
        "properties": {
          "decimals": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "value": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          }
        },
        "required": [
          "value",
          "decimals"
        ],
        "title": "TotalERC7984",
        "type": "object"
      },
      "Transaction": {
        "additionalProperties": false,
        "properties": {
          "arbitrum": {
            "additionalProperties": false,
            "properties": {
              "batch_data_container": {
                "nullable": true,
                "type": "string"
              },
              "batch_number": {
                "nullable": true,
                "type": "integer"
              },
              "commitment_transaction": {
                "additionalProperties": false,
                "properties": {
                  "hash": {
                    "$ref": "#/components/schemas/FullHashNullable"
                  },
                  "status": {
                    "enum": [
                      "unfinalized",
                      "finalized"
                    ],
                    "nullable": true,
                    "type": "string"
                  },
                  "timestamp": {
                    "$ref": "#/components/schemas/TimestampNullable"
                  }
                },
                "required": [
                  "hash",
                  "timestamp",
                  "status"
                ],
                "type": "object"
              },
              "confirmation_transaction": {
                "additionalProperties": false,
                "properties": {
                  "hash": {
                    "$ref": "#/components/schemas/FullHashNullable"
                  },
                  "status": {
                    "enum": [
                      "unfinalized",
                      "finalized"
                    ],
                    "nullable": true,
                    "type": "string"
                  },
                  "timestamp": {
                    "$ref": "#/components/schemas/TimestampNullable"
                  }
                },
                "required": [
                  "hash",
                  "timestamp",
                  "status"
                ],
                "type": "object"
              },
              "contains_message": {
                "enum": [
                  "incoming",
                  "outcoming"
                ],
                "nullable": true,
                "type": "string"
              },
              "gas_used_for_l1": {
                "$ref": "#/components/schemas/IntegerString"
              },
              "gas_used_for_l2": {
                "$ref": "#/components/schemas/IntegerString"
              },
              "message_related_info": {
                "additionalProperties": false,
                "properties": {
                  "associated_l1_transaction_hash": {
                    "$ref": "#/components/schemas/FullHashNullable"
                  },
                  "message_id": {
                    "type": "integer"
                  },
                  "message_status": {
                    "enum": [
                      "Syncing with base layer",
                      "Relayed",
                      "Settlement pending",
                      "Waiting for confirmation",
                      "Ready for relay"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              "network_fee": {
                "$ref": "#/components/schemas/IntegerString"
              },
              "poster_fee": {
                "$ref": "#/components/schemas/IntegerString"
              },
              "status": {
                "enum": [
                  "Confirmed on base",
                  "Sent to base",
                  "Sealed on rollup",
                  "Processed on rollup"
                ],
                "type": "string"
              }
            },
            "required": [
              "gas_used_for_l1",
              "gas_used_for_l2",
              "poster_fee",
              "network_fee"
            ],
            "type": "object"
          },
          "authorization_list": {
            "items": {
              "$ref": "#/components/schemas/SignedAuthorization"
            },
            "nullable": true,
            "type": "array"
          },
          "base_fee_per_gas": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "block_number": {
            "nullable": true,
            "type": "integer"
          },
          "confirmation_duration": {
            "description": "Array of time intervals in milliseconds. Can be empty [] (no info), single value [interval] (means that the transaction was confirmed within {interval} milliseconds), or two values [short_interval, long_interval] (means that the transaction's confirmation took from {short_interval} to {long_interval} milliseconds)",
            "example": [
              1000,
              2000
            ],
            "items": {
              "description": "Duration in milliseconds",
              "minimum": 0,
              "type": "integer"
            },
            "maxItems": 2,
            "type": "array"
          },
          "confirmations": {
            "minimum": 0,
            "type": "integer"
          },
          "created_contract": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "nullable": true
          },
          "decoded_input": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DecodedInput"
              }
            ],
            "nullable": true
          },
          "exchange_rate": {
            "$ref": "#/components/schemas/FloatStringNullable"
          },
          "fee": {
            "$ref": "#/components/schemas/Fee"
          },
          "fhe_operations_count": {
            "description": "Number of FHE (Fully Homomorphic Encryption) operations in the transaction",
            "type": "integer"
          },
          "from": {
            "$ref": "#/components/schemas/Address"
          },
          "gas_limit": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "gas_price": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "gas_used": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "has_error_in_internal_transactions": {
            "nullable": true,
            "type": "boolean"
          },
          "hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "historic_exchange_rate": {
            "$ref": "#/components/schemas/FloatStringNullable"
          },
          "is_pending_update": {
            "nullable": true,
            "type": "boolean"
          },
          "max_fee_per_gas": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "max_priority_fee_per_gas": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "method": {
            "$ref": "#/components/schemas/MethodNameNullable"
          },
          "nonce": {
            "minimum": 0,
            "type": "integer"
          },
          "position": {
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          },
          "priority_fee": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "raw_input": {
            "$ref": "#/components/schemas/HexData"
          },
          "result": {
            "anyOf": [
              {
                "enum": [
                  "pending",
                  "awaiting_internal_transactions",
                  "success",
                  "dropped/replaced"
                ],
                "type": "string"
              },
              {
                "description": "Error message",
                "example": "out of gas",
                "type": "string"
              }
            ]
          },
          "revert_reason": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/DecodedInput"
              },
              {
                "additionalProperties": false,
                "properties": {
                  "raw": {
                    "anyOf": [
                      {
                        "$ref": "#/components/schemas/HexData"
                      },
                      {
                        "type": "string"
                      }
                    ],
                    "nullable": true
                  }
                },
                "required": [
                  "raw"
                ],
                "type": "object"
              }
            ]
          },
          "status": {
            "enum": [
              "ok",
              "error"
            ],
            "nullable": true,
            "type": "string"
          },
          "timestamp": {
            "$ref": "#/components/schemas/TimestampNullable"
          },
          "to": {
            "$ref": "#/components/schemas/Address"
          },
          "token_transfers": {
            "items": {
              "$ref": "#/components/schemas/TokenTransfer"
            },
            "nullable": true,
            "type": "array"
          },
          "token_transfers_overflow": {
            "nullable": true,
            "type": "boolean"
          },
          "transaction_burnt_fee": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "transaction_tag": {
            "description": "Transaction tag set in My Account",
            "example": "personal",
            "nullable": true,
            "type": "string"
          },
          "transaction_types": {
            "items": {
              "enum": [
                "coin_transfer",
                "contract_call",
                "contract_creation",
                "rootstock_bridge",
                "rootstock_remasc",
                "token_creation",
                "token_transfer",
                "blob_transaction",
                "set_code_transaction"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "type": {
            "nullable": true,
            "type": "integer"
          },
          "value": {
            "$ref": "#/components/schemas/IntegerString"
          }
        },
        "required": [
          "hash",
          "result",
          "status",
          "block_number",
          "timestamp",
          "from",
          "to",
          "created_contract",
          "confirmations",
          "confirmation_duration",
          "value",
          "fee",
          "gas_price",
          "type",
          "gas_used",
          "gas_limit",
          "max_fee_per_gas",
          "max_priority_fee_per_gas",
          "base_fee_per_gas",
          "priority_fee",
          "transaction_burnt_fee",
          "nonce",
          "position",
          "revert_reason",
          "raw_input",
          "decoded_input",
          "token_transfers",
          "token_transfers_overflow",
          "exchange_rate",
          "historic_exchange_rate",
          "method",
          "transaction_types",
          "transaction_tag",
          "has_error_in_internal_transactions",
          "authorization_list",
          "is_pending_update",
          "fhe_operations_count"
        ],
        "title": "Transaction",
        "type": "object"
      },
      "TransactionResponse": {
        "additionalProperties": false,
        "description": "Transaction response",
        "properties": {
          "arbitrum": {
            "additionalProperties": false,
            "properties": {
              "batch_data_container": {
                "nullable": true,
                "type": "string"
              },
              "batch_number": {
                "nullable": true,
                "type": "integer"
              },
              "commitment_transaction": {
                "additionalProperties": false,
                "properties": {
                  "hash": {
                    "$ref": "#/components/schemas/FullHashNullable"
                  },
                  "status": {
                    "enum": [
                      "unfinalized",
                      "finalized"
                    ],
                    "nullable": true,
                    "type": "string"
                  },
                  "timestamp": {
                    "$ref": "#/components/schemas/TimestampNullable"
                  }
                },
                "required": [
                  "hash",
                  "timestamp",
                  "status"
                ],
                "type": "object"
              },
              "confirmation_transaction": {
                "additionalProperties": false,
                "properties": {
                  "hash": {
                    "$ref": "#/components/schemas/FullHashNullable"
                  },
                  "status": {
                    "enum": [
                      "unfinalized",
                      "finalized"
                    ],
                    "nullable": true,
                    "type": "string"
                  },
                  "timestamp": {
                    "$ref": "#/components/schemas/TimestampNullable"
                  }
                },
                "required": [
                  "hash",
                  "timestamp",
                  "status"
                ],
                "type": "object"
              },
              "contains_message": {
                "enum": [
                  "incoming",
                  "outcoming"
                ],
                "nullable": true,
                "type": "string"
              },
              "gas_used_for_l1": {
                "$ref": "#/components/schemas/IntegerString"
              },
              "gas_used_for_l2": {
                "$ref": "#/components/schemas/IntegerString"
              },
              "message_related_info": {
                "additionalProperties": false,
                "properties": {
                  "associated_l1_transaction_hash": {
                    "$ref": "#/components/schemas/FullHashNullable"
                  },
                  "message_id": {
                    "type": "integer"
                  },
                  "message_status": {
                    "enum": [
                      "Syncing with base layer",
                      "Relayed",
                      "Settlement pending",
                      "Waiting for confirmation",
                      "Ready for relay"
                    ],
                    "type": "string"
                  }
                },
                "type": "object"
              },
              "network_fee": {
                "$ref": "#/components/schemas/IntegerString"
              },
              "poster_fee": {
                "$ref": "#/components/schemas/IntegerString"
              },
              "status": {
                "enum": [
                  "Confirmed on base",
                  "Sent to base",
                  "Sealed on rollup",
                  "Processed on rollup"
                ],
                "type": "string"
              }
            },
            "required": [
              "gas_used_for_l1",
              "gas_used_for_l2",
              "poster_fee",
              "network_fee"
            ],
            "type": "object"
          },
          "authorization_list": {
            "items": {
              "$ref": "#/components/schemas/SignedAuthorization"
            },
            "nullable": true,
            "type": "array"
          },
          "base_fee_per_gas": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "block_number": {
            "nullable": true,
            "type": "integer"
          },
          "confirmation_duration": {
            "description": "Array of time intervals in milliseconds. Can be empty [] (no info), single value [interval] (means that the transaction was confirmed within {interval} milliseconds), or two values [short_interval, long_interval] (means that the transaction's confirmation took from {short_interval} to {long_interval} milliseconds)",
            "example": [
              1000,
              2000
            ],
            "items": {
              "description": "Duration in milliseconds",
              "minimum": 0,
              "type": "integer"
            },
            "maxItems": 2,
            "type": "array"
          },
          "confirmations": {
            "minimum": 0,
            "type": "integer"
          },
          "created_contract": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Address"
              }
            ],
            "nullable": true
          },
          "decoded_input": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DecodedInput"
              }
            ],
            "nullable": true
          },
          "exchange_rate": {
            "$ref": "#/components/schemas/FloatStringNullable"
          },
          "fee": {
            "$ref": "#/components/schemas/Fee"
          },
          "fhe_operations_count": {
            "description": "Number of FHE (Fully Homomorphic Encryption) operations in the transaction",
            "type": "integer"
          },
          "from": {
            "$ref": "#/components/schemas/Address"
          },
          "gas_limit": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "gas_price": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "gas_used": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "has_error_in_internal_transactions": {
            "nullable": true,
            "type": "boolean"
          },
          "hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "historic_exchange_rate": {
            "$ref": "#/components/schemas/FloatStringNullable"
          },
          "is_pending_update": {
            "nullable": true,
            "type": "boolean"
          },
          "max_fee_per_gas": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "max_priority_fee_per_gas": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "method": {
            "$ref": "#/components/schemas/MethodNameNullable"
          },
          "nonce": {
            "minimum": 0,
            "type": "integer"
          },
          "position": {
            "minimum": 0,
            "nullable": true,
            "type": "integer"
          },
          "priority_fee": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "raw_input": {
            "$ref": "#/components/schemas/HexData"
          },
          "result": {
            "anyOf": [
              {
                "enum": [
                  "pending",
                  "awaiting_internal_transactions",
                  "success",
                  "dropped/replaced"
                ],
                "type": "string"
              },
              {
                "description": "Error message",
                "example": "out of gas",
                "type": "string"
              }
            ]
          },
          "revert_reason": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/DecodedInput"
              },
              {
                "additionalProperties": false,
                "properties": {
                  "raw": {
                    "anyOf": [
                      {
                        "$ref": "#/components/schemas/HexData"
                      },
                      {
                        "type": "string"
                      }
                    ],
                    "nullable": true
                  }
                },
                "required": [
                  "raw"
                ],
                "type": "object"
              }
            ]
          },
          "status": {
            "enum": [
              "ok",
              "error"
            ],
            "nullable": true,
            "type": "string"
          },
          "timestamp": {
            "$ref": "#/components/schemas/TimestampNullable"
          },
          "to": {
            "$ref": "#/components/schemas/Address"
          },
          "token_transfers": {
            "items": {
              "$ref": "#/components/schemas/TokenTransfer"
            },
            "nullable": true,
            "type": "array"
          },
          "token_transfers_overflow": {
            "nullable": true,
            "type": "boolean"
          },
          "transaction_burnt_fee": {
            "$ref": "#/components/schemas/IntegerStringNullable"
          },
          "transaction_tag": {
            "description": "Transaction tag set in My Account",
            "example": "personal",
            "nullable": true,
            "type": "string"
          },
          "transaction_types": {
            "items": {
              "enum": [
                "coin_transfer",
                "contract_call",
                "contract_creation",
                "rootstock_bridge",
                "rootstock_remasc",
                "token_creation",
                "token_transfer",
                "blob_transaction",
                "set_code_transaction"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "type": {
            "nullable": true,
            "type": "integer"
          },
          "value": {
            "$ref": "#/components/schemas/IntegerString"
          }
        },
        "required": [
          "hash",
          "result",
          "status",
          "block_number",
          "timestamp",
          "from",
          "to",
          "created_contract",
          "confirmations",
          "confirmation_duration",
          "value",
          "fee",
          "gas_price",
          "type",
          "gas_used",
          "gas_limit",
          "max_fee_per_gas",
          "max_priority_fee_per_gas",
          "base_fee_per_gas",
          "priority_fee",
          "transaction_burnt_fee",
          "nonce",
          "position",
          "revert_reason",
          "raw_input",
          "decoded_input",
          "token_transfers",
          "token_transfers_overflow",
          "exchange_rate",
          "historic_exchange_rate",
          "method",
          "transaction_types",
          "transaction_tag",
          "has_error_in_internal_transactions",
          "authorization_list",
          "is_pending_update",
          "fhe_operations_count"
        ],
        "title": "TransactionResponse",
        "type": "object"
      },
      "URLNullable": {
        "example": "https://example.com",
        "format": "uri",
        "nullable": true,
        "title": "URLNullable",
        "type": "string"
      },
      "UserOperation": {
        "additionalProperties": false,
        "description": "UserOperation struct.",
        "properties": {
          "aggregator": {
            "$ref": "#/components/schemas/AddressHashNullable"
          },
          "aggregator_signature": {
            "$ref": "#/components/schemas/HexDataNullable"
          },
          "block_hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "block_number": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "bundle_index": {
            "type": "integer"
          },
          "bundler": {
            "$ref": "#/components/schemas/Address"
          },
          "call_data": {
            "$ref": "#/components/schemas/HexData"
          },
          "call_gas_limit": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "consensus": {
            "nullable": true,
            "type": "boolean"
          },
          "decoded_call_data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DecodedInput"
              }
            ],
            "nullable": true
          },
          "decoded_execute_call_data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DecodedInput"
              }
            ],
            "nullable": true
          },
          "entry_point": {
            "$ref": "#/components/schemas/Address"
          },
          "entry_point_version": {
            "enum": [
              "v0.6",
              "v0.7",
              "v0.8",
              "v0.9"
            ],
            "type": "string"
          },
          "execute_call_data": {
            "$ref": "#/components/schemas/HexDataNullable"
          },
          "execute_target": {
            "$ref": "#/components/schemas/AddressNullable"
          },
          "factory": {
            "$ref": "#/components/schemas/AddressNullable"
          },
          "fee": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "gas": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "gas_price": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "gas_used": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "index": {
            "type": "integer"
          },
          "max_fee_per_gas": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "max_priority_fee_per_gas": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "nonce": {
            "$ref": "#/components/schemas/FullHash"
          },
          "paymaster": {
            "$ref": "#/components/schemas/AddressNullable"
          },
          "pre_verification_gas": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "raw": {
            "anyOf": [
              {
                "additionalProperties": false,
                "description": "Raw user operation data v0.6.",
                "properties": {
                  "call_data": {
                    "$ref": "#/components/schemas/HexData"
                  },
                  "call_gas_limit": {
                    "$ref": "#/components/schemas/IntegerString"
                  },
                  "init_code": {
                    "$ref": "#/components/schemas/HexData"
                  },
                  "max_fee_per_gas": {
                    "$ref": "#/components/schemas/IntegerString"
                  },
                  "max_priority_fee_per_gas": {
                    "$ref": "#/components/schemas/IntegerString"
                  },
                  "nonce": {
                    "$ref": "#/components/schemas/IntegerString"
                  },
                  "paymaster_and_data": {
                    "$ref": "#/components/schemas/HexData"
                  },
                  "pre_verification_gas": {
                    "$ref": "#/components/schemas/IntegerString"
                  },
                  "sender": {
                    "$ref": "#/components/schemas/AddressHash"
                  },
                  "signature": {
                    "$ref": "#/components/schemas/HexData"
                  },
                  "verification_gas_limit": {
                    "$ref": "#/components/schemas/IntegerString"
                  }
                },
                "required": [
                  "sender",
                  "nonce",
                  "init_code",
                  "call_data",
                  "call_gas_limit",
                  "verification_gas_limit",
                  "pre_verification_gas",
                  "max_fee_per_gas",
                  "max_priority_fee_per_gas",
                  "paymaster_and_data",
                  "signature"
                ],
                "type": "object"
              },
              {
                "additionalProperties": false,
                "description": "Raw user operation data v0.7-v0.9.",
                "properties": {
                  "account_gas_limits": {
                    "$ref": "#/components/schemas/FullHash"
                  },
                  "call_data": {
                    "$ref": "#/components/schemas/HexData"
                  },
                  "gas_fees": {
                    "$ref": "#/components/schemas/FullHash"
                  },
                  "init_code": {
                    "$ref": "#/components/schemas/HexData"
                  },
                  "nonce": {
                    "$ref": "#/components/schemas/IntegerString"
                  },
                  "paymaster_and_data": {
                    "$ref": "#/components/schemas/HexData"
                  },
                  "pre_verification_gas": {
                    "$ref": "#/components/schemas/IntegerString"
                  },
                  "sender": {
                    "$ref": "#/components/schemas/AddressHash"
                  },
                  "signature": {
                    "$ref": "#/components/schemas/HexData"
                  }
                },
                "required": [
                  "sender",
                  "nonce",
                  "init_code",
                  "call_data",
                  "account_gas_limits",
                  "pre_verification_gas",
                  "gas_fees",
                  "paymaster_and_data",
                  "signature"
                ],
                "type": "object"
              }
            ],
            "description": "Raw user operation data."
          },
          "revert_reason": {
            "$ref": "#/components/schemas/HexDataNullable"
          },
          "sender": {
            "$ref": "#/components/schemas/Address"
          },
          "signature": {
            "$ref": "#/components/schemas/HexData"
          },
          "sponsor_type": {
            "enum": [
              "wallet_deposit",
              "wallet_balance",
              "paymaster_sponsor",
              "paymaster_hybrid"
            ],
            "type": "string"
          },
          "status": {
            "type": "boolean"
          },
          "timestamp": {
            "$ref": "#/components/schemas/TimestampNullable"
          },
          "transaction_hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "user_logs_count": {
            "type": "integer"
          },
          "user_logs_start_index": {
            "type": "integer"
          },
          "verification_gas_limit": {
            "$ref": "#/components/schemas/IntegerString"
          }
        },
        "required": [
          "hash",
          "sender",
          "nonce",
          "call_data",
          "call_gas_limit",
          "verification_gas_limit",
          "pre_verification_gas",
          "max_fee_per_gas",
          "max_priority_fee_per_gas",
          "signature",
          "raw",
          "aggregator",
          "aggregator_signature",
          "entry_point",
          "entry_point_version",
          "transaction_hash",
          "block_number",
          "block_hash",
          "bundler",
          "bundle_index",
          "index",
          "factory",
          "paymaster",
          "status",
          "revert_reason",
          "gas",
          "gas_price",
          "gas_used",
          "sponsor_type",
          "user_logs_start_index",
          "user_logs_count",
          "fee",
          "consensus",
          "timestamp",
          "execute_target",
          "execute_call_data",
          "decoded_call_data",
          "decoded_execute_call_data"
        ],
        "title": "UserOperation",
        "type": "object"
      },
      "UserOperationInList": {
        "additionalProperties": false,
        "description": "UserOperationInList struct.",
        "properties": {
          "address": {
            "$ref": "#/components/schemas/Address"
          },
          "block_number": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "entry_point": {
            "$ref": "#/components/schemas/Address"
          },
          "entry_point_version": {
            "enum": [
              "v0.6",
              "v0.7",
              "v0.8",
              "v0.9"
            ],
            "type": "string"
          },
          "fee": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "hash": {
            "$ref": "#/components/schemas/FullHash"
          },
          "status": {
            "type": "boolean"
          },
          "timestamp": {
            "$ref": "#/components/schemas/TimestampNullable"
          },
          "transaction_hash": {
            "$ref": "#/components/schemas/FullHash"
          }
        },
        "required": [
          "hash",
          "address",
          "entry_point",
          "entry_point_version",
          "transaction_hash",
          "block_number",
          "status",
          "fee",
          "timestamp"
        ],
        "title": "UserOperationInList",
        "type": "object"
      },
      "WatchlistName": {
        "additionalProperties": false,
        "description": "Watchlist name struct",
        "properties": {
          "display_name": {
            "type": "string"
          },
          "label": {
            "type": "string"
          }
        },
        "required": [
          "display_name",
          "label"
        ],
        "title": "WatchlistName",
        "type": "object"
      },
      "Withdrawal": {
        "additionalProperties": false,
        "properties": {
          "amount": {
            "$ref": "#/components/schemas/IntegerString"
          },
          "block_number": {
            "type": "integer"
          },
          "index": {
            "type": "integer"
          },
          "receiver": {
            "$ref": "#/components/schemas/Address"
          },
          "timestamp": {
            "$ref": "#/components/schemas/Timestamp"
          },
          "validator_index": {
            "type": "integer"
          }
        },
        "required": [
          "index",
          "validator_index",
          "amount"
        ],
        "title": "Withdrawal",
        "type": "object"
      },
      "ZkSync.Batch": {
        "additionalProperties": false,
        "description": "ZkSync rollup batch - a group of rollup blocks settled together on the parent chain - with the corresponding parent-chain lifecycle data.",
        "properties": {
          "commit_transaction_hash": {
            "description": "Hash of the parent-chain transaction that committed this batch. `null` until the commit transaction is observed.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "commit_transaction_timestamp": {
            "description": "Timestamp of the parent-chain transaction that committed this batch. `null` until the commit transaction is observed.",
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "end_block_number": {
            "description": "Last rollup block included in the batch.",
            "minimum": 0,
            "type": "integer"
          },
          "execute_transaction_hash": {
            "description": "Hash of the parent-chain transaction that executed this batch. `null` until the execute transaction is observed.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "execute_transaction_timestamp": {
            "description": "Timestamp of the parent-chain transaction that executed this batch. `null` until the execute transaction is observed.",
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "l1_gas_price": {
            "description": "Parent-chain gas price observed for this batch, in wei.",
            "pattern": "^([1-9][0-9]*|0)$",
            "type": "string"
          },
          "l1_transactions_count": {
            "description": "Number of transactions in the batch originating on the parent chain.",
            "minimum": 0,
            "type": "integer"
          },
          "l2_fair_gas_price": {
            "description": "Rollup fair gas price for this batch, in wei.",
            "pattern": "^([1-9][0-9]*|0)$",
            "type": "string"
          },
          "l2_transactions_count": {
            "description": "Number of transactions in the batch originating on the rollup.",
            "minimum": 0,
            "type": "integer"
          },
          "number": {
            "description": "Batch number on the rollup.",
            "minimum": 0,
            "type": "integer"
          },
          "prove_transaction_hash": {
            "description": "Hash of the parent-chain transaction that proved this batch. `null` until the prove transaction is observed.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "prove_transaction_timestamp": {
            "description": "Timestamp of the parent-chain transaction that proved this batch. `null` until the prove transaction is observed.",
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "root_hash": {
            "description": "State root hash committed for this batch on the parent chain.",
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "start_block_number": {
            "description": "First rollup block included in the batch.",
            "minimum": 0,
            "type": "integer"
          },
          "status": {
            "description": "Lifecycle status of the batch:\n* `Sealed on L2` - Batch is finalized on the rollup and no parent-chain lifecycle transaction has been observed yet.\n* `Sent to L1` - Commit transaction has been submitted on the parent chain.\n* `Validated on L1` - Prove transaction has been submitted on the parent chain.\n* `Executed on L1` - Execute transaction has been submitted on the parent chain.\n",
            "enum": [
              "Executed on L1",
              "Validated on L1",
              "Sent to L1",
              "Sealed on L2"
            ],
            "type": "string"
          },
          "timestamp": {
            "description": "Timestamp when the batch was sealed on the rollup.",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "number",
          "timestamp",
          "status",
          "commit_transaction_hash",
          "commit_transaction_timestamp",
          "prove_transaction_hash",
          "prove_transaction_timestamp",
          "execute_transaction_hash",
          "execute_transaction_timestamp",
          "root_hash",
          "l1_transactions_count",
          "l2_transactions_count",
          "l1_gas_price",
          "l2_fair_gas_price",
          "start_block_number",
          "end_block_number"
        ],
        "title": "ZkSync.Batch",
        "type": "object"
      },
      "ZkSync.BatchListItem": {
        "additionalProperties": false,
        "description": "ZkSync rollup batch summary for list endpoints.",
        "properties": {
          "commit_transaction_hash": {
            "description": "Hash of the parent-chain transaction that committed this batch. `null` until the commit transaction is observed.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "commit_transaction_timestamp": {
            "description": "Timestamp of the parent-chain transaction that committed this batch. `null` until the commit transaction is observed.",
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "execute_transaction_hash": {
            "description": "Hash of the parent-chain transaction that executed this batch. `null` until the execute transaction is observed.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "execute_transaction_timestamp": {
            "description": "Timestamp of the parent-chain transaction that executed this batch. `null` until the execute transaction is observed.",
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "number": {
            "description": "Batch number on the rollup.",
            "minimum": 0,
            "type": "integer"
          },
          "prove_transaction_hash": {
            "description": "Hash of the parent-chain transaction that proved this batch. `null` until the prove transaction is observed.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "prove_transaction_timestamp": {
            "description": "Timestamp of the parent-chain transaction that proved this batch. `null` until the prove transaction is observed.",
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "status": {
            "description": "Lifecycle status of the batch:\n* `Sealed on L2` - Batch is finalized on the rollup and no parent-chain lifecycle transaction has been observed yet.\n* `Sent to L1` - Commit transaction has been submitted on the parent chain.\n* `Validated on L1` - Prove transaction has been submitted on the parent chain.\n* `Executed on L1` - Execute transaction has been submitted on the parent chain.\n",
            "enum": [
              "Executed on L1",
              "Validated on L1",
              "Sent to L1",
              "Sealed on L2"
            ],
            "type": "string"
          },
          "timestamp": {
            "description": "Timestamp when the batch was sealed on the rollup.",
            "format": "date-time",
            "type": "string"
          },
          "transactions_count": {
            "description": "Total number of transactions in the batch (parent-chain originated plus rollup originated).",
            "minimum": 0,
            "type": "integer"
          }
        },
        "required": [
          "number",
          "timestamp",
          "status",
          "commit_transaction_hash",
          "commit_transaction_timestamp",
          "prove_transaction_hash",
          "prove_transaction_timestamp",
          "execute_transaction_hash",
          "execute_transaction_timestamp",
          "transactions_count"
        ],
        "title": "ZkSync.BatchListItem",
        "type": "object"
      },
      "ZkSync.ConfirmedBatchListItem": {
        "additionalProperties": false,
        "description": "ZkSync rollup batch summary for the main-page confirmed list. Only batches with an observed commit transaction are included, so `status` excludes the `Sealed on L2` value of the full batch lifecycle.",
        "properties": {
          "commit_transaction_hash": {
            "description": "Hash of the parent-chain transaction that committed this batch. `null` until the commit transaction is observed.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "commit_transaction_timestamp": {
            "description": "Timestamp of the parent-chain transaction that committed this batch. `null` until the commit transaction is observed.",
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "execute_transaction_hash": {
            "description": "Hash of the parent-chain transaction that executed this batch. `null` until the execute transaction is observed.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "execute_transaction_timestamp": {
            "description": "Timestamp of the parent-chain transaction that executed this batch. `null` until the execute transaction is observed.",
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "number": {
            "description": "Batch number on the rollup.",
            "minimum": 0,
            "type": "integer"
          },
          "prove_transaction_hash": {
            "description": "Hash of the parent-chain transaction that proved this batch. `null` until the prove transaction is observed.",
            "nullable": true,
            "pattern": "^0x([A-Fa-f0-9]{64})$",
            "type": "string"
          },
          "prove_transaction_timestamp": {
            "description": "Timestamp of the parent-chain transaction that proved this batch. `null` until the prove transaction is observed.",
            "format": "date-time",
            "nullable": true,
            "type": "string"
          },
          "status": {
            "description": "Lifecycle status of the batch:\n* `Sent to L1` - Commit transaction has been submitted on the parent chain.\n* `Validated on L1` - Prove transaction has been submitted on the parent chain.\n* `Executed on L1` - Execute transaction has been submitted on the parent chain.\n",
            "enum": [
              "Executed on L1",
              "Validated on L1",
              "Sent to L1"
            ],
            "type": "string"
          },
          "timestamp": {
            "description": "Timestamp when the batch was sealed on the rollup.",
            "format": "date-time",
            "type": "string"
          },
          "transactions_count": {
            "description": "Total number of transactions in the batch (parent-chain originated plus rollup originated).",
            "minimum": 0,
            "type": "integer"
          }
        },
        "required": [
          "number",
          "timestamp",
          "status",
          "commit_transaction_hash",
          "commit_transaction_timestamp",
          "prove_transaction_hash",
          "prove_transaction_timestamp",
          "execute_transaction_hash",
          "execute_transaction_timestamp",
          "transactions_count"
        ],
        "title": "ZkSync.ConfirmedBatchListItem",
        "type": "object"
      },
      "googlerpcStatus": {
        "properties": {
          "code": {
            "format": "int32",
            "type": "integer"
          },
          "details": {
            "items": {
              "$ref": "#/components/schemas/protobufAny",
              "type": "object"
            },
            "type": "array"
          },
          "message": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "protobufAny": {
        "additionalProperties": {},
        "properties": {
          "@type": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "v1Address": {
        "properties": {
          "chain_id": {
            "type": "string"
          },
          "contract_name": {
            "type": "string"
          },
          "domain_info": {
            "$ref": "#/components/schemas/v1DomainInfo"
          },
          "hash": {
            "type": "string"
          },
          "is_contract": {
            "type": "boolean"
          },
          "is_token": {
            "type": "boolean"
          },
          "is_verified_contract": {
            "type": "boolean"
          },
          "token_name": {
            "type": "string"
          },
          "token_type": {
            "$ref": "#/components/schemas/v1TokenType"
          }
        },
        "type": "object"
      },
      "v1AddressMetadataResponse": {
        "properties": {
          "tags": {
            "items": {
              "$ref": "#/components/schemas/v1Tag",
              "type": "object"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "v1AggregatedTokenInfo": {
        "properties": {
          "address_hash": {
            "type": "string"
          },
          "chain_infos": {
            "additionalProperties": {
              "$ref": "#/components/schemas/v1AggregatedTokenInfoChainInfo"
            },
            "description": "Map of chain id to chain-specific information.",
            "type": "object"
          },
          "circulating_market_cap": {
            "type": "string"
          },
          "decimals": {
            "type": "string"
          },
          "exchange_rate": {
            "type": "string"
          },
          "holders_count": {
            "type": "string"
          },
          "icon_url": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "symbol": {
            "type": "string"
          },
          "total_supply": {
            "type": "string"
          },
          "type": {
            "$ref": "#/components/schemas/v1TokenType"
          }
        },
        "type": "object"
      },
      "v1AggregatedTokenInfoChainInfo": {
        "properties": {
          "contract_name": {
            "type": "string"
          },
          "holders_count": {
            "type": "string"
          },
          "is_verified": {
            "type": "boolean"
          },
          "total_supply": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "v1BasicDomainInfo": {
        "properties": {
          "name": {
            "type": "string"
          },
          "protocol": {
            "$ref": "#/components/schemas/v1ProtocolInfo"
          }
        },
        "type": "object"
      },
      "v1BatchGetMetadataResponse": {
        "properties": {
          "addresses": {
            "additionalProperties": {
              "$ref": "#/components/schemas/v1AddressMetadataResponse"
            },
            "type": "object"
          }
        },
        "type": "object"
      },
      "v1BatchGetReputationResponse": {
        "properties": {
          "addresses": {
            "additionalProperties": {
              "$ref": "#/components/schemas/v1Reputation"
            },
            "type": "object"
          }
        },
        "type": "object"
      },
      "v1BatchResolveAddressNamesResponse": {
        "properties": {
          "names": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          }
        },
        "type": "object"
      },
      "v1BatchResolveAddressesMultichainRequest": {
        "properties": {
          "addresses": {
            "items": {
              "type": "string"
            },
            "title": "List of requested addresses",
            "type": "array"
          },
          "all_protocols": {
            "description": "If true, search across all supported protocols and ignore `protocols`.\nWhen `chain_id` is set, the search is scoped to all protocols on that chain.",
            "type": "boolean"
          },
          "chain_id": {
            "format": "int64",
            "title": "The chain (network) where domain search should be done",
            "type": "string"
          },
          "protocols": {
            "title": "comma separated list of protocol ids. Default is ENS protocol only",
            "type": "string"
          }
        },
        "type": "object"
      },
      "v1Chain": {
        "properties": {
          "explorer_url": {
            "type": "string"
          },
          "icon_url": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "v1ChainBlockNumber": {
        "properties": {
          "block_number": {
            "format": "uint64",
            "type": "string"
          },
          "chain_id": {
            "format": "int64",
            "type": "string"
          }
        },
        "type": "object"
      },
      "v1ClusterQuickSearchResponse": {
        "properties": {
          "addresses": {
            "items": {
              "$ref": "#/components/schemas/v1GetAddressResponse",
              "type": "object"
            },
            "type": "array"
          },
          "block_numbers": {
            "items": {
              "$ref": "#/components/schemas/v1ChainBlockNumber",
              "type": "object"
            },
            "type": "array"
          },
          "blocks": {
            "items": {
              "$ref": "#/components/schemas/v1Hash",
              "type": "object"
            },
            "type": "array"
          },
          "dapps": {
            "items": {
              "$ref": "#/components/schemas/v1MarketplaceDapp",
              "type": "object"
            },
            "type": "array"
          },
          "domains": {
            "items": {
              "$ref": "#/components/schemas/v1Domain",
              "type": "object"
            },
            "type": "array"
          },
          "nfts": {
            "items": {
              "$ref": "#/components/schemas/v1AggregatedTokenInfo",
              "type": "object"
            },
            "type": "array"
          },
          "tokens": {
            "items": {
              "$ref": "#/components/schemas/v1AggregatedTokenInfo",
              "type": "object"
            },
            "type": "array"
          },
          "transactions": {
            "items": {
              "$ref": "#/components/schemas/v1Hash",
              "type": "object"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "v1ContractsPageStats": {
        "description": "Pre-assembled set of statistics for the contracts page.\nFields are optional because individual charts may be disabled.",
        "properties": {
          "new_contracts_24h": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "new_verified_contracts_24h": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "total_contracts": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "total_verified_contracts": {
            "$ref": "#/components/schemas/v1Counter"
          }
        },
        "type": "object"
      },
      "v1Counter": {
        "properties": {
          "description": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "units": {
            "description": "Measurement units (e.g. \"seconds\", \"ETH\"), if applicable.",
            "type": "string"
          },
          "value": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "v1Counters": {
        "properties": {
          "counters": {
            "items": {
              "$ref": "#/components/schemas/v1Counter",
              "type": "object"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "v1DetailedDomain": {
        "properties": {
          "expiry_date": {
            "title": "Optional. RFC 3339 datetime  of expiry date. None means never expires",
            "type": "string"
          },
          "id": {
            "title": "Unique id for the domain, also known as nodehash",
            "type": "string"
          },
          "name": {
            "title": "The human readable name, if known. Unknown portions replaced with hash in square brackets (eg, foo.[1234].eth)",
            "type": "string"
          },
          "other_addresses": {
            "additionalProperties": {
              "type": "string"
            },
            "title": "Map chain -> resolved_address that contains other blockchain addresses.\nThis map will contain `current_chain_id` -> `resovled_address` if `resovled_address` is not None",
            "type": "object"
          },
          "owner": {
            "$ref": "#/components/schemas/v1Address",
            "title": "The account that owns the domain"
          },
          "protocol": {
            "$ref": "#/components/schemas/v1ProtocolInfo",
            "title": "Information about protocol that domain belongs to"
          },
          "protocol_dapp_logo": {
            "description": "Optional. Logo URL of the protocol's own dApp. Same value for every\ndomain in the protocol, surfaced here for convenient rendering\nalongside `protocol_dapp_url`.",
            "type": "string"
          },
          "protocol_dapp_url": {
            "description": "Optional. Deep link to this domain inside the protocol's own dApp,\nrendered from the protocol's `protocol_dapp_url_template` config.",
            "type": "string"
          },
          "registrant": {
            "$ref": "#/components/schemas/v1Address",
            "title": "Optional. The account that owns the ERC721 NFT for the domain"
          },
          "registration_date": {
            "description": "Optional. RFC 3339 datetime  of expiry date.",
            "type": "string"
          },
          "resolved_address": {
            "$ref": "#/components/schemas/v1Address",
            "title": "Optional. Resolved address of this domain"
          },
          "resolved_with_wildcard": {
            "type": "boolean"
          },
          "resolver_address": {
            "$ref": "#/components/schemas/v1Address"
          },
          "stored_offchain": {
            "type": "boolean"
          },
          "tokens": {
            "items": {
              "$ref": "#/components/schemas/v1Token",
              "type": "object"
            },
            "title": "List of NFT tokens related to this domain",
            "type": "array"
          },
          "wrapped_owner": {
            "$ref": "#/components/schemas/v1Address",
            "title": "Optional. Owner of NameWrapper NFT"
          }
        },
        "type": "object"
      },
      "v1Domain": {
        "properties": {
          "address": {
            "type": "string"
          },
          "expiry_date": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "protocol": {
            "$ref": "#/components/schemas/v1ProtocolInfo"
          }
        },
        "type": "object"
      },
      "v1DomainEvent": {
        "properties": {
          "action": {
            "title": "Optional. Action name",
            "type": "string"
          },
          "from_address": {
            "$ref": "#/components/schemas/v1Address",
            "title": "/Sender of transaction"
          },
          "timestamp": {
            "title": "Timestamp of this transaction",
            "type": "string"
          },
          "transaction_hash": {
            "title": "Transaction hash where action occured",
            "type": "string"
          }
        },
        "type": "object"
      },
      "v1DomainInfo": {
        "properties": {
          "address": {
            "type": "string"
          },
          "expiry_date": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "names_count": {
            "format": "int64",
            "type": "integer"
          }
        },
        "type": "object"
      },
      "v1GetAddressResponse": {
        "properties": {
          "chain_infos": {
            "additionalProperties": {
              "$ref": "#/components/schemas/v1GetAddressResponseChainInfo"
            },
            "description": "Map of chain id to chain-specific information.",
            "type": "object"
          },
          "coin_balance": {
            "description": "Sum of coin balances across all chains.",
            "type": "string"
          },
          "domains": {
            "items": {
              "$ref": "#/components/schemas/v1BasicDomainInfo",
              "type": "object"
            },
            "type": "array"
          },
          "exchange_rate": {
            "description": "Exchange rate of the cluster native coin.",
            "type": "string"
          },
          "has_interop_message_transfers": {
            "type": "boolean"
          },
          "has_tokens": {
            "type": "boolean"
          },
          "hash": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "v1GetAddressResponseChainInfo": {
        "description": "Chain-specific information.",
        "properties": {
          "coin_balance": {
            "type": "string"
          },
          "contract_name": {
            "type": "string"
          },
          "is_contract": {
            "type": "boolean"
          },
          "is_verified": {
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "v1GetProtocolsResponse": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/v1ProtocolInfo",
              "type": "object"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "v1GetPublicTagAddressesResponse": {
        "properties": {
          "addresses": {
            "items": {
              "type": "string"
            },
            "title": "TODO: remove this field",
            "type": "array"
          },
          "items": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "nextPageParams": {
            "$ref": "#/components/schemas/v1Pagination"
          }
        },
        "type": "object"
      },
      "v1GetPublicTagTypesResponse": {
        "properties": {
          "tagTypes": {
            "items": {
              "$ref": "#/components/schemas/v1PublicTagType",
              "type": "object"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "v1Hash": {
        "properties": {
          "chain_id": {
            "type": "string"
          },
          "hash": {
            "type": "string"
          },
          "hash_type": {
            "$ref": "#/components/schemas/v1HashType"
          }
        },
        "type": "object"
      },
      "v1HashType": {
        "default": "HASH_TYPE_BLOCK",
        "enum": [
          "HASH_TYPE_BLOCK",
          "HASH_TYPE_TRANSACTION"
        ],
        "type": "string"
      },
      "v1LineChart": {
        "description": "A line chart: its metadata and the series of data points.",
        "properties": {
          "chart": {
            "items": {
              "$ref": "#/components/schemas/v1Point",
              "type": "object"
            },
            "type": "array"
          },
          "info": {
            "$ref": "#/components/schemas/v1LineChartInfo"
          }
        },
        "type": "object"
      },
      "v1LineChartInfo": {
        "description": "Metadata describing a line chart.",
        "properties": {
          "description": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "resolutions": {
            "description": "Available time resolutions for this chart (e.g. \"DAY\", \"WEEK\").",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "title": {
            "type": "string"
          },
          "units": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "v1LineChartSection": {
        "description": "A named group of related line charts.\nMainly intended for corresponding UI layout.",
        "properties": {
          "charts": {
            "items": {
              "$ref": "#/components/schemas/v1LineChartInfo",
              "type": "object"
            },
            "type": "array"
          },
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "v1LineCharts": {
        "properties": {
          "sections": {
            "items": {
              "$ref": "#/components/schemas/v1LineChartSection",
              "type": "object"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "v1ListClusterChainsResponse": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/v1Chain",
              "type": "object"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "v1ListDomainEventsResponse": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/v1DomainEvent",
              "type": "object"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "v1LookupAddressResponse": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/v1Domain",
              "type": "object"
            },
            "title": "List of domains that resolved to or owned by requested address\nSorted by relevance, so first address could be displayed as main resolved address",
            "type": "array"
          },
          "next_page_params": {
            "$ref": "#/components/schemas/v1Pagination"
          }
        },
        "type": "object"
      },
      "v1MainPageInterchainStats": {
        "description": "Interchain messaging statistics for the main page.\nFields are optional because individual charts may be disabled.",
        "properties": {
          "total_interchain_messages": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "total_interchain_messages_received": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "total_interchain_messages_sent": {
            "$ref": "#/components/schemas/v1Counter"
          }
        },
        "type": "object"
      },
      "v1MainPageMultichainStats": {
        "description": "Multichain-aggregated statistics for the main page of multichain indexer.\nFields are optional because individual charts may be disabled.",
        "properties": {
          "new_txns_multichain_window": {
            "$ref": "#/components/schemas/v1LineChart"
          },
          "total_multichain_addresses": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "total_multichain_txns": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "yesterday_txns_multichain": {
            "$ref": "#/components/schemas/v1Counter"
          }
        },
        "type": "object"
      },
      "v1MainPageStats": {
        "description": "Pre-assembled set of statistics for the main indexer page.\nFields are optional because individual charts may be disabled.",
        "properties": {
          "average_block_time": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "daily_new_operational_transactions": {
            "$ref": "#/components/schemas/v1LineChart"
          },
          "daily_new_transactions": {
            "$ref": "#/components/schemas/v1LineChart"
          },
          "op_stack_daily_new_operational_transactions": {
            "$ref": "#/components/schemas/v1LineChart"
          },
          "op_stack_total_operational_transactions": {
            "$ref": "#/components/schemas/v1Counter",
            "description": "OP-Stack-specific variants of operational transaction counters."
          },
          "op_stack_yesterday_operational_transactions": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "total_addresses": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "total_blocks": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "total_operational_transactions": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "total_transactions": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "yesterday_operational_transactions": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "yesterday_transactions": {
            "$ref": "#/components/schemas/v1Counter"
          }
        },
        "type": "object"
      },
      "v1MarketplaceDapp": {
        "properties": {
          "chain_id": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "logo": {
            "type": "string"
          },
          "short_description": {
            "type": "string"
          },
          "title": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "v1Pagination": {
        "properties": {
          "pageSize": {
            "format": "int64",
            "type": "integer"
          },
          "pageToken": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "v1Point": {
        "description": "A single data point on a line chart.\nAll integers are encoded as strings to prevent data loss.",
        "properties": {
          "date": {
            "description": "Start date of the period this point covers.",
            "type": "string"
          },
          "date_to": {
            "description": "End date of the period (relevant for aggregated resolutions\nlike WEEK, MONTH, YEAR; equal to `date` for DAY resolution).",
            "type": "string"
          },
          "is_approximate": {
            "description": "True when the value is an approximation (i.e. the period is\nnot yet complete).",
            "type": "boolean"
          },
          "value": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "v1ProtocolInfo": {
        "properties": {
          "deployment_blockscout_base_url": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "docs_url": {
            "type": "string"
          },
          "icon_url": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "short_name": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "tld_list": {
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "v1PublicTagType": {
        "properties": {
          "description": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "type": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "v1QuickSearchResponse": {
        "properties": {
          "addresses": {
            "items": {
              "$ref": "#/components/schemas/v1Address",
              "type": "object"
            },
            "type": "array"
          },
          "block_numbers": {
            "items": {
              "$ref": "#/components/schemas/v1ChainBlockNumber",
              "type": "object"
            },
            "type": "array"
          },
          "blocks": {
            "items": {
              "$ref": "#/components/schemas/v1Hash",
              "type": "object"
            },
            "type": "array"
          },
          "dapps": {
            "items": {
              "$ref": "#/components/schemas/v1MarketplaceDapp",
              "type": "object"
            },
            "type": "array"
          },
          "domains": {
            "items": {
              "$ref": "#/components/schemas/v1Domain",
              "type": "object"
            },
            "type": "array"
          },
          "nfts": {
            "items": {
              "$ref": "#/components/schemas/v1Address",
              "type": "object"
            },
            "type": "array"
          },
          "tokens": {
            "items": {
              "$ref": "#/components/schemas/v1Token",
              "type": "object"
            },
            "type": "array"
          },
          "transactions": {
            "items": {
              "$ref": "#/components/schemas/v1Hash",
              "type": "object"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "v1Reputation": {
        "properties": {
          "score": {
            "format": "int32",
            "type": "integer"
          }
        },
        "type": "object"
      },
      "v1SearchAddressesResponse": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/v1GetAddressResponse",
              "type": "object"
            },
            "type": "array"
          },
          "next_page_params": {
            "$ref": "#/components/schemas/v1Pagination"
          }
        },
        "type": "object"
      },
      "v1SearchBlockNumbersResponse": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/v1ChainBlockNumber",
              "type": "object"
            },
            "type": "array"
          },
          "next_page_params": {
            "$ref": "#/components/schemas/v1Pagination"
          }
        },
        "type": "object"
      },
      "v1SearchBlocksResponse": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/v1Hash",
              "type": "object"
            },
            "type": "array"
          },
          "next_page_params": {
            "$ref": "#/components/schemas/v1Pagination"
          }
        },
        "type": "object"
      },
      "v1SearchDomainsResponse": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/v1Domain",
              "type": "object"
            },
            "type": "array"
          },
          "next_page_params": {
            "$ref": "#/components/schemas/v1Pagination"
          }
        },
        "type": "object"
      },
      "v1SearchNftsResponse": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/v1AggregatedTokenInfo",
              "type": "object"
            },
            "type": "array"
          },
          "next_page_params": {
            "$ref": "#/components/schemas/v1Pagination"
          }
        },
        "type": "object"
      },
      "v1SearchPublicTagsResponse": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/v1TagAddresses",
              "type": "object"
            },
            "type": "array"
          },
          "nextPageParams": {
            "$ref": "#/components/schemas/v1Pagination"
          }
        },
        "type": "object"
      },
      "v1SubmitAddressesToExtractorsRequest": {
        "properties": {
          "addresses": {
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "v1SubmitAddressesToExtractorsResponse": {
        "type": "object"
      },
      "v1Tag": {
        "properties": {
          "meta": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "ordinal": {
            "format": "int32",
            "type": "integer"
          },
          "slug": {
            "type": "string"
          },
          "tagType": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "v1TagAddresses": {
        "properties": {
          "addresses": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "tag": {
            "$ref": "#/components/schemas/v1Tag"
          }
        },
        "type": "object"
      },
      "v1Token": {
        "properties": {
          "address": {
            "type": "string"
          },
          "chain_id": {
            "type": "string"
          },
          "icon_url": {
            "type": "string"
          },
          "is_verified_contract": {
            "type": "boolean"
          },
          "name": {
            "type": "string"
          },
          "symbol": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "v1TokenType": {
        "default": "TOKEN_TYPE_UNSPECIFIED",
        "enum": [
          "TOKEN_TYPE_UNSPECIFIED",
          "TOKEN_TYPE_ERC_20",
          "TOKEN_TYPE_ERC_721",
          "TOKEN_TYPE_ERC_1155",
          "TOKEN_TYPE_ERC_404",
          "TOKEN_TYPE_ERC_7802",
          "TOKEN_TYPE_ZRC_2",
          "TOKEN_TYPE_NATIVE",
          "TOKEN_TYPE_ERC_7984"
        ],
        "type": "string"
      },
      "v1TransactionsPageStats": {
        "description": "Pre-assembled set of statistics for the transactions page.\nFields are optional because individual charts may be disabled.",
        "properties": {
          "average_transactions_fee_24h": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "new_zetachain_cross_chain_txns_24h": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "op_stack_operational_transactions_24h": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "operational_transactions_24h": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "pending_transactions_30m": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "pending_zetachain_cross_chain_txns": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "total_zetachain_cross_chain_txns": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "transactions_24h": {
            "$ref": "#/components/schemas/v1Counter"
          },
          "transactions_fee_24h": {
            "$ref": "#/components/schemas/v1Counter"
          }
        },
        "type": "object"
      }
    },
    "securitySchemes": {
      "apiKeyAuth": {
        "description": "API key passed as the `apikey` query parameter.",
        "in": "query",
        "name": "apikey",
        "type": "apiKey"
      },
      "bearerAuth": {
        "bearerFormat": "JWT",
        "description": "API key passed as a Bearer token in the Authorization header.",
        "scheme": "bearer",
        "type": "http"
      }
    }
  },
  "info": {
    "contact": {
      "email": "info@blockscout.com",
      "url": "https://dev.blockscout.com/"
    },
    "description": "Blockscout's universal multichain API for accessing explorer-indexed blockchain data - such as addresses, transactions, blocks, tokens, NFTs, contracts, and related search/results endpoints - across supported networks through a single standardized interface.",
    "title": "Blockscout Pro API",
    "version": "0.5.0"
  },
  "openapi": "3.0.0",
  "paths": {
    "/services/bens/api/v1/addresses/{address}": {
      "get": {
        "operationId": "MultichainDomains_GetAddressMultichain",
        "parameters": [
          {
            "in": "path",
            "name": "address",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The chain (network) where domain search should be done",
            "in": "query",
            "name": "chain_id",
            "schema": {
              "format": "int64",
              "type": "string"
            }
          },
          {
            "description": "comma separated list of protocol ids. Default is ENS protocol only",
            "in": "query",
            "name": "protocols",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "If true, search across all supported protocols and ignore `protocols`.\nWhen `chain_id` is set, the search is scoped to all protocols on that chain.",
            "in": "query",
            "name": "all_protocols",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1GetAddressResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Get detailed information about main address of requested name",
        "tags": [
          "MultichainDomains"
        ]
      }
    },
    "/services/bens/api/v1/addresses:batch-resolve": {
      "post": {
        "operationId": "MultichainDomains_BatchResolveAddressesMultichain",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/v1BatchResolveAddressesMultichainRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1BatchResolveAddressNamesResponse"
                }
              }
            },
            "description": "A successful response."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Perform batch resolving of list of addresses to names for blockscout backend requests",
        "tags": [
          "MultichainDomains"
        ]
      }
    },
    "/services/bens/api/v1/addresses:lookup": {
      "get": {
        "operationId": "MultichainDomains_LookupAddressMultichain",
        "parameters": [
          {
            "description": "Address of EOA or contract",
            "in": "query",
            "name": "address",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "chain_id",
            "schema": {
              "format": "int64",
              "type": "string"
            }
          },
          {
            "description": "comma separated list of protocol ids. Default is ENS protocol only",
            "in": "query",
            "name": "protocols",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "If true, search across all supported protocols and ignore `protocols`.\nWhen `chain_id` is set, the search is scoped to all protocols on that chain.",
            "in": "query",
            "name": "all_protocols",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Include domains resolved to the address",
            "in": "query",
            "name": "resolved_to",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Include domains owned by the address",
            "in": "query",
            "name": "owned_by",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Filtering field to remove expired domains",
            "in": "query",
            "name": "only_active",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Sorting field. Default is `registration_date`",
            "in": "query",
            "name": "sort",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Order direction. Defaut is DESC",
            "in": "query",
            "name": "order",
            "schema": {
              "default": "ORDER_UNSPECIFIED",
              "enum": [
                "ORDER_UNSPECIFIED",
                "ASC",
                "DESC"
              ],
              "type": "string"
            }
          },
          {
            "description": "Optional. Max number of items in single response. Default is 50",
            "in": "query",
            "name": "page_size",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "description": "Optional. Value of `.pagination.page_token` from previous response",
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1LookupAddressResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Get basic info about address for ens-lookup and blockscout quick-search. Sorted by `registration_date`",
        "tags": [
          "MultichainDomains"
        ]
      }
    },
    "/services/bens/api/v1/domains/{name}": {
      "get": {
        "operationId": "MultichainDomains_GetDomainNameMultichain",
        "parameters": [
          {
            "description": "Name of name, for example vitalik.eth",
            "in": "path",
            "name": "name",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The chain (network) where domain search should be done",
            "in": "query",
            "name": "chain_id",
            "schema": {
              "format": "int64",
              "type": "string"
            }
          },
          {
            "description": "Protocol id of domain, default is first priority protocol on that chain",
            "in": "query",
            "name": "protocol_id",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Filtering field to remove expired names",
            "in": "query",
            "name": "only_active",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1DetailedDomain"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Get detailed information about name for Detailed name page",
        "tags": [
          "MultichainDomains"
        ]
      }
    },
    "/services/bens/api/v1/domains/{name}/events": {
      "get": {
        "operationId": "MultichainDomains_ListDomainEventsMultichain",
        "parameters": [
          {
            "description": "Name of name, for example vitalik.eth",
            "in": "path",
            "name": "name",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The chain (network) where domain search should be done",
            "in": "query",
            "name": "chain_id",
            "schema": {
              "format": "int64",
              "type": "string"
            }
          },
          {
            "description": "Protocol id of domain, default is first priority protocol on that chain",
            "in": "query",
            "name": "protocol_id",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Sorting field. Default is `timestamp`",
            "in": "query",
            "name": "sort",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Order direction. Default is DESC",
            "in": "query",
            "name": "order",
            "schema": {
              "default": "ORDER_UNSPECIFIED",
              "enum": [
                "ORDER_UNSPECIFIED",
                "ASC",
                "DESC"
              ],
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1ListDomainEventsResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Get list of events of domain for Detailed domain page",
        "tags": [
          "MultichainDomains"
        ]
      }
    },
    "/services/bens/api/v1/domains:lookup": {
      "get": {
        "operationId": "MultichainDomains_LookupDomainNameMultichain",
        "parameters": [
          {
            "description": "Optional. Name of domain, for example vitalik.eth. None means lookup for any name",
            "in": "query",
            "name": "name",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The chain (network) where domain search should be done",
            "in": "query",
            "name": "chain_id",
            "schema": {
              "format": "int64",
              "type": "string"
            }
          },
          {
            "description": "comma separated list of protocol ids. Default is ENS protocol only",
            "in": "query",
            "name": "protocols",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "If true, search across all supported protocols and ignore `protocols`.\nWhen `chain_id` is set, the search is scoped to all protocols on that chain.",
            "in": "query",
            "name": "all_protocols",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Filtering field to remove expired names",
            "in": "query",
            "name": "only_active",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Sorting field. Default is `registration_date`",
            "in": "query",
            "name": "sort",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Order direction. Default is DESC",
            "in": "query",
            "name": "order",
            "schema": {
              "default": "ORDER_UNSPECIFIED",
              "enum": [
                "ORDER_UNSPECIFIED",
                "ASC",
                "DESC"
              ],
              "type": "string"
            }
          },
          {
            "description": "Optional. Max number of items in single response. Default is 50",
            "in": "query",
            "name": "page_size",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "description": "Optional. Value of `.pagination.page_token` from previous response",
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1LookupAddressResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Get basic info about name for ens-lookup and blockscout quick-search. Sorted by `registration_date`",
        "tags": [
          "MultichainDomains"
        ]
      }
    },
    "/services/bens/api/v1/protocols": {
      "get": {
        "operationId": "MultichainDomains_GetMultichainProtocols",
        "parameters": [
          {
            "description": "The chain (network) where to get protocols",
            "in": "query",
            "name": "chain_id",
            "schema": {
              "format": "int64",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1GetProtocolsResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Get list of supported protocols",
        "tags": [
          "MultichainDomains"
        ]
      }
    },
    "/services/bens/api/v1/{chain_id}/addresses/{address}": {
      "get": {
        "operationId": "DomainsExtractor_GetAddress",
        "parameters": [
          {
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "string"
            }
          },
          {
            "in": "path",
            "name": "address",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "protocol_id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1GetAddressResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Get detailed information about main domain of requested address",
        "tags": [
          "DomainsExtractor"
        ]
      }
    },
    "/services/bens/api/v1/{chain_id}/addresses:batch-resolve-names": {
      "post": {
        "operationId": "DomainsExtractor_BatchResolveAddressNames",
        "parameters": [
          {
            "description": "The chain (network) where domain search should be done",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DomainsExtractorBatchResolveAddressNamesBody"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1BatchResolveAddressNamesResponse"
                }
              }
            },
            "description": "A successful response."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Perform batch resolving of list of address for blockscout backend requests",
        "tags": [
          "DomainsExtractor"
        ]
      }
    },
    "/services/bens/api/v1/{chain_id}/addresses:lookup": {
      "get": {
        "operationId": "DomainsExtractor_LookupAddress",
        "parameters": [
          {
            "description": "The chain (network) where domain search should be done",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "string"
            }
          },
          {
            "description": "Address of EOA or contract",
            "in": "query",
            "name": "address",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Include domains resolved to the address",
            "in": "query",
            "name": "resolved_to",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Include domains owned by the address",
            "in": "query",
            "name": "owned_by",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Filtering field to remove expired domains",
            "in": "query",
            "name": "only_active",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Sorting field. Default is `registration_date`",
            "in": "query",
            "name": "sort",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Order direction. Defaut is DESC",
            "in": "query",
            "name": "order",
            "schema": {
              "default": "ORDER_UNSPECIFIED",
              "enum": [
                "ORDER_UNSPECIFIED",
                "ASC",
                "DESC"
              ],
              "type": "string"
            }
          },
          {
            "description": "Optional. Max number of items in single response. Default is 50",
            "in": "query",
            "name": "page_size",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "description": "Optional. Value of `.pagination.page_token` from previous response",
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "comma separated list of protocol ids to filter by",
            "in": "query",
            "name": "protocols",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1LookupAddressResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Get basic info about address for ens-lookup and blockscout quick-search. Sorted by `registration_date`",
        "tags": [
          "DomainsExtractor"
        ]
      }
    },
    "/services/bens/api/v1/{chain_id}/domains/{name}": {
      "get": {
        "operationId": "DomainsExtractor_GetDomain",
        "parameters": [
          {
            "description": "The chain (network) where domain search should be done",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "string"
            }
          },
          {
            "description": "Name of domain, for example vitalik.eth",
            "in": "path",
            "name": "name",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Filtering field to remove expired domains",
            "in": "query",
            "name": "only_active",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Protocol id of domain, default is first priority protocol on that chain",
            "in": "query",
            "name": "protocol_id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1DetailedDomain"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Get detailed information about domain for Detailed domain page",
        "tags": [
          "DomainsExtractor"
        ]
      }
    },
    "/services/bens/api/v1/{chain_id}/domains/{name}/events": {
      "get": {
        "operationId": "DomainsExtractor_ListDomainEvents",
        "parameters": [
          {
            "description": "The chain (network) where domain search should be done",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "string"
            }
          },
          {
            "description": "Name of domain, for example vitalik.eth",
            "in": "path",
            "name": "name",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Sorting field. Default is `timestamp`",
            "in": "query",
            "name": "sort",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Order direction. Default is DESC",
            "in": "query",
            "name": "order",
            "schema": {
              "default": "ORDER_UNSPECIFIED",
              "enum": [
                "ORDER_UNSPECIFIED",
                "ASC",
                "DESC"
              ],
              "type": "string"
            }
          },
          {
            "description": "Protocol id of domain, default is first priority protocol on that chain",
            "in": "query",
            "name": "protocol_id",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1ListDomainEventsResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Get list of events of domain for Detailed domain page",
        "tags": [
          "DomainsExtractor"
        ]
      }
    },
    "/services/bens/api/v1/{chain_id}/domains:lookup": {
      "get": {
        "operationId": "DomainsExtractor_LookupDomainName",
        "parameters": [
          {
            "description": "The chain (network) where domain search should be done",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "string"
            }
          },
          {
            "description": "Optional. Name of domain, for example vitalik.eth. None means lookup for any name",
            "in": "query",
            "name": "name",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Filtering field to remove expired domains",
            "in": "query",
            "name": "only_active",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Sorting field. Default is `registration_date`",
            "in": "query",
            "name": "sort",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Order direction. Default is DESC",
            "in": "query",
            "name": "order",
            "schema": {
              "default": "ORDER_UNSPECIFIED",
              "enum": [
                "ORDER_UNSPECIFIED",
                "ASC",
                "DESC"
              ],
              "type": "string"
            }
          },
          {
            "description": "Optional. Max number of items in single response. Default is 50",
            "in": "query",
            "name": "page_size",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "description": "Optional. Value of `.pagination.page_token` from previous response",
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "comma separated list of protocol ids to filter by",
            "in": "query",
            "name": "protocols",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1LookupAddressResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Get basic info about domain for ens-lookup and blockscout quick-search. Sorted by `registration_date`",
        "tags": [
          "DomainsExtractor"
        ]
      }
    },
    "/services/bens/api/v1/{chain_id}/protocols": {
      "get": {
        "operationId": "DomainsExtractor_GetProtocols",
        "parameters": [
          {
            "description": "The chain (network) where to get protocols",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "format": "int64",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1GetProtocolsResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Get list of supported protocols",
        "tags": [
          "DomainsExtractor"
        ]
      }
    },
    "/services/metadata/api/v1/addresses": {
      "get": {
        "operationId": "Metadata_GetPublicTagAddresses",
        "parameters": [
          {
            "in": "query",
            "name": "slug",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "tagType",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "If not provided, only multichain tags will be returned",
            "in": "query",
            "name": "chainId",
            "schema": {
              "format": "int64",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "pageSize",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "pageToken",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1GetPublicTagAddressesResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "tags": [
          "Metadata"
        ]
      }
    },
    "/services/metadata/api/v1/addresses:submit": {
      "post": {
        "operationId": "Metadata_SubmitAddressesToExtractors",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/v1SubmitAddressesToExtractorsRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1SubmitAddressesToExtractorsResponse"
                }
              }
            },
            "description": "A successful response."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "tags": [
          "Metadata"
        ]
      }
    },
    "/services/metadata/api/v1/metadata": {
      "get": {
        "operationId": "Metadata_BatchGetMetadata",
        "parameters": [
          {
            "description": "Comma separated list of addresses",
            "in": "query",
            "name": "addresses",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "If not provided, only multichain tags will be returned",
            "in": "query",
            "name": "chainId",
            "schema": {
              "format": "int64",
              "type": "string"
            }
          },
          {
            "description": "If provided, the first `tags_limit` tags will be returned for each address",
            "in": "query",
            "name": "tagsLimit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "description": "Comma separated list of tag types",
            "in": "query",
            "name": "tagTypes",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1BatchGetMetadataResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "tags": [
          "Metadata"
        ]
      }
    },
    "/services/metadata/api/v1/public-tag-types": {
      "get": {
        "operationId": "Metadata_GetPublicTagTypes",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1GetPublicTagTypesResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "tags": [
          "Metadata"
        ]
      }
    },
    "/services/metadata/api/v1/reputation": {
      "get": {
        "operationId": "Metadata_BatchGetReputation",
        "parameters": [
          {
            "description": "Comma separated list of addresses",
            "in": "query",
            "name": "addresses",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1BatchGetReputationResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "tags": [
          "Metadata"
        ]
      }
    },
    "/services/metadata/api/v1/tags:search": {
      "get": {
        "operationId": "Metadata_SearchPublicTags",
        "parameters": [
          {
            "in": "query",
            "name": "chain_id",
            "schema": {
              "format": "int64",
              "type": "string"
            }
          },
          {
            "description": "Comma separated list of tag types",
            "in": "query",
            "name": "tag_types",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "name",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "page_size",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "address_limit",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1SearchPublicTagsResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "tags": [
          "Metadata"
        ]
      }
    },
    "/services/multichain/api/v1/clusters/{cluster_id}/chains": {
      "get": {
        "operationId": "ClusterExplorerService_ListClusterChains",
        "parameters": [
          {
            "in": "path",
            "name": "cluster_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Metric used to sort chains. Supported values: active_accounts, daily_transactions,\nnew_addresses, tps. Defaults to active_accounts.",
            "in": "query",
            "name": "sort",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Sort order: \"asc\" or \"desc\". Defaults to \"desc\" (higher values first).",
            "in": "query",
            "name": "order",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1ListClusterChainsResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Lists all chains in the cluster, optionally sorted by a metric (e.g. active_accounts, tps).",
        "tags": [
          "ClusterExplorerService"
        ]
      }
    },
    "/services/multichain/api/v1/clusters/{cluster_id}/search/addresses": {
      "get": {
        "operationId": "ClusterExplorerService_SearchAddresses",
        "parameters": [
          {
            "in": "path",
            "name": "cluster_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of chain ids to filter by.",
            "in": "query",
            "name": "chain_id",
            "schema": {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "page_size",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1SearchAddressesResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Full-text search for addresses by query string; optional chain filter and pagination.",
        "tags": [
          "ClusterExplorerService"
        ]
      }
    },
    "/services/multichain/api/v1/clusters/{cluster_id}/search/block-numbers": {
      "get": {
        "operationId": "ClusterExplorerService_SearchBlockNumbers",
        "parameters": [
          {
            "in": "path",
            "name": "cluster_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of chain ids to filter by.",
            "in": "query",
            "name": "chain_id",
            "schema": {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "page_size",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1SearchBlockNumbersResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Full-text search for block numbers (returns chain + block number); optional chain filter and pagination.",
        "tags": [
          "ClusterExplorerService"
        ]
      }
    },
    "/services/multichain/api/v1/clusters/{cluster_id}/search/blocks": {
      "get": {
        "operationId": "ClusterExplorerService_SearchBlocks",
        "parameters": [
          {
            "in": "path",
            "name": "cluster_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of chain ids to filter by.",
            "in": "query",
            "name": "chain_id",
            "schema": {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "page_size",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1SearchBlocksResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Full-text search for blocks (returns block hashes); optional chain filter and pagination.",
        "tags": [
          "ClusterExplorerService"
        ]
      }
    },
    "/services/multichain/api/v1/clusters/{cluster_id}/search/domains": {
      "get": {
        "operationId": "ClusterExplorerService_SearchDomains",
        "parameters": [
          {
            "in": "path",
            "name": "cluster_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of chain ids to filter by.",
            "in": "query",
            "name": "chain_id",
            "schema": {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "page_size",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1SearchDomainsResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Full-text search for domains; optional chain filter and pagination.",
        "tags": [
          "ClusterExplorerService"
        ]
      }
    },
    "/services/multichain/api/v1/clusters/{cluster_id}/search/nfts": {
      "get": {
        "operationId": "ClusterExplorerService_SearchNfts",
        "parameters": [
          {
            "in": "path",
            "name": "cluster_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of chain ids to filter by.",
            "in": "query",
            "name": "chain_id",
            "schema": {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "page_size",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1SearchNftsResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Full-text search for NFTs by query string; optional chain filter and pagination.",
        "tags": [
          "ClusterExplorerService"
        ]
      }
    },
    "/services/multichain/api/v1/clusters/{cluster_id}/search/tokens": {
      "get": {
        "operationId": "ClusterExplorerService_SearchTokens",
        "parameters": [
          {
            "in": "path",
            "name": "cluster_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of chain ids to filter by.",
            "in": "query",
            "name": "chain_id",
            "schema": {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "page_size",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1SearchNftsResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Full-text search for tokens; optional chain filter and pagination.",
        "tags": [
          "ClusterExplorerService"
        ]
      }
    },
    "/services/multichain/api/v1/clusters/{cluster_id}/search/transactions": {
      "get": {
        "operationId": "ClusterExplorerService_SearchTransactions",
        "parameters": [
          {
            "in": "path",
            "name": "cluster_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of chain ids to filter by.",
            "in": "query",
            "name": "chain_id",
            "schema": {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          },
          {
            "in": "query",
            "name": "page_size",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1SearchBlocksResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Full-text search for transactions (returns transaction hashes); optional chain filter and pagination.",
        "tags": [
          "ClusterExplorerService"
        ]
      }
    },
    "/services/multichain/api/v1/clusters/{cluster_id}/search:quick": {
      "get": {
        "operationId": "ClusterExplorerService_QuickSearch",
        "parameters": [
          {
            "in": "path",
            "name": "cluster_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "unlimited_per_chain",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1ClusterQuickSearchResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Unified quick search across addresses, blocks, transactions, block numbers, dapps, tokens, NFTs, and domains; supports unlimited results per chain.",
        "tags": [
          "ClusterExplorerService"
        ]
      }
    },
    "/services/multichain/api/v1/search:quick": {
      "get": {
        "operationId": "MultichainAggregatorService_QuickSearch",
        "parameters": [
          {
            "in": "query",
            "name": "q",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "unlimited_per_chain",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1QuickSearchResponse"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Unified quick search across addresses, blocks, transactions, block numbers, dapps, tokens, NFTs, and domains; supports unlimited results per chain.",
        "tags": [
          "MultichainAggregatorService"
        ]
      }
    },
    "/{chain_id}/api/legacy/block/get-block-number-by-time": {
      "get": {
        "description": "Returns the block number created closest to a provided timestamp.\n\nRequired:\n- `timestamp`\n- `closest`\n",
        "operationId": "BlockScoutWeb.API.Legacy.BlockController.get_block_number_by_time",
        "parameters": [
          {
            "description": "Unix timestamp in seconds.",
            "in": "query",
            "name": "timestamp",
            "schema": {
              "$ref": "#/components/schemas/IntegerString"
            }
          },
          {
            "description": "Whether to return the block before or after the timestamp.",
            "in": "query",
            "name": "closest",
            "schema": {
              "enum": [
                "before",
                "after"
              ],
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "message": {
                      "description": "Human-readable status string — `OK` on success, a descriptive error message otherwise.",
                      "type": "string"
                    },
                    "result": {
                      "$ref": "#/components/schemas/GetBlockNumberByTimeResult"
                    },
                    "status": {
                      "description": "`1` = OK, `0` = error, `2` = pending.",
                      "enum": [
                        "0",
                        "1",
                        "2"
                      ],
                      "type": "string"
                    }
                  },
                  "required": [
                    "status",
                    "message",
                    "result"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Block number",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          }
        },
        "summary": "Get block number by time stamp",
        "tags": [
          "legacy"
        ]
      }
    },
    "/{chain_id}/api/legacy/eth/eth-block-number": {},
    "/{chain_id}/api/legacy/eth/eth-call": {},
    "/{chain_id}/api/legacy/eth/eth-get-balance": {},
    "/{chain_id}/api/legacy/eth/eth-get-logs": {},
    "/{chain_id}/api/legacy/eth/eth-get-storage-at": {},
    "/{chain_id}/api/legacy/eth/eth-send-raw-transaction": {},
    "/{chain_id}/api/v1/search": {
      "get": {
        "description": "Performs a unified search across multiple blockchain entity types including tokens, addresses, contracts, blocks, transactions and other resources.",
        "operationId": "BlockScoutWeb.API.V2.SearchController.search",
        "parameters": [
          {
            "description": "Search query filter",
            "in": "query",
            "name": "q",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Next page params type for paging",
            "in": "query",
            "name": "next_page_params_type",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Label for paging in the search results",
            "in": "query",
            "name": "label",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "Token for paging in the search results",
            "in": "query",
            "name": "token",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "Contract for paging in the search results",
            "in": "query",
            "name": "contract",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "TAC operation for paging in the search results",
            "in": "query",
            "name": "tac_operation",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "Metadata tag for paging in the search results",
            "in": "query",
            "name": "metadata_tag",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "Block for paging in the search results",
            "in": "query",
            "name": "block",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "Blob for paging in the search results",
            "in": "query",
            "name": "blob",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "User operation for paging in the search results",
            "in": "query",
            "name": "user_operation",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "Address for paging in the search results",
            "in": "query",
            "name": "address",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "ENS domain for paging in the search results",
            "in": "query",
            "name": "ens_domain",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchResult"
                }
              }
            },
            "description": "Successful search response containing matched items and pagination information.\n            Results are ordered by relevance and limited to 50 items per page.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Search for tokens, addresses, contracts, blocks, or transactions by identifier",
        "tags": [
          "search"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses": {
      "get": {
        "description": "Retrieves a paginated list of addresses holding the native coin, sorted by balance.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.addresses_list",
        "parameters": [
          {
            "description": "Sort results by:\n* balance - Sort by account balance\n* transactions_count - Sort by number of transactions\nShould be used together with `order` parameter.\n",
            "in": "query",
            "name": "sort",
            "schema": {
              "enum": [
                "balance",
                "transactions_count"
              ],
              "type": "string"
            }
          },
          {
            "description": "Sort order:\n* asc - Ascending order\n* desc - Descending order\nShould be used together with `sort` parameter.\n",
            "in": "query",
            "name": "order",
            "schema": {
              "enum": [
                "asc",
                "desc"
              ],
              "type": "string"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Fetched coin balance for paging",
            "in": "query",
            "name": "fetched_coin_balance",
            "schema": {
              "$ref": "#/components/schemas/IntegerStringNullable"
            }
          },
          {
            "description": "Address hash for paging",
            "in": "query",
            "name": "hash",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Transactions count for paging",
            "in": "query",
            "name": "transactions_count",
            "schema": {
              "anyOf": [
                {
                  "type": "integer"
                },
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "exchange_rate": {
                      "$ref": "#/components/schemas/FloatStringNullable"
                    },
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TopAddress"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "fetched_coin_balance": "124355417998347240251800",
                        "hash": "0x59708733fbbf64378d9293ec56b977c011a08fd2",
                        "transactions_count": null
                      },
                      "nullable": true,
                      "type": "object"
                    },
                    "total_supply": {
                      "$ref": "#/components/schemas/FloatStringNullable"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params",
                    "exchange_rate",
                    "total_supply"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of native coin holders with their balances, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          }
        },
        "summary": "List addresses holding native coins sorted by balance - top accounts",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}": {
      "get": {
        "description": "Retrieves detailed information for a specific address, including balance, transaction count, and metadata.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.address",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AddressResponse"
                }
              }
            },
            "description": "Detailed information about the specified address.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Retrieve detailed information about a specific address or contract",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/beacon/deposits": {
      "get": {
        "description": "Retrieves Beacon deposits for a specific address.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.beacon_deposits",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Deposit index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "maximum": 9223372036854776000,
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Deposit"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "index": 123
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Beacon deposits for the specified address.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List Beacon Deposits for a specific address",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/blocks-validated": {
      "get": {
        "description": "Retrieves blocks that were validated (mined) by a specific address. Useful for tracking validator/miner performance.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.blocks_validated",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Block"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 22546398
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Blocks validated by the specified address, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List blocks validated (mined) by a specific validator/miner address",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/celo/election-rewards": {
      "get": {
        "description": "Retrieves Celo election rewards for a specific address.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.celo_election_rewards",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Epoch number for paging",
            "in": "query",
            "name": "epoch_number",
            "schema": {
              "$ref": "#/components/schemas/IntegerString"
            }
          },
          {
            "description": "Amount for paging",
            "in": "query",
            "name": "amount",
            "schema": {
              "$ref": "#/components/schemas/IntegerStringNullable"
            }
          },
          {
            "description": "Associated account address hash for paging",
            "in": "query",
            "name": "associated_account_address_hash",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Type for paging",
            "in": "query",
            "name": "type",
            "schema": {
              "enum": [
                "voter",
                "validator",
                "group",
                "delegated_payment",
                "delegated-payment"
              ],
              "title": "CeloElectionRewardType",
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/ElectionReward"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "amount": "1000000000000000000",
                        "associated_account_address_hash": "0x1234567890123456789012345678901234567890",
                        "epoch_number": 100,
                        "type": "validator"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Celo election rewards for the specified address.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List Celo election rewards for a specific address",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/celo/election-rewards/csv": {
      "get": {
        "description": "Exports Celo election rewards for a specific address as a CSV file.",
        "operationId": "BlockScoutWeb.API.V2.CsvExportController.celo_election_rewards_csv",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Start of the time period (ISO 8601 format) in CSV export",
            "in": "query",
            "name": "from_period",
            "schema": {
              "anyOf": [
                {
                  "pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(?:T(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d(?:(?::|%3A)[0-5]\\d(?:\\.\\d{1,9})?)?)?(?:Z|(?:\\+|%2B|-)(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d)?)?)?$",
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "End of the time period (ISO 8601 format) In CSV export",
            "in": "query",
            "name": "to_period",
            "schema": {
              "anyOf": [
                {
                  "pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(?:T(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d(?:(?::|%3A)[0-5]\\d(?:\\.\\d{1,9})?)?)?(?:Z|(?:\\+|%2B|-)(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d)?)?)?$",
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Filter type in CSV export",
            "in": "query",
            "name": "filter_type",
            "schema": {
              "anyOf": [
                {
                  "enum": [
                    "address"
                  ],
                  "nullable": true,
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Filter value in CSV export",
            "in": "query",
            "name": "filter_value",
            "schema": {
              "anyOf": [
                {
                  "enum": [
                    "to",
                    "from"
                  ],
                  "nullable": true,
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/csv": {}
            },
            "description": "CSV file of Celo election rewards.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Export Celo election rewards as CSV",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/coin-balance-history": {
      "get": {
        "description": "Retrieves historical native coin balance changes for a specific address, tracking how an address's balance has changed over time.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.coin_balance_history",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/CoinBalance"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 22546398
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Historical coin balance changes for the specified address, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get native coin balance history for an address showing all balance changes",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/coin-balance-history-by-day": {
      "get": {
        "description": "Retrieves daily snapshots of native coin balance for a specific address. Useful for generating balance-over-time charts.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.coin_balance_history_by_day",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "days": {
                      "type": "integer"
                    },
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/CoinBalanceByDay"
                      },
                      "type": "array"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Daily coin balance history for the specified address.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get daily native coin balance snapshots for an address from previous 10 days",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/counters": {
      "get": {
        "description": "Retrieves count statistics for an address, including transactions, token transfers, gas usage, and validations.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.counters",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AddressCounters"
                }
              }
            },
            "description": "Count statistics for the specified address.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get activity count stats for a specific address",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/internal-transactions": {
      "get": {
        "description": "Retrieves all internal transactions involving a specific address, with optional filtering for internal transactions sent from or to the address.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.internal_transactions",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Filter transactions by direction:\n* to - Only show transactions sent to this address\n* from - Only show transactions sent from this address\nIf omitted, all transactions involving the address are returned.\n",
            "in": "query",
            "name": "filter",
            "schema": {
              "enum": [
                "to",
                "from"
              ],
              "type": "string"
            }
          },
          {
            "description": "If `false`, zero-value call-type internal transactions are excluded from results.",
            "in": "query",
            "name": "include_zero_value",
            "schema": {
              "default": true,
              "type": "boolean"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Transaction index for paging",
            "in": "query",
            "name": "transaction_index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/InternalTransaction"
                      },
                      "type": "array"
                    },
                    "meta": {
                      "properties": {
                        "message": {
                          "nullable": true,
                          "type": "string"
                        },
                        "status": {
                          "enum": [
                            1,
                            2
                          ],
                          "type": "integer"
                        }
                      },
                      "required": [
                        "status",
                        "message"
                      ],
                      "type": "object"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 22530770,
                        "index": 8,
                        "transaction_index": 8
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params",
                    "meta"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "All internal transactions for the specified address.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List all internal transactions involving a specific address",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/internal-transactions/csv": {
      "get": {
        "description": "Exports internal transactions for a specific address as a CSV file.",
        "operationId": "BlockScoutWeb.API.V2.CsvExportController.internal_transactions_csv",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Start of the time period (ISO 8601 format) in CSV export",
            "in": "query",
            "name": "from_period",
            "schema": {
              "anyOf": [
                {
                  "pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(?:T(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d(?:(?::|%3A)[0-5]\\d(?:\\.\\d{1,9})?)?)?(?:Z|(?:\\+|%2B|-)(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d)?)?)?$",
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "End of the time period (ISO 8601 format) In CSV export",
            "in": "query",
            "name": "to_period",
            "schema": {
              "anyOf": [
                {
                  "pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(?:T(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d(?:(?::|%3A)[0-5]\\d(?:\\.\\d{1,9})?)?)?(?:Z|(?:\\+|%2B|-)(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d)?)?)?$",
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Filter type in CSV export",
            "in": "query",
            "name": "filter_type",
            "schema": {
              "anyOf": [
                {
                  "enum": [
                    "address"
                  ],
                  "nullable": true,
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Filter value in CSV export",
            "in": "query",
            "name": "filter_value",
            "schema": {
              "anyOf": [
                {
                  "enum": [
                    "to",
                    "from"
                  ],
                  "nullable": true,
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/csv": {}
            },
            "description": "CSV file of internal transactions.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Export internal transactions as CSV",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/logs": {
      "get": {
        "description": "Retrieves event logs emitted by or involving a specific address.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.logs",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Log topic param in the query",
            "in": "query",
            "name": "topic",
            "schema": {
              "$ref": "#/components/schemas/HexData"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Log"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 22546398,
                        "index": 268
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Event logs for the specified address, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List event logs emitted by or involving a specific address",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/logs/csv": {
      "get": {
        "description": "Exports logs for a specific address as a CSV file.",
        "operationId": "BlockScoutWeb.API.V2.CsvExportController.logs_csv",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Start of the time period (ISO 8601 format) in CSV export",
            "in": "query",
            "name": "from_period",
            "schema": {
              "anyOf": [
                {
                  "pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(?:T(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d(?:(?::|%3A)[0-5]\\d(?:\\.\\d{1,9})?)?)?(?:Z|(?:\\+|%2B|-)(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d)?)?)?$",
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "End of the time period (ISO 8601 format) In CSV export",
            "in": "query",
            "name": "to_period",
            "schema": {
              "anyOf": [
                {
                  "pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(?:T(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d(?:(?::|%3A)[0-5]\\d(?:\\.\\d{1,9})?)?)?(?:Z|(?:\\+|%2B|-)(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d)?)?)?$",
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Filter type in CSV export",
            "in": "query",
            "name": "filter_type",
            "schema": {
              "anyOf": [
                {
                  "enum": [
                    "address"
                  ],
                  "nullable": true,
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Filter value in CSV export",
            "in": "query",
            "name": "filter_value",
            "schema": {
              "anyOf": [
                {
                  "enum": [
                    "to",
                    "from"
                  ],
                  "nullable": true,
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/csv": {}
            },
            "description": "CSV file of logs.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Export logs as CSV",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/nft": {
      "get": {
        "description": "Retrieves a list of NFTs (non-fungible tokens) owned by a specific address, with optional filtering by token type.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.nft_list",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Filter by token type. Comma-separated list of:\n* ERC-721 - Non-fungible tokens\n* ERC-1155 - Multi-token standard\n* ERC-404 - Hybrid fungible/non-fungible tokens\n\nExample: `ERC-721,ERC-1155` to show both NFT and multi-token transfers\n",
            "in": "query",
            "name": "type",
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "pattern": "^\\[?(ERC-20|ERC-721|ERC-1155|ERC-404|ERC-7984)(,(ERC-20|ERC-721|ERC-1155|ERC-404|ERC-7984))*\\]?$",
                  "type": "string"
                }
              ]
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Token contract address hash for paging",
            "in": "query",
            "name": "token_contract_address_hash",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Token ID for paging",
            "in": "query",
            "name": "token_id",
            "schema": {
              "$ref": "#/components/schemas/IntegerStringNullable"
            }
          },
          {
            "description": "Token type for paging",
            "in": "query",
            "name": "token_type",
            "schema": {
              "$ref": "#/components/schemas/TokenType"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TokenInstanceInList"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "token_contract_address_hash": "0x1ffe11b9fb7f6ff1b153ab8608cf403ecaf9d44a",
                        "token_id": "24950",
                        "token_type": "ERC-721"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "NFTs owned by the specified address, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List NFTs owned by a specific address with optional type filtering",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/nft/collections": {
      "get": {
        "description": "Retrieves NFTs owned by a specific address, organized by collection. Useful for displaying an address's NFT portfolio grouped by project.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.nft_collections",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Filter by token type. Comma-separated list of:\n* ERC-721 - Non-fungible tokens\n* ERC-1155 - Multi-token standard\n* ERC-404 - Hybrid fungible/non-fungible tokens\n\nExample: `ERC-721,ERC-1155` to show both NFT and multi-token transfers\n",
            "in": "query",
            "name": "type",
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "pattern": "^\\[?(ERC-20|ERC-721|ERC-1155|ERC-404|ERC-7984)(,(ERC-20|ERC-721|ERC-1155|ERC-404|ERC-7984))*\\]?$",
                  "type": "string"
                }
              ]
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Token contract address hash for paging",
            "in": "query",
            "name": "token_contract_address_hash",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Token type for paging",
            "in": "query",
            "name": "token_type",
            "schema": {
              "$ref": "#/components/schemas/TokenType"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/NFTCollection"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "token_contract_address_hash": "0x1ffe11b9fb7f6ff1b153ab8608cf403ecaf9d44a",
                        "token_type": "ERC-721"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "NFTs owned by the specified address, grouped by collection, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List NFTs owned by an address grouped by collection/project",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/tabs-counters": {
      "get": {
        "description": "Retrieves counters for various address-related entities (max counter value is 51).",
        "operationId": "BlockScoutWeb.API.V2.AddressController.tabs_counters",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AddressTabsCounters"
                }
              }
            },
            "description": "Counters for address tabs.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get counters for address tabs",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/token-balances": {
      "get": {
        "description": "Retrieves all token balances held by a specific address, including ERC-20, ERC-721, ERC-1155, and ERC-404 tokens.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.token_balances",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/TokenBalance"
                  },
                  "type": "array"
                }
              }
            },
            "description": "All token balances for the specified address.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List all token balances held by a specific address",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/token-transfers": {
      "get": {
        "description": "Retrieves token transfers involving a specific address, with optional filtering by token type, direction, and specific token.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.token_transfers",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Filter transactions by direction:\n* to - Only show transactions sent to this address\n* from - Only show transactions sent from this address\nIf omitted, all transactions involving the address are returned.\n",
            "in": "query",
            "name": "filter",
            "schema": {
              "enum": [
                "to",
                "from"
              ],
              "type": "string"
            }
          },
          {
            "description": "Filter by token type. Comma-separated list of:\n* ERC-20 - Fungible tokens\n* ERC-721 - Non-fungible tokens\n* ERC-1155 - Multi-token standard\n* ERC-404 - Hybrid fungible/non-fungible tokens\n\n\nExample: `ERC-20,ERC-721` to show both fungible and NFT transfers\n",
            "in": "query",
            "name": "type",
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "pattern": "^\\[?(ERC-20|ERC-721|ERC-1155|ERC-404|ERC-7984)(,(ERC-20|ERC-721|ERC-1155|ERC-404|ERC-7984))*\\]?$",
                  "type": "string"
                }
              ]
            }
          },
          {
            "description": "Filter token transfers by token contract address.",
            "in": "query",
            "name": "token",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Batch log index for paging",
            "in": "query",
            "name": "batch_log_index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Batch block hash for paging",
            "in": "query",
            "name": "batch_block_hash",
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "Batch transaction hash for paging",
            "in": "query",
            "name": "batch_transaction_hash",
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "Index in batch for paging",
            "in": "query",
            "name": "index_in_batch",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TokenTransfer"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 12345678,
                        "index": 0
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "All token transfers for the specified address.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List token transfers involving a specific address with filtering options",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/token-transfers/csv": {
      "get": {
        "description": "Exports token transfers for a specific address as a CSV file.",
        "operationId": "BlockScoutWeb.API.V2.CsvExportController.token_transfers_csv",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Start of the time period (ISO 8601 format) in CSV export",
            "in": "query",
            "name": "from_period",
            "schema": {
              "anyOf": [
                {
                  "pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(?:T(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d(?:(?::|%3A)[0-5]\\d(?:\\.\\d{1,9})?)?)?(?:Z|(?:\\+|%2B|-)(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d)?)?)?$",
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "End of the time period (ISO 8601 format) In CSV export",
            "in": "query",
            "name": "to_period",
            "schema": {
              "anyOf": [
                {
                  "pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(?:T(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d(?:(?::|%3A)[0-5]\\d(?:\\.\\d{1,9})?)?)?(?:Z|(?:\\+|%2B|-)(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d)?)?)?$",
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Filter type in CSV export",
            "in": "query",
            "name": "filter_type",
            "schema": {
              "anyOf": [
                {
                  "enum": [
                    "address"
                  ],
                  "nullable": true,
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Filter value in CSV export",
            "in": "query",
            "name": "filter_value",
            "schema": {
              "anyOf": [
                {
                  "enum": [
                    "to",
                    "from"
                  ],
                  "nullable": true,
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/csv": {}
            },
            "description": "CSV file of token transfers.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Export token transfers as CSV",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/tokens": {
      "get": {
        "description": "Retrieves token balances for a specific address with pagination and filtering by token type. Useful for displaying large token portfolios.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.tokens",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Filter by token type. Comma-separated list of:\n* ERC-20 - Fungible tokens\n* ERC-721 - Non-fungible tokens\n* ERC-1155 - Multi-token standard\n* ERC-404 - Hybrid fungible/non-fungible tokens\n\n\nExample: `ERC-20,ERC-721` to show both fungible and NFT transfers\n",
            "in": "query",
            "name": "type",
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "pattern": "^\\[?(ERC-20|ERC-721|ERC-1155|ERC-404|ERC-7984)(,(ERC-20|ERC-721|ERC-1155|ERC-404|ERC-7984))*\\]?$",
                  "type": "string"
                }
              ]
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Fiat value for paging",
            "in": "query",
            "name": "fiat_value",
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/FloatString"
                },
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "ID for paging",
            "in": "query",
            "name": "id",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Transaction value for paging",
            "in": "query",
            "name": "value",
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/IntegerString"
                },
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TokenBalance"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "fiat_value": null,
                        "id": 12519063346,
                        "value": "3750000000000000000000"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Token balances for the specified address with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List token balances for an address with pagination and type filtering",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/transactions": {
      "get": {
        "description": "Retrieves transactions involving a specific address, with optional filtering for transactions sent from or to the address.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.transactions",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Filter transactions by direction:\n* to - Only show transactions sent to this address\n* from - Only show transactions sent from this address\nIf omitted, all transactions involving the address are returned.\n",
            "in": "query",
            "name": "filter",
            "schema": {
              "enum": [
                "to",
                "from"
              ],
              "type": "string"
            }
          },
          {
            "description": "Sort results by:\n* block_number - Sort by block number\n* value - Sort by transaction value\n* fee - Sort by transaction fee\nShould be used together with `order` parameter.\n",
            "in": "query",
            "name": "sort",
            "schema": {
              "enum": [
                "block_number",
                "value",
                "fee"
              ],
              "type": "string"
            }
          },
          {
            "description": "Sort order:\n* asc - Ascending order\n* desc - Descending order\nShould be used together with `sort` parameter.\n",
            "in": "query",
            "name": "order",
            "schema": {
              "enum": [
                "asc",
                "desc"
              ],
              "type": "string"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "anyOf": [
                {
                  "type": "integer"
                },
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Transaction index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "anyOf": [
                {
                  "type": "integer"
                },
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Inserted at timestamp for paging (ISO8601)",
            "in": "query",
            "name": "inserted_at",
            "schema": {
              "format": "date-time",
              "type": "string"
            }
          },
          {
            "description": "Transaction hash for paging",
            "in": "query",
            "name": "hash",
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "Transaction value for paging",
            "in": "query",
            "name": "value",
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/IntegerString"
                },
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Transaction fee for paging",
            "in": "query",
            "name": "fee",
            "schema": {
              "$ref": "#/components/schemas/IntegerString"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Transaction"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 22566361,
                        "fee": "19206937428000",
                        "hash": "0xe38d616dade747097354b0731b5560f581536dacf22121feb4bb4a0b776018aa",
                        "index": 103,
                        "inserted_at": "2025-05-26T10:26:51.474448Z",
                        "value": "24741049597737"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "All transactions for the specified address.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List transactions involving a specific address with to-from filtering",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/transactions/csv": {
      "get": {
        "description": "Exports transactions for a specific address as a CSV file.",
        "operationId": "BlockScoutWeb.API.V2.CsvExportController.transactions_csv",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Start of the time period (ISO 8601 format) in CSV export",
            "in": "query",
            "name": "from_period",
            "schema": {
              "anyOf": [
                {
                  "pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(?:T(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d(?:(?::|%3A)[0-5]\\d(?:\\.\\d{1,9})?)?)?(?:Z|(?:\\+|%2B|-)(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d)?)?)?$",
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "End of the time period (ISO 8601 format) In CSV export",
            "in": "query",
            "name": "to_period",
            "schema": {
              "anyOf": [
                {
                  "pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(?:T(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d(?:(?::|%3A)[0-5]\\d(?:\\.\\d{1,9})?)?)?(?:Z|(?:\\+|%2B|-)(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d)?)?)?$",
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Filter type in CSV export",
            "in": "query",
            "name": "filter_type",
            "schema": {
              "anyOf": [
                {
                  "enum": [
                    "address"
                  ],
                  "nullable": true,
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Filter value in CSV export",
            "in": "query",
            "name": "filter_value",
            "schema": {
              "anyOf": [
                {
                  "enum": [
                    "to",
                    "from"
                  ],
                  "nullable": true,
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/csv": {}
            },
            "description": "CSV file of transactions.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Export transactions as CSV",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/addresses/{address_hash_param}/withdrawals": {
      "get": {
        "description": "Retrieves withdrawals involving a specific address, typically for proof-of-stake networks supporting validator withdrawals.",
        "operationId": "BlockScoutWeb.API.V2.AddressController.withdrawals",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Withdrawal"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "index": 88192653
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Withdrawals for the specified address, with pagination. Note that receiver field is not included in this endpoint.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List validator withdrawals involving a specific address",
        "tags": [
          "addresses"
        ]
      }
    },
    "/{chain_id}/api/v2/advanced-filters": {
      "get": {
        "description": "Returns a paginated, mixed list of activity — native value transfers, internal transactions and token transfers — filtered by transaction type, contract method, time window, address relations, value range and/or token contract. The response also echoes the resolved human-readable names of the methods and tokens referenced in the request filters.",
        "operationId": "BlockScoutWeb.API.V2.AdvancedFilterController.list",
        "parameters": [
          {
            "description": "Comma-separated list of transaction types to include. Allowed values: `COIN_TRANSFER`, `CONTRACT_INTERACTION`, `CONTRACT_CREATION`, `ERC-20`, `ERC-404`, `ERC-721`, `ERC-1155`, `ERC-7984` (plus `ZRC-2` on Zilliqa). Values are matched case-insensitively; unknown entries are silently dropped.",
            "example": "COIN_TRANSFER,ERC-20",
            "in": "query",
            "name": "transaction_types",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of 4-byte contract method selectors (lowercase, `0x`-prefixed). At most 20 unique entries are honored; invalid entries are dropped.",
            "example": "0xa9059cbb,0x095ea7b3",
            "in": "query",
            "name": "methods",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Inclusive lower bound on `timestamp` (ISO 8601).",
            "example": "2024-01-01T00:00:00Z",
            "in": "query",
            "name": "age_from",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Inclusive upper bound on `timestamp` (ISO 8601).",
            "example": "2024-12-31T23:59:59Z",
            "in": "query",
            "name": "age_to",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of sender address hashes to include.",
            "example": "0x5a52e96bacdabb82fd05763e25335261b270efcb,0x00000000219ab540356cbb839cbe05303d7705fa",
            "in": "query",
            "name": "from_address_hashes_to_include",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of sender address hashes to exclude.",
            "example": "0x5a52e96bacdabb82fd05763e25335261b270efcb,0x00000000219ab540356cbb839cbe05303d7705fa",
            "in": "query",
            "name": "from_address_hashes_to_exclude",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of recipient address hashes to include.",
            "example": "0x5a52e96bacdabb82fd05763e25335261b270efcb,0x00000000219ab540356cbb839cbe05303d7705fa",
            "in": "query",
            "name": "to_address_hashes_to_include",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of recipient address hashes to exclude.",
            "example": "0x5a52e96bacdabb82fd05763e25335261b270efcb,0x00000000219ab540356cbb839cbe05303d7705fa",
            "in": "query",
            "name": "to_address_hashes_to_exclude",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "How to combine the `from_address_hashes_*` and `to_address_hashes_*` filters. Accepts `or` or `and` (case-insensitive). `or` (default) matches an item if either side matches; `and` requires both sides to match. Any other value is silently coerced to `nil` (no relation constraint).",
            "example": "and",
            "in": "query",
            "name": "address_relation",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Inclusive lower bound on the item's transferred amount (decimal string in the token's base units).",
            "example": "0",
            "in": "query",
            "name": "amount_from",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Inclusive upper bound on the item's transferred amount (decimal string in the token's base units).",
            "example": "1000000",
            "in": "query",
            "name": "amount_to",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of token contract address hashes to include. Use the literal `native` to also include native coin transfers. Each list (include and exclude) is capped to 20 entries separately.",
            "example": "native,0xdac17f958d2ee523a2206206994597c13d831ec7",
            "in": "query",
            "name": "token_contract_address_hashes_to_include",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of token contract address hashes to exclude. Use the literal `native` to also exclude native coin transfers. Each list (include and exclude) is capped to 20 entries separately.",
            "example": "0x0000000000000000000000000000000000000000",
            "in": "query",
            "name": "token_contract_address_hashes_to_exclude",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of human-readable method names corresponding to the `methods` selectors.",
            "example": "transfer,approve",
            "in": "query",
            "name": "methods_names",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of token symbols to include.",
            "example": "USDT,USDC",
            "in": "query",
            "name": "token_contract_symbols_to_include",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of token symbols to exclude.",
            "example": "USDT,USDC",
            "in": "query",
            "name": "token_contract_symbols_to_exclude",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Keyset cursor: block number of the last item from the previous page.",
            "example": "23532302",
            "in": "query",
            "name": "block_number",
            "schema": {
              "pattern": "^([1-9][0-9]*|0)$",
              "type": "string"
            }
          },
          {
            "description": "Keyset cursor: transaction index within the block of the last item from the previous page.",
            "example": "1",
            "in": "query",
            "name": "transaction_index",
            "schema": {
              "pattern": "^([1-9][0-9]*|0)$",
              "type": "string"
            }
          },
          {
            "description": "Keyset cursor: internal-transaction index of the last item from the previous page. Use an empty string or the literal `null` when the previous item was not an internal transaction.",
            "in": "query",
            "name": "internal_transaction_index",
            "schema": {
              "$ref": "#/components/schemas/IntegerStringOrEmptyOrNullLiteral"
            }
          },
          {
            "description": "Keyset cursor: token-transfer index of the last item from the previous page. Use an empty string or the literal `null` when the previous item was not a token transfer.",
            "in": "query",
            "name": "token_transfer_index",
            "schema": {
              "$ref": "#/components/schemas/IntegerStringOrEmptyOrNullLiteral"
            }
          },
          {
            "description": "Keyset cursor: index within an ERC-1155 batch token transfer. Use an empty string or the literal `null` when the previous item was not part of a batch.",
            "in": "query",
            "name": "token_transfer_batch_index",
            "schema": {
              "$ref": "#/components/schemas/IntegerStringOrEmptyOrNullLiteral"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdvancedFilterResponse"
                }
              }
            },
            "description": "List of matching items with pagination information and resolved search params.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List transactions, internal transactions and token transfers matching the advanced filter criteria",
        "tags": [
          "advanced-filters"
        ]
      }
    },
    "/{chain_id}/api/v2/advanced-filters/csv": {
      "get": {
        "description": "Streams the items matching the advanced filter criteria as a CSV file. When asynchronous CSV export is enabled on the deployment, returns `202 Accepted` with a `request_id` that can be polled via `/api/v2/csv-exports/{request_id}`; otherwise the CSV body is streamed inline.",
        "operationId": "BlockScoutWeb.API.V2.AdvancedFilterController.list_csv",
        "parameters": [
          {
            "description": "Comma-separated list of transaction types to include. Allowed values: `COIN_TRANSFER`, `CONTRACT_INTERACTION`, `CONTRACT_CREATION`, `ERC-20`, `ERC-404`, `ERC-721`, `ERC-1155`, `ERC-7984` (plus `ZRC-2` on Zilliqa). Values are matched case-insensitively; unknown entries are silently dropped.",
            "example": "COIN_TRANSFER,ERC-20",
            "in": "query",
            "name": "transaction_types",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of 4-byte contract method selectors (lowercase, `0x`-prefixed). At most 20 unique entries are honored; invalid entries are dropped.",
            "example": "0xa9059cbb,0x095ea7b3",
            "in": "query",
            "name": "methods",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Inclusive lower bound on `timestamp` (ISO 8601).",
            "example": "2024-01-01T00:00:00Z",
            "in": "query",
            "name": "age_from",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Inclusive upper bound on `timestamp` (ISO 8601).",
            "example": "2024-12-31T23:59:59Z",
            "in": "query",
            "name": "age_to",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of sender address hashes to include.",
            "example": "0x5a52e96bacdabb82fd05763e25335261b270efcb,0x00000000219ab540356cbb839cbe05303d7705fa",
            "in": "query",
            "name": "from_address_hashes_to_include",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of sender address hashes to exclude.",
            "example": "0x5a52e96bacdabb82fd05763e25335261b270efcb,0x00000000219ab540356cbb839cbe05303d7705fa",
            "in": "query",
            "name": "from_address_hashes_to_exclude",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of recipient address hashes to include.",
            "example": "0x5a52e96bacdabb82fd05763e25335261b270efcb,0x00000000219ab540356cbb839cbe05303d7705fa",
            "in": "query",
            "name": "to_address_hashes_to_include",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of recipient address hashes to exclude.",
            "example": "0x5a52e96bacdabb82fd05763e25335261b270efcb,0x00000000219ab540356cbb839cbe05303d7705fa",
            "in": "query",
            "name": "to_address_hashes_to_exclude",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "How to combine the `from_address_hashes_*` and `to_address_hashes_*` filters. Accepts `or` or `and` (case-insensitive). `or` (default) matches an item if either side matches; `and` requires both sides to match. Any other value is silently coerced to `nil` (no relation constraint).",
            "example": "and",
            "in": "query",
            "name": "address_relation",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Inclusive lower bound on the item's transferred amount (decimal string in the token's base units).",
            "example": "0",
            "in": "query",
            "name": "amount_from",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Inclusive upper bound on the item's transferred amount (decimal string in the token's base units).",
            "example": "1000000",
            "in": "query",
            "name": "amount_to",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of token contract address hashes to include. Use the literal `native` to also include native coin transfers. Each list (include and exclude) is capped to 20 entries separately.",
            "example": "native,0xdac17f958d2ee523a2206206994597c13d831ec7",
            "in": "query",
            "name": "token_contract_address_hashes_to_include",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of token contract address hashes to exclude. Use the literal `native` to also exclude native coin transfers. Each list (include and exclude) is capped to 20 entries separately.",
            "example": "0x0000000000000000000000000000000000000000",
            "in": "query",
            "name": "token_contract_address_hashes_to_exclude",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of human-readable method names corresponding to the `methods` selectors.",
            "example": "transfer,approve",
            "in": "query",
            "name": "methods_names",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of token symbols to include.",
            "example": "USDT,USDC",
            "in": "query",
            "name": "token_contract_symbols_to_include",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Comma-separated list of token symbols to exclude.",
            "example": "USDT,USDC",
            "in": "query",
            "name": "token_contract_symbols_to_exclude",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Keyset cursor: block number of the last item from the previous page.",
            "example": "23532302",
            "in": "query",
            "name": "block_number",
            "schema": {
              "pattern": "^([1-9][0-9]*|0)$",
              "type": "string"
            }
          },
          {
            "description": "Keyset cursor: transaction index within the block of the last item from the previous page.",
            "example": "1",
            "in": "query",
            "name": "transaction_index",
            "schema": {
              "pattern": "^([1-9][0-9]*|0)$",
              "type": "string"
            }
          },
          {
            "description": "Keyset cursor: internal-transaction index of the last item from the previous page. Use an empty string or the literal `null` when the previous item was not an internal transaction.",
            "in": "query",
            "name": "internal_transaction_index",
            "schema": {
              "$ref": "#/components/schemas/IntegerStringOrEmptyOrNullLiteral"
            }
          },
          {
            "description": "Keyset cursor: token-transfer index of the last item from the previous page. Use an empty string or the literal `null` when the previous item was not a token transfer.",
            "in": "query",
            "name": "token_transfer_index",
            "schema": {
              "$ref": "#/components/schemas/IntegerStringOrEmptyOrNullLiteral"
            }
          },
          {
            "description": "Keyset cursor: index within an ERC-1155 batch token transfer. Use an empty string or the literal `null` when the previous item was not part of a batch.",
            "in": "query",
            "name": "token_transfer_batch_index",
            "schema": {
              "$ref": "#/components/schemas/IntegerStringOrEmptyOrNullLiteral"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/csv": {}
            },
            "description": "CSV file (sync export).",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "202": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdvancedFilterCsvExportAccepted"
                }
              }
            },
            "description": "Async export queued; poll `/api/v2/csv-exports/{request_id}` with the returned `request_id`."
          },
          "409": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdvancedFilterCsvExportError"
                }
              }
            },
            "description": "Too many pending export requests for this client."
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AdvancedFilterCsvExportError"
                }
              }
            },
            "description": "Failed to create CSV export request."
          }
        },
        "summary": "Export advanced-filter results as CSV",
        "tags": [
          "advanced-filters"
        ]
      }
    },
    "/{chain_id}/api/v2/advanced-filters/methods": {
      "get": {
        "description": "Returns a list of known contract methods. When the `q` parameter is provided, searches for a single method by its 4-byte selector or name. Without `q`, returns the default list of popular methods.",
        "operationId": "BlockScoutWeb.API.V2.AdvancedFilterController.list_methods",
        "parameters": [
          {
            "description": "Search string: either a 4-byte method selector (e.g. `0xa9059cbb`) or a method name (e.g. `transfer`).",
            "example": "transfer",
            "in": "query",
            "name": "q",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/AdvancedFilterMethod"
                  },
                  "type": "array"
                }
              }
            },
            "description": "List of contract methods.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List known contract methods",
        "tags": [
          "advanced-filters"
        ]
      }
    },
    "/{chain_id}/api/v2/arbitrum/batches": {
      "get": {
        "description": "Retrieves a paginated list of Arbitrum batches committed to the Parent chain.",
        "operationId": "BlockScoutWeb.API.V2.ArbitrumController.batches",
        "parameters": [
          {
            "description": "Optional list of specific batch numbers to retrieve.",
            "in": "query",
            "name": "batch_numbers",
            "schema": {
              "items": {
                "minimum": 0,
                "type": "integer"
              },
              "type": "array"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Number for paging",
            "in": "query",
            "name": "number",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/BatchForList"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "number": 123
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Paginated list of Arbitrum batches.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List batches.",
        "tags": [
          "arbitrum"
        ]
      }
    },
    "/{chain_id}/api/v2/arbitrum/batches/count": {
      "get": {
        "description": "Retrieves the total count of Arbitrum batches committed to the Parent chain.",
        "operationId": "BlockScoutWeb.API.V2.ArbitrumController.batches_count",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "minimum": 0,
                  "type": "integer"
                }
              }
            },
            "description": "Total count of batches.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get batches count.",
        "tags": [
          "arbitrum"
        ]
      }
    },
    "/{chain_id}/api/v2/arbitrum/batches/da/anytrust/{data_hash}": {
      "get": {
        "description": "Retrieves an Arbitrum batch associated with the given AnyTrust data hash. By default, returns the most recently associated batch. When `type=all`, returns a paginated list of all batches referencing this data hash.",
        "operationId": "BlockScoutWeb.API.V2.ArbitrumController.batch_by_anytrust_da_info",
        "parameters": [
          {
            "description": "AnyTrust data hash.",
            "in": "path",
            "name": "data_hash",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "When set to `all`, returns a paginated list of all batches for this data hash.",
            "in": "query",
            "name": "type",
            "schema": {
              "enum": [
                "all"
              ],
              "type": "string"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Number for paging",
            "in": "query",
            "name": "number",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/Arbitrum.BatchByAnytrust"
                    },
                    {
                      "additionalProperties": false,
                      "properties": {
                        "items": {
                          "items": {
                            "$ref": "#/components/schemas/BatchForList"
                          },
                          "type": "array"
                        },
                        "next_page_params": {
                          "additionalProperties": true,
                          "example": {
                            "number": 123
                          },
                          "nullable": true,
                          "type": "object"
                        }
                      },
                      "required": [
                        "items",
                        "next_page_params"
                      ],
                      "type": "object"
                    }
                  ]
                }
              }
            },
            "description": "Batch info, or paginated batch list when `type=all`.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get batch by AnyTrust data hash.",
        "tags": [
          "arbitrum"
        ]
      }
    },
    "/{chain_id}/api/v2/arbitrum/batches/da/celestia/{height}/{transaction_commitment}": {
      "get": {
        "description": "Retrieves an Arbitrum batch whose data availability blob is identified by the given Celestia block height and transaction commitment hash.",
        "operationId": "BlockScoutWeb.API.V2.ArbitrumController.batch_by_celestia_da_info",
        "parameters": [
          {
            "description": "Celestia block height.",
            "in": "path",
            "name": "height",
            "required": true,
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Celestia transaction commitment hash.",
            "in": "path",
            "name": "transaction_commitment",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Arbitrum.BatchByCelestia"
                }
              }
            },
            "description": "Batch info.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get batch by Celestia blob reference.",
        "tags": [
          "arbitrum"
        ]
      }
    },
    "/{chain_id}/api/v2/arbitrum/batches/da/eigenda/{data_hash}": {
      "get": {
        "description": "Retrieves an Arbitrum batch associated with the given EigenDA data hash. By default, returns the most recently associated batch. When `type=all`, returns a paginated list of all batches referencing this data hash.",
        "operationId": "BlockScoutWeb.API.V2.ArbitrumController.batch_by_eigenda_da_info",
        "parameters": [
          {
            "description": "EigenDA data hash (Keccak-256 of the blob header).",
            "in": "path",
            "name": "data_hash",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "When set to `all`, returns a paginated list of all batches for this data hash.",
            "in": "query",
            "name": "type",
            "schema": {
              "enum": [
                "all"
              ],
              "type": "string"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Number for paging",
            "in": "query",
            "name": "number",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/Arbitrum.BatchByEigenda"
                    },
                    {
                      "additionalProperties": false,
                      "properties": {
                        "items": {
                          "items": {
                            "$ref": "#/components/schemas/BatchForList"
                          },
                          "type": "array"
                        },
                        "next_page_params": {
                          "additionalProperties": true,
                          "example": {
                            "number": 123
                          },
                          "nullable": true,
                          "type": "object"
                        }
                      },
                      "required": [
                        "items",
                        "next_page_params"
                      ],
                      "type": "object"
                    }
                  ]
                }
              }
            },
            "description": "Batch info, or paginated batch list when `type=all`.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get batch by EigenDA data hash.",
        "tags": [
          "arbitrum"
        ]
      }
    },
    "/{chain_id}/api/v2/arbitrum/batches/{batch_number}": {
      "get": {
        "description": "Retrieves detailed information about an Arbitrum batch by its number.",
        "operationId": "BlockScoutWeb.API.V2.ArbitrumController.batch",
        "parameters": [
          {
            "description": "Batch number.",
            "in": "path",
            "name": "batch_number",
            "required": true,
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Arbitrum.Batch"
                }
              }
            },
            "description": "Batch info.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get batch by number.",
        "tags": [
          "arbitrum"
        ]
      }
    },
    "/{chain_id}/api/v2/arbitrum/messages/claim/{message_id}": {
      "get": {
        "description": "Returns the ABI-encoded calldata and outbox contract address required to execute a Rollup withdrawal on the Parent chain.",
        "operationId": "BlockScoutWeb.API.V2.ArbitrumController.claim_message",
        "parameters": [
          {
            "description": "Withdrawal message ID.",
            "in": "path",
            "name": "message_id",
            "required": true,
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Arbitrum.ClaimMessage"
                }
              }
            },
            "description": "Claim data for the withdrawal.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            },
            "description": "Withdrawal cannot be claimed. Returned when the withdrawal is unconfirmed, just initiated, or already executed."
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get claim data for a withdrawal.",
        "tags": [
          "arbitrum"
        ]
      }
    },
    "/{chain_id}/api/v2/arbitrum/messages/withdrawals/{transaction_hash}": {
      "get": {
        "description": "Returns the list of Rollup withdrawal messages (L2ToL1Tx events) emitted by the given transaction.",
        "operationId": "BlockScoutWeb.API.V2.ArbitrumController.withdrawals",
        "parameters": [
          {
            "description": "Transaction hash.",
            "in": "path",
            "name": "transaction_hash",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Arbitrum.Withdrawal"
                      },
                      "type": "array"
                    }
                  },
                  "required": [
                    "items"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Withdrawal messages for the transaction.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get withdrawal messages for a transaction.",
        "tags": [
          "arbitrum"
        ]
      }
    },
    "/{chain_id}/api/v2/arbitrum/messages/{direction}": {
      "get": {
        "description": "Retrieves a paginated list of Arbitrum cross-chain messages filtered by the specified direction.",
        "operationId": "BlockScoutWeb.API.V2.ArbitrumController.messages",
        "parameters": [
          {
            "description": "Message direction: `from-rollup` for Rollup to Parent chain, `to-rollup` for Parent chain to Rollup.",
            "in": "path",
            "name": "direction",
            "required": true,
            "schema": {
              "enum": [
                "from-rollup",
                "to-rollup"
              ],
              "type": "string"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "ID for paging",
            "in": "query",
            "name": "id",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Arbitrum.Message"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "id": 123
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Paginated list of cross-chain messages.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List cross-chain messages.",
        "tags": [
          "arbitrum"
        ]
      }
    },
    "/{chain_id}/api/v2/arbitrum/messages/{direction}/count": {
      "get": {
        "description": "Retrieves the total count of Arbitrum cross-chain messages for the specified direction.",
        "operationId": "BlockScoutWeb.API.V2.ArbitrumController.messages_count",
        "parameters": [
          {
            "description": "Message direction: `from-rollup` for Rollup to Parent chain, `to-rollup` for Parent chain to Rollup.",
            "in": "path",
            "name": "direction",
            "required": true,
            "schema": {
              "enum": [
                "from-rollup",
                "to-rollup"
              ],
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "minimum": 0,
                  "type": "integer"
                }
              }
            },
            "description": "Total count of cross-chain messages for the specified direction.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get cross-chain messages count.",
        "tags": [
          "arbitrum"
        ]
      }
    },
    "/{chain_id}/api/v2/beacon/deposits": {
      "get": {
        "description": "Retrieves a paginated list of all beacon deposits.",
        "operationId": "BlockScoutWeb.API.V2.Ethereum.DepositController.list",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Deposit index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "maximum": 9223372036854776000,
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Deposit"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "index": 123
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of Beacon Deposits, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          }
        },
        "summary": "Lists all beacon deposits",
        "tags": [
          "beacon_deposits"
        ]
      }
    },
    "/{chain_id}/api/v2/beacon/deposits/count": {
      "get": {
        "description": "Retrieves the total count of beacon deposits.",
        "operationId": "BlockScoutWeb.API.V2.Ethereum.DepositController.count",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "deposits_count": {
                      "type": "integer"
                    }
                  },
                  "required": [
                    "deposits_count"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Total count of beacon deposits.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          }
        },
        "summary": "Gets total count of beacon deposits",
        "tags": [
          "beacon_deposits"
        ]
      }
    },
    "/{chain_id}/api/v2/blocks": {
      "get": {
        "description": "Retrieves a paginated list of blocks ordered by descending block number.\n\nWhen the `type` query parameter is omitted, only main-chain consensus blocks\n(equivalent to `type=block`) are returned. Use `type=uncle` to list ommer\nblocks (valid but not in the main chain) and `type=reorg` to list blocks\nthat lost consensus during a chain reorganization.\n\nPagination is cursor-based: the response contains `next_page_params` with\n`block_number` — pass these back as query parameters on\nthe next request to fetch the following page.\n",
        "operationId": "BlockScoutWeb.API.V2.BlockController.blocks",
        "parameters": [
          {
            "description": "Filter by block type:\n* block - Standard blocks in the main chain\n* uncle - Uncle/ommer blocks (valid but not in main chain)\n* reorg - Blocks from chain reorganizations\nIf omitted, default value \"block\" is used.\n",
            "in": "query",
            "name": "type",
            "schema": {
              "default": "block",
              "enum": [
                "uncle",
                "reorg",
                "block"
              ],
              "type": "string"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Block"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 22566361
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of blocks with pagination information.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List blocks with optional filtering by block type",
        "tags": [
          "blocks"
        ]
      }
    },
    "/{chain_id}/api/v2/blocks/arbitrum-batch/{batch_number_param}": {
      "get": {
        "description": "Retrieves L2 blocks that are bound to a specific Arbitrum batch number.",
        "operationId": "BlockScoutWeb.API.V2.BlockController.arbitrum_batch",
        "parameters": [
          {
            "description": "Batch number",
            "in": "path",
            "name": "batch_number_param",
            "required": true,
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Block"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 22566361
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "L2 blocks in the specified Arbitrum batch.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List L2 blocks in an Arbitrum batch",
        "tags": [
          "blocks"
        ]
      }
    },
    "/{chain_id}/api/v2/blocks/optimism-batch/{batch_number_param}": {
      "get": {
        "description": "Retrieves L2 blocks that are bound to a specific Optimism batch number.",
        "operationId": "BlockScoutWeb.API.V2.BlockController.optimism_batch",
        "parameters": [
          {
            "description": "Batch number",
            "in": "path",
            "name": "batch_number_param",
            "required": true,
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Block"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 22566361
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "L2 blocks in the specified Optimism batch.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List L2 blocks in an Optimism batch",
        "tags": [
          "blocks"
        ]
      }
    },
    "/{chain_id}/api/v2/blocks/scroll-batch/{batch_number_param}": {
      "get": {
        "description": "Retrieves L2 blocks that are bound to a specific Scroll batch number.",
        "operationId": "BlockScoutWeb.API.V2.BlockController.scroll_batch",
        "parameters": [
          {
            "description": "Batch number",
            "in": "path",
            "name": "batch_number_param",
            "required": true,
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Block"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 22566361
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "L2 blocks in the specified Scroll batch.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List L2 blocks in a Scroll batch",
        "tags": [
          "blocks"
        ]
      }
    },
    "/{chain_id}/api/v2/blocks/{block_hash_or_number_param}": {
      "get": {
        "description": "Retrieves detailed information for a specific block, including transactions, internal transactions, and metadata.",
        "operationId": "BlockScoutWeb.API.V2.BlockController.block",
        "parameters": [
          {
            "description": "Block hash or number in the path",
            "in": "path",
            "name": "block_hash_or_number_param",
            "required": true,
            "schema": {
              "anyOf": [
                {
                  "minimum": 0,
                  "type": "integer"
                },
                {
                  "$ref": "#/components/schemas/FullHash"
                }
              ]
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BlockResponse"
                }
              }
            },
            "description": "Detailed information about the specified block.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Retrieves detailed information for a specific block identified by its number or hash.",
        "tags": [
          "blocks"
        ]
      }
    },
    "/{chain_id}/api/v2/blocks/{block_hash_or_number_param}/beacon/deposits": {
      "get": {
        "description": "Retrieves beacon deposits included in a specific block with pagination support.",
        "operationId": "BlockScoutWeb.API.V2.BlockController.beacon_deposits",
        "parameters": [
          {
            "description": "Block hash or number in the path",
            "in": "path",
            "name": "block_hash_or_number_param",
            "required": true,
            "schema": {
              "anyOf": [
                {
                  "minimum": 0,
                  "type": "integer"
                },
                {
                  "$ref": "#/components/schemas/FullHash"
                }
              ]
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Deposit"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "index": 123
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Beacon deposits in the specified block.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List beacon deposits in a specific block",
        "tags": [
          "blocks"
        ]
      }
    },
    "/{chain_id}/api/v2/blocks/{block_hash_or_number_param}/internal-transactions": {
      "get": {
        "description": "Retrieves internal transactions included in a specific block with optional filtering by type and call type.",
        "operationId": "BlockScoutWeb.API.V2.BlockController.internal_transactions",
        "parameters": [
          {
            "description": "Block hash or number in the path",
            "in": "path",
            "name": "block_hash_or_number_param",
            "required": true,
            "schema": {
              "anyOf": [
                {
                  "minimum": 0,
                  "type": "integer"
                },
                {
                  "$ref": "#/components/schemas/FullHash"
                }
              ]
            }
          },
          {
            "description": "Filter internal transactions by type:\n* all - Show all internal transactions (default)\n* call - Only show call internal transactions\n* create - Only show create internal transactions\n* create2 - Only show create2 internal transactions\n* reward - Only show reward internal transactions\n* selfdestruct - Only show selfdestruct internal transactions\n* stop - Only show stop internal transactions\n* invalid - Only show invalid internal transactions (Arbitrum only)\n",
            "in": "query",
            "name": "internal_type",
            "schema": {
              "enum": [
                "call",
                "create",
                "create2",
                "reward",
                "selfdestruct",
                "stop",
                "invalid"
              ],
              "type": "string"
            }
          },
          {
            "description": "Filter internal transactions by call type:\n* all - Show all internal transactions (default)\n* call - Only show call internal transactions\n* callcode - Only show callcode internal transactions\n* delegatecall - Only show delegatecall internal transactions\n* staticcall - Only show staticcall internal transactions\n* invalid - Only show invalid internal transactions (Arbitrum only)\n",
            "in": "query",
            "name": "call_type",
            "schema": {
              "enum": [
                "call",
                "callcode",
                "delegatecall",
                "staticcall",
                "invalid"
              ],
              "type": "string"
            }
          },
          {
            "description": "If `false`, zero-value call-type internal transactions are excluded from results.",
            "in": "query",
            "name": "include_zero_value",
            "schema": {
              "default": true,
              "type": "boolean"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Transaction index for paging",
            "in": "query",
            "name": "transaction_index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/InternalTransaction"
                      },
                      "type": "array"
                    },
                    "meta": {
                      "properties": {
                        "message": {
                          "nullable": true,
                          "type": "string"
                        },
                        "status": {
                          "enum": [
                            1,
                            2
                          ],
                          "type": "integer"
                        }
                      },
                      "required": [
                        "status",
                        "message"
                      ],
                      "type": "object"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "index": 8,
                        "transaction_index": 3
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params",
                    "meta"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Internal transactions in the specified block.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List internal transactions in a specific block",
        "tags": [
          "blocks"
        ]
      }
    },
    "/{chain_id}/api/v2/blocks/{block_hash_or_number_param}/transactions": {
      "get": {
        "description": "Retrieves transactions included in a specific block, ordered by transaction index.",
        "operationId": "BlockScoutWeb.API.V2.BlockController.transactions",
        "parameters": [
          {
            "description": "Block hash or number in the path",
            "in": "path",
            "name": "block_hash_or_number_param",
            "required": true,
            "schema": {
              "anyOf": [
                {
                  "minimum": 0,
                  "type": "integer"
                },
                {
                  "$ref": "#/components/schemas/FullHash"
                }
              ]
            }
          },
          {
            "description": "Filter by transaction type. Comma-separated list of:\n* token_transfer - Token transfer transactions\n* contract_creation - Contract deployment transactions\n* contract_call - Contract method call transactions\n* coin_transfer - Native coin transfer transactions\n* token_creation - Token creation transactions\n* blob_transaction - Only show blob transactions (Ethereum only)\n",
            "in": "query",
            "name": "type",
            "schema": {
              "enum": [
                "coin_transfer",
                "contract_call",
                "contract_creation",
                "token_transfer",
                "token_creation"
              ],
              "type": "string"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Transaction"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 12345678,
                        "index": 103
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Transactions in the specified block, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List transactions and tx details included in a specific block",
        "tags": [
          "blocks"
        ]
      }
    },
    "/{chain_id}/api/v2/blocks/{block_hash_or_number_param}/withdrawals": {
      "get": {
        "description": "Retrieves withdrawals processed in a specific block (typically for proof-of-stake networks).",
        "operationId": "BlockScoutWeb.API.V2.BlockController.withdrawals",
        "parameters": [
          {
            "description": "Block hash or number in the path",
            "in": "path",
            "name": "block_hash_or_number_param",
            "required": true,
            "schema": {
              "anyOf": [
                {
                  "minimum": 0,
                  "type": "integer"
                },
                {
                  "$ref": "#/components/schemas/FullHash"
                }
              ]
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Withdrawal"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "index": 88192653
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Withdrawals in the specified block, with pagination. Note that block_number and timestamp fields are not included in this endpoint.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List validator withdrawals including amounts, index and receiver details processed in a specific block",
        "tags": [
          "blocks"
        ]
      }
    },
    "/{chain_id}/api/v2/blocks/{block_number_param}/countdown": {
      "get": {
        "description": "Calculates the estimated time remaining until a specified block number is reached based on current block and average block time.",
        "operationId": "BlockScoutWeb.API.V2.BlockController.block_countdown",
        "parameters": [
          {
            "description": "Block number in the path",
            "in": "path",
            "name": "block_number_param",
            "required": true,
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BlockCountdown"
                }
              }
            },
            "description": "Block countdown information.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get countdown information for a target block number",
        "tags": [
          "blocks"
        ]
      }
    },
    "/{chain_id}/api/v2/celo/epochs": {
      "get": {
        "description": "Retrieves a paginated list of Celo epochs.",
        "operationId": "BlockScoutWeb.API.V2.CeloController.epochs",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Number for paging",
            "in": "query",
            "name": "number",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Epoch"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "number": 100
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of Celo epochs.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List Celo epochs.",
        "tags": [
          "celo"
        ]
      }
    },
    "/{chain_id}/api/v2/celo/epochs/{number}": {
      "get": {
        "description": "Retrieves detailed information about a Celo epoch.",
        "operationId": "BlockScoutWeb.API.V2.CeloController.epoch",
        "parameters": [
          {
            "description": "Epoch number in the path.",
            "in": "path",
            "name": "number",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/IntegerString"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CeloEpochDetailed"
                }
              }
            },
            "description": "Celo epoch details.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get Celo epoch details.",
        "tags": [
          "celo"
        ]
      }
    },
    "/{chain_id}/api/v2/celo/epochs/{number}/election-rewards/{type}": {
      "get": {
        "description": "Retrieves a paginated list of election rewards for a Celo epoch and reward type.",
        "operationId": "BlockScoutWeb.API.V2.CeloController.election_rewards",
        "parameters": [
          {
            "description": "Epoch number in the path.",
            "in": "path",
            "name": "number",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/IntegerString"
            }
          },
          {
            "description": "Reward type in the path.",
            "in": "path",
            "name": "type",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/CeloElectionRewardType"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Amount for paging",
            "in": "query",
            "name": "amount",
            "schema": {
              "$ref": "#/components/schemas/IntegerStringNullable"
            }
          },
          {
            "description": "Account address hash for paging",
            "in": "query",
            "name": "account_address_hash",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Associated account address hash for paging",
            "in": "query",
            "name": "associated_account_address_hash",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/ElectionReward"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "account_address_hash": "0x1234567890123456789012345678901234567890",
                        "amount": "1000000000000000000",
                        "associated_account_address_hash": "0x0987654321098765432109876543210987654321"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Election rewards for the specified Celo epoch.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List Celo epoch election rewards.",
        "tags": [
          "celo"
        ]
      }
    },
    "/{chain_id}/api/v2/csv-exports/{uuid_param}": {
      "get": {
        "description": "Gets a CSV export by UUID",
        "operationId": "BlockScoutWeb.API.V2.CsvExportController.get_csv_export",
        "parameters": [
          {
            "description": "UUID for CSV export",
            "in": "path",
            "name": "uuid_param",
            "required": true,
            "schema": {
              "format": "uuid",
              "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Response"
                }
              }
            },
            "description": "Status of CSV export.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          }
        },
        "summary": "Get CSV export",
        "tags": [
          "csv-export"
        ]
      }
    },
    "/{chain_id}/api/v2/internal-transactions": {
      "get": {
        "description": "Retrieves a paginated list of internal transactions. Internal transactions are generated during contract execution and not directly recorded on the blockchain.",
        "operationId": "BlockScoutWeb.API.V2.InternalTransactionController.internal_transactions",
        "parameters": [
          {
            "description": "Transaction hash in the query",
            "in": "query",
            "name": "transaction_hash",
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "Limit result items in the response",
            "in": "query",
            "name": "limit",
            "schema": {
              "nullable": true,
              "type": "integer"
            }
          },
          {
            "description": "If `false`, zero-value call-type internal transactions are excluded from results.",
            "in": "query",
            "name": "include_zero_value",
            "schema": {
              "default": true,
              "type": "boolean"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Transaction index for paging",
            "in": "query",
            "name": "transaction_index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/InternalTransaction"
                      },
                      "type": "array"
                    },
                    "meta": {
                      "properties": {
                        "message": {
                          "nullable": true,
                          "type": "string"
                        },
                        "status": {
                          "enum": [
                            1,
                            2
                          ],
                          "type": "integer"
                        }
                      },
                      "required": [
                        "status",
                        "message"
                      ],
                      "type": "object"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 22133247,
                        "index": 50,
                        "transaction_index": 68
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params",
                    "meta"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of internal transactions with pagination information.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List internal transactions generated during smart contract execution",
        "tags": [
          "internal-transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/main-page/arbitrum/batches/committed": {
      "get": {
        "description": "Retrieves a list of Arbitrum batches that have been committed to the Parent chain, displayed on the main page.",
        "operationId": "BlockScoutWeb.API.V2.ArbitrumController.batches_committed",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/BatchForList"
                      },
                      "type": "array"
                    }
                  },
                  "required": [
                    "items"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of committed Arbitrum batches.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List committed batches on the main page.",
        "tags": [
          "arbitrum",
          "main-page"
        ]
      }
    },
    "/{chain_id}/api/v2/main-page/arbitrum/batches/latest-number": {
      "get": {
        "description": "Retrieves the number of the most recent Arbitrum batch submitted to the Parent chain. Returns 0 if no batches exist.",
        "operationId": "BlockScoutWeb.API.V2.ArbitrumController.batch_latest_number",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "minimum": 0,
                  "type": "integer"
                }
              }
            },
            "description": "Latest Arbitrum batch number.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get the latest batch number.",
        "tags": [
          "arbitrum",
          "main-page"
        ]
      }
    },
    "/{chain_id}/api/v2/main-page/arbitrum/messages/to-rollup": {
      "get": {
        "description": "Retrieves the most recent relayed messages from Parent chain to Rollup, displayed on the main page.",
        "operationId": "BlockScoutWeb.API.V2.ArbitrumController.recent_messages_to_l2",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/MinimalMessage"
                      },
                      "type": "array"
                    }
                  },
                  "required": [
                    "items"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of recent Parent chain to Rollup messages.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List recent Parent chain to Rollup messages on the main page.",
        "tags": [
          "arbitrum",
          "main-page"
        ]
      }
    },
    "/{chain_id}/api/v2/main-page/blocks": {
      "get": {
        "description": "Retrieves a limited set of recent blocks for display on the main page or dashboard.",
        "operationId": "BlockScoutWeb.API.V2.MainPageController.blocks",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/Block"
                  },
                  "type": "array"
                }
              }
            },
            "description": "List of recent blocks on the home page.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          }
        },
        "summary": "Retrieve recent blocks as displayed on Blockscout homepage",
        "tags": [
          "main-page"
        ]
      }
    },
    "/{chain_id}/api/v2/main-page/indexing-status": {
      "get": {
        "description": "Retrieves the current status of blockchain data indexing by the BlockScout instance.",
        "operationId": "BlockScoutWeb.API.V2.MainPageController.indexing_status",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "finished_indexing": {
                      "type": "boolean"
                    },
                    "finished_indexing_blocks": {
                      "type": "boolean"
                    },
                    "indexed_blocks_ratio": {
                      "format": "float",
                      "type": "number"
                    },
                    "indexed_internal_transactions_ratio": {
                      "format": "float",
                      "nullable": true,
                      "type": "number"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Current blockchain indexing status.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          }
        },
        "summary": "Check if indexing is finished with indexing ratio",
        "tags": [
          "main-page"
        ]
      }
    },
    "/{chain_id}/api/v2/main-page/optimism-deposits": {
      "get": {
        "description": "Retrieves a list of deposits for the main page.",
        "operationId": "BlockScoutWeb.API.V2.OptimismController.main_page_deposits",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/MainPage"
                  },
                  "type": "array"
                }
              }
            },
            "description": "List of deposits on the main page.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List deposits on the main page.",
        "tags": [
          "optimism"
        ]
      }
    },
    "/{chain_id}/api/v2/main-page/transactions": {
      "get": {
        "description": "Retrieves a limited set of recent transactions displayed on the home page.",
        "operationId": "BlockScoutWeb.API.V2.MainPageController.transactions",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/TransactionResponse"
                  },
                  "type": "array"
                }
              }
            },
            "description": "List of recent transactions on the home page.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Retrieve recent transactions as displayed on Blockscout homepage",
        "tags": [
          "main-page"
        ]
      }
    },
    "/{chain_id}/api/v2/main-page/transactions/watchlist": {
      "get": {
        "description": "Retrieves a list of last 6 transactions from the current user's watchlist.",
        "operationId": "BlockScoutWeb.API.V2.MainPageController.watchlist_transactions",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "$ref": "#/components/schemas/TransactionResponse"
                  },
                  "type": "array"
                }
              }
            },
            "description": "List of watchlist transactions",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Last 6 transactions from the current user's watchlist",
        "tags": [
          "main-page"
        ]
      }
    },
    "/{chain_id}/api/v2/main-page/zksync/batches/confirmed": {
      "get": {
        "description": "Retrieves up to ten most-recently-committed ZkSync rollup batches, displayed on the main page.",
        "operationId": "BlockScoutWeb.API.V2.ZkSyncController.batches_confirmed",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/ZkSync.ConfirmedBatchListItem"
                      },
                      "type": "array"
                    }
                  },
                  "required": [
                    "items"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of confirmed ZkSync batches.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List confirmed batches on the main page.",
        "tags": [
          "zksync",
          "main-page"
        ]
      }
    },
    "/{chain_id}/api/v2/main-page/zksync/batches/latest-number": {
      "get": {
        "description": "Retrieves the number of the most recent ZkSync rollup batch. Returns 0 if no batches exist.",
        "operationId": "BlockScoutWeb.API.V2.ZkSyncController.batch_latest_number",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "minimum": 0,
                  "type": "integer"
                }
              }
            },
            "description": "Latest ZkSync batch number.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get the latest batch number.",
        "tags": [
          "zksync",
          "main-page"
        ]
      }
    },
    "/{chain_id}/api/v2/optimism/batches": {
      "get": {
        "description": "Retrieves a paginated list of batches.",
        "operationId": "BlockScoutWeb.API.V2.OptimismController.batches",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "ID for paging",
            "in": "query",
            "name": "id",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Optimism.Batch"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "id": 394591
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of batches.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List batches.",
        "tags": [
          "optimism"
        ]
      }
    },
    "/{chain_id}/api/v2/optimism/batches/count": {
      "get": {
        "description": "Retrieves a size of the batch list.",
        "operationId": "BlockScoutWeb.API.V2.OptimismController.batches_count",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "description": "Number of items in the batch list.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Number of batches in the list.",
        "tags": [
          "optimism"
        ]
      }
    },
    "/{chain_id}/api/v2/optimism/batches/da/celestia/{height}/{commitment}": {
      "get": {
        "description": "Retrieves batch detailed info by the given celestia blob metadata (height and commitment).",
        "operationId": "BlockScoutWeb.API.V2.OptimismController.batch_by_celestia_blob",
        "parameters": [
          {
            "description": "Celestia blob height in the path.",
            "in": "path",
            "name": "height",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/IntegerString"
            }
          },
          {
            "description": "Celestia blob commitment in the path.",
            "in": "path",
            "name": "commitment",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/HexData"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Optimism.Batch.Detailed"
                }
              }
            },
            "description": "Batch detailed info.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Batch by celestia blob.",
        "tags": [
          "optimism"
        ]
      }
    },
    "/{chain_id}/api/v2/optimism/batches/{number}": {
      "get": {
        "description": "Retrieves batch detailed info by the given number.",
        "operationId": "BlockScoutWeb.API.V2.OptimismController.batch_by_number",
        "parameters": [
          {
            "description": "Batch number in the path.",
            "in": "path",
            "name": "number",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/IntegerString"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Optimism.Batch.Detailed"
                }
              }
            },
            "description": "Batch detailed info.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Batch by its number.",
        "tags": [
          "optimism"
        ]
      }
    },
    "/{chain_id}/api/v2/optimism/deposits": {
      "get": {
        "description": "Retrieves a paginated list of deposits.",
        "operationId": "BlockScoutWeb.API.V2.OptimismController.deposits",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "L1 block number for paging",
            "in": "query",
            "name": "l1_block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Transaction hash for paging",
            "in": "query",
            "name": "transaction_hash",
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Deposit"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "l1_block_number": 23937283,
                        "transaction_hash": "0x5dc155c382d95353c5876e735d675d284e3b29b1379e5859dc35cfd4a1dd5188"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of deposits.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List deposits.",
        "tags": [
          "optimism"
        ]
      }
    },
    "/{chain_id}/api/v2/optimism/deposits/count": {
      "get": {
        "description": "Retrieves a size of the deposits list.",
        "operationId": "BlockScoutWeb.API.V2.OptimismController.deposits_count",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "description": "Number of items in the deposits list.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Number of deposits in the list.",
        "tags": [
          "optimism"
        ]
      }
    },
    "/{chain_id}/api/v2/optimism/games": {
      "get": {
        "description": "Retrieves a paginated list of games.",
        "operationId": "BlockScoutWeb.API.V2.OptimismController.games",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Game"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "index": 12967
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of games.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List games.",
        "tags": [
          "optimism"
        ]
      }
    },
    "/{chain_id}/api/v2/optimism/games/count": {
      "get": {
        "description": "Retrieves a size of the games list.",
        "operationId": "BlockScoutWeb.API.V2.OptimismController.games_count",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "description": "Number of items in the games list.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Number of games in the list.",
        "tags": [
          "optimism"
        ]
      }
    },
    "/{chain_id}/api/v2/optimism/output-roots": {
      "get": {
        "description": "Retrieves a paginated list of output roots.",
        "operationId": "BlockScoutWeb.API.V2.OptimismController.output_roots",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/OutputRoot"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "index": 8829
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of output roots.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List output roots.",
        "tags": [
          "optimism"
        ]
      }
    },
    "/{chain_id}/api/v2/optimism/output-roots/count": {
      "get": {
        "description": "Retrieves a size of the output roots list.",
        "operationId": "BlockScoutWeb.API.V2.OptimismController.output_roots_count",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "description": "Number of items in the output roots list.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Number of output roots in the list.",
        "tags": [
          "optimism"
        ]
      }
    },
    "/{chain_id}/api/v2/optimism/withdrawals": {
      "get": {
        "description": "Retrieves a paginated list of withdrawals.",
        "operationId": "BlockScoutWeb.API.V2.OptimismController.withdrawals",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Nonce for paging",
            "in": "query",
            "name": "nonce",
            "schema": {
              "$ref": "#/components/schemas/IntegerString"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Withdrawal"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "nonce": "1766847064778384329583297500742918515827483896875618958121606201292650102"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of withdrawals.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List withdrawals.",
        "tags": [
          "optimism"
        ]
      }
    },
    "/{chain_id}/api/v2/optimism/withdrawals/count": {
      "get": {
        "description": "Retrieves a size of the withdrawals list.",
        "operationId": "BlockScoutWeb.API.V2.OptimismController.withdrawals_count",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "description": "Number of items in the withdrawals list.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Number of withdrawals in the list.",
        "tags": [
          "optimism"
        ]
      }
    },
    "/{chain_id}/api/v2/proxy/account-abstraction/accounts": {
      "get": {
        "description": "Retrieves a list of account abstraction wallets.",
        "operationId": "BlockScoutWeb.API.V2.Proxy.AccountAbstractionController.accounts",
        "parameters": [
          {
            "description": "User operation factory address hash",
            "in": "query",
            "name": "factory",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Number of items returned per page",
            "in": "query",
            "name": "page_size",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Page token for paging",
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Account"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "page_size": 50,
                        "page_token": "0x29cB129476609bBa26372b23427Af3b87cB23aF6"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of account abstraction wallets with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            },
            "description": "Bad Request"
          },
          "501": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            },
            "description": "Not Implemented"
          }
        },
        "summary": "List of account abstraction wallets",
        "tags": [
          "account-abstraction"
        ]
      }
    },
    "/{chain_id}/api/v2/proxy/account-abstraction/accounts/{address_hash_param}": {
      "get": {
        "description": "Retrieves an account abstraction wallet by its address hash.",
        "operationId": "BlockScoutWeb.API.V2.Proxy.AccountAbstractionController.account",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Account"
                }
              }
            },
            "description": "Account",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "501": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            },
            "description": "Not Implemented"
          }
        },
        "summary": "Get an account abstraction wallet by address hash",
        "tags": [
          "account-abstraction"
        ]
      }
    },
    "/{chain_id}/api/v2/proxy/account-abstraction/bundlers": {
      "get": {
        "description": "Retrieves a list of top bundlers.",
        "operationId": "BlockScoutWeb.API.V2.Proxy.AccountAbstractionController.bundlers",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Number of items returned per page",
            "in": "query",
            "name": "page_size",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Page token for paging",
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Bundler"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "page_size": 50,
                        "page_token": "5,0x9B67A24A474e9EC7372c23B023f36ab28831e4C4"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of bundlers with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            },
            "description": "Bad Request"
          },
          "501": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            },
            "description": "Not Implemented"
          }
        },
        "summary": "List of top bundlers",
        "tags": [
          "account-abstraction"
        ]
      }
    },
    "/{chain_id}/api/v2/proxy/account-abstraction/bundlers/{address_hash_param}": {
      "get": {
        "description": "Retrieves a bundler by its address hash.",
        "operationId": "BlockScoutWeb.API.V2.Proxy.AccountAbstractionController.bundler",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Bundler"
                }
              }
            },
            "description": "Bundler",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "501": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            },
            "description": "Not Implemented"
          }
        },
        "summary": "Get a bundler by address hash",
        "tags": [
          "account-abstraction"
        ]
      }
    },
    "/{chain_id}/api/v2/proxy/account-abstraction/bundles": {
      "get": {
        "description": "Retrieves a list of recent bundles.",
        "operationId": "BlockScoutWeb.API.V2.Proxy.AccountAbstractionController.bundles",
        "parameters": [
          {
            "description": "User operation bundler address hash",
            "in": "query",
            "name": "bundler",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "User operation entry point address hash",
            "in": "query",
            "name": "entry_point",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Number of items returned per page",
            "in": "query",
            "name": "page_size",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Page token for paging",
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Bundle"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "page_size": 50,
                        "page_token": "3949699,0x275f7110df7d73e530f3381daa9d422dea80f036b514e56427d2d7e492c8a81f,0"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of bundles with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            },
            "description": "Bad Request"
          },
          "501": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            },
            "description": "Not Implemented"
          }
        },
        "summary": "List of recent bundles",
        "tags": [
          "account-abstraction"
        ]
      }
    },
    "/{chain_id}/api/v2/proxy/account-abstraction/factories": {
      "get": {
        "description": "Retrieves a list of top wallet factories.",
        "operationId": "BlockScoutWeb.API.V2.Proxy.AccountAbstractionController.factories",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Number of items returned per page",
            "in": "query",
            "name": "page_size",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Page token for paging",
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Factory"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "page_size": 50,
                        "page_token": "3,0xC23957e7Fea98eBD017abe15a4e7770797ff6D8d"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of factories with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            },
            "description": "Bad Request"
          },
          "501": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            },
            "description": "Not Implemented"
          }
        },
        "summary": "List of top wallet factories",
        "tags": [
          "account-abstraction"
        ]
      }
    },
    "/{chain_id}/api/v2/proxy/account-abstraction/factories/{address_hash_param}": {
      "get": {
        "description": "Retrieves a factory by its address hash.",
        "operationId": "BlockScoutWeb.API.V2.Proxy.AccountAbstractionController.factory",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Factory"
                }
              }
            },
            "description": "Factory",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "501": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            },
            "description": "Not Implemented"
          }
        },
        "summary": "Get a factory by address hash",
        "tags": [
          "account-abstraction"
        ]
      }
    },
    "/{chain_id}/api/v2/proxy/account-abstraction/operations": {
      "get": {
        "description": "Retrieves a list of recent user operations.",
        "operationId": "BlockScoutWeb.API.V2.Proxy.AccountAbstractionController.operations",
        "parameters": [
          {
            "description": "User operation sender address hash",
            "in": "query",
            "name": "sender",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "User operation bundler address hash",
            "in": "query",
            "name": "bundler",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "User operation paymaster address hash",
            "in": "query",
            "name": "paymaster",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "User operation factory address hash",
            "in": "query",
            "name": "factory",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Transaction hash in the query",
            "in": "query",
            "name": "transaction_hash",
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "User operation entry point address hash",
            "in": "query",
            "name": "entry_point",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "User operation bundle index",
            "in": "query",
            "name": "bundle_index",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "User operation block number",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Number of items returned per page",
            "in": "query",
            "name": "page_size",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Page token for paging",
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/UserOperationInList"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "page_size": 50,
                        "page_token": "3937439,0xbb680271614883525ac8056c388489e80b3518ec12ec46e1b910c7238c46b565"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of user operations with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            },
            "description": "Bad Request"
          },
          "501": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            },
            "description": "Not Implemented"
          }
        },
        "summary": "List of recent user operations",
        "tags": [
          "account-abstraction"
        ]
      }
    },
    "/{chain_id}/api/v2/proxy/account-abstraction/operations/{operation_hash_param}": {
      "get": {
        "description": "Retrieves a user operation by its hash.",
        "operationId": "BlockScoutWeb.API.V2.Proxy.AccountAbstractionController.operation",
        "parameters": [
          {
            "description": "User operation hash in the path",
            "in": "path",
            "name": "operation_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserOperation"
                }
              }
            },
            "description": "User operation",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "501": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            },
            "description": "Not Implemented"
          }
        },
        "summary": "Get a user operation by hash",
        "tags": [
          "account-abstraction"
        ]
      }
    },
    "/{chain_id}/api/v2/proxy/account-abstraction/operations/{operation_hash_param}/summary": {
      "get": {
        "description": "Retrieves a human-readable summary of what a user operation did, presented in natural language.",
        "operationId": "BlockScoutWeb.API.V2.Proxy.AccountAbstractionController.summary",
        "parameters": [
          {
            "description": "User operation hash in the path",
            "in": "path",
            "name": "operation_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "If true, returns only the request body in the summary endpoint",
            "in": "query",
            "name": "just_request_body",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/Summary"
                    },
                    {
                      "$ref": "#/components/schemas/SummaryJustRequestBody"
                    }
                  ]
                }
              }
            },
            "description": "Human-readable summary of the specified user operation.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          },
          "501": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            },
            "description": "Not Implemented"
          }
        },
        "summary": "Get a human-readable, LLM-based user operation summary",
        "tags": [
          "account-abstraction"
        ]
      }
    },
    "/{chain_id}/api/v2/proxy/account-abstraction/paymasters": {
      "get": {
        "description": "Retrieves a list of top paymasters.",
        "operationId": "BlockScoutWeb.API.V2.Proxy.AccountAbstractionController.paymasters",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Number of items returned per page",
            "in": "query",
            "name": "page_size",
            "schema": {
              "maximum": 50,
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Page token for paging",
            "in": "query",
            "name": "page_token",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Paymaster"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "page_size": 50,
                        "page_token": "19,0xB98Cb1dA4F9BD640879F0bBCb30A541c84163406"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of paymasters with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            },
            "description": "Bad Request"
          },
          "501": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            },
            "description": "Not Implemented"
          }
        },
        "summary": "List of top paymasters",
        "tags": [
          "account-abstraction"
        ]
      }
    },
    "/{chain_id}/api/v2/proxy/account-abstraction/paymasters/{address_hash_param}": {
      "get": {
        "description": "Retrieves a paymaster by its address hash.",
        "operationId": "BlockScoutWeb.API.V2.Proxy.AccountAbstractionController.paymaster",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Paymaster"
                }
              }
            },
            "description": "Paymaster",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "501": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            },
            "description": "Not Implemented"
          }
        },
        "summary": "Get a paymaster by address hash",
        "tags": [
          "account-abstraction"
        ]
      }
    },
    "/{chain_id}/api/v2/proxy/account-abstraction/status": {
      "get": {
        "description": "Retrieves the status of the account abstraction microservice.",
        "operationId": "BlockScoutWeb.API.V2.Proxy.AccountAbstractionController.status",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountAbstractionStatus"
                }
              }
            },
            "description": "Status",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "501": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotImplementedResponse"
                }
              }
            },
            "description": "Not Implemented"
          }
        },
        "summary": "Get the status of the account abstraction microservice",
        "tags": [
          "account-abstraction"
        ]
      }
    },
    "/{chain_id}/api/v2/scroll/batches": {
      "get": {
        "description": "Retrieves a paginated list of batches.",
        "operationId": "BlockScoutWeb.API.V2.ScrollController.batches",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Number for paging",
            "in": "query",
            "name": "number",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Scroll.Batch"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "number": 502655
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of batches.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List batches.",
        "tags": [
          "scroll"
        ]
      }
    },
    "/{chain_id}/api/v2/scroll/batches/count": {
      "get": {
        "description": "Retrieves a size of the batch list.",
        "operationId": "BlockScoutWeb.API.V2.ScrollController.batches_count",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "description": "Number of items in the batch list.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Number of batches in the list.",
        "tags": [
          "scroll"
        ]
      }
    },
    "/{chain_id}/api/v2/scroll/batches/{number}": {
      "get": {
        "description": "Retrieves batch info by the given number.",
        "operationId": "BlockScoutWeb.API.V2.ScrollController.batch",
        "parameters": [
          {
            "description": "Batch number in the path.",
            "in": "path",
            "name": "number",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/IntegerString"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Scroll.Batch"
                }
              }
            },
            "description": "Batch info.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Batch by its number.",
        "tags": [
          "scroll"
        ]
      }
    },
    "/{chain_id}/api/v2/scroll/deposits": {
      "get": {
        "description": "Retrieves a paginated list of deposits.",
        "operationId": "BlockScoutWeb.API.V2.ScrollController.deposits",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "ID for paging",
            "in": "query",
            "name": "id",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Bridge"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "id": 986043
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of deposits.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List deposits.",
        "tags": [
          "scroll"
        ]
      }
    },
    "/{chain_id}/api/v2/scroll/deposits/count": {
      "get": {
        "description": "Retrieves a size of the deposits list.",
        "operationId": "BlockScoutWeb.API.V2.ScrollController.deposits_count",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "nullable": true,
                  "type": "integer"
                }
              }
            },
            "description": "Number of items in the deposits list.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Number of deposits in the list.",
        "tags": [
          "scroll"
        ]
      }
    },
    "/{chain_id}/api/v2/scroll/withdrawals": {
      "get": {
        "description": "Retrieves a paginated list of withdrawals.",
        "operationId": "BlockScoutWeb.API.V2.ScrollController.withdrawals",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "ID for paging",
            "in": "query",
            "name": "id",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Bridge"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "id": 220243
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of withdrawals.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List withdrawals.",
        "tags": [
          "scroll"
        ]
      }
    },
    "/{chain_id}/api/v2/scroll/withdrawals/count": {
      "get": {
        "description": "Retrieves a size of the withdrawals list.",
        "operationId": "BlockScoutWeb.API.V2.ScrollController.withdrawals_count",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "nullable": true,
                  "type": "integer"
                }
              }
            },
            "description": "Number of items in the withdrawals list.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Number of withdrawals in the list.",
        "tags": [
          "scroll"
        ]
      }
    },
    "/{chain_id}/api/v2/search": {
      "get": {
        "description": "Performs a unified search across multiple blockchain entity types including tokens, addresses, contracts, blocks, transactions and other resources.",
        "operationId": "BlockScoutWeb.API.V2.SearchController.search (2)",
        "parameters": [
          {
            "description": "Search query filter",
            "in": "query",
            "name": "q",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Next page params type for paging",
            "in": "query",
            "name": "next_page_params_type",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Label for paging in the search results",
            "in": "query",
            "name": "label",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "Token for paging in the search results",
            "in": "query",
            "name": "token",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "Contract for paging in the search results",
            "in": "query",
            "name": "contract",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "TAC operation for paging in the search results",
            "in": "query",
            "name": "tac_operation",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "Metadata tag for paging in the search results",
            "in": "query",
            "name": "metadata_tag",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "Block for paging in the search results",
            "in": "query",
            "name": "block",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "Blob for paging in the search results",
            "in": "query",
            "name": "blob",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "User operation for paging in the search results",
            "in": "query",
            "name": "user_operation",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "Address for paging in the search results",
            "in": "query",
            "name": "address",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "ENS domain for paging in the search results",
            "in": "query",
            "name": "ens_domain",
            "schema": {
              "type": "object"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchResult"
                }
              }
            },
            "description": "Successful search response containing matched items and pagination information.\n            Results are ordered by relevance and limited to 50 items per page.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Search for tokens, addresses, contracts, blocks, or transactions by identifier",
        "tags": [
          "search"
        ]
      }
    },
    "/{chain_id}/api/v2/search/check-redirect": {
      "get": {
        "description": "Checks if a search query redirects to a specific entity page rather than showing search results.",
        "operationId": "BlockScoutWeb.API.V2.SearchController.check_redirect",
        "parameters": [
          {
            "description": "Search query filter",
            "in": "query",
            "name": "q",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "parameter": {
                      "nullable": true,
                      "type": "string"
                    },
                    "redirect": {
                      "nullable": true,
                      "type": "boolean"
                    },
                    "type": {
                      "enum": [
                        "address",
                        "block",
                        "transaction",
                        "user_operation",
                        "blob",
                        "ens_domain"
                      ],
                      "nullable": true,
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Response indicating whether the query should redirect to a specific entity page.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Check if search query should redirect to a specific entity page",
        "tags": [
          "search"
        ]
      }
    },
    "/{chain_id}/api/v2/search/quick": {
      "get": {
        "description": "Performs a quick, unpaginated search for short queries.",
        "operationId": "BlockScoutWeb.API.V2.SearchController.quick_search",
        "parameters": [
          {
            "description": "Search query filter",
            "in": "query",
            "name": "q",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "type": "object"
                  },
                  "type": "array"
                }
              }
            },
            "description": "Quick search results.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Quick (unpaginated) search",
        "tags": [
          "search"
        ]
      }
    },
    "/{chain_id}/api/v2/shibarium/deposits": {
      "get": {
        "description": "Retrieves a paginated list of completed Shibarium deposits ordered by parent chain block number descending.\nA deposit is \"completed\" when both the parent-chain and Shibarium sides of the bridge have been observed.\n",
        "operationId": "BlockScoutWeb.API.V2.ShibariumController.deposits",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Parent chain block number for paging (cursor on `l1_block_number`).",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/ShibariumDeposit"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 17500000
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of Shibarium deposits.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List Shibarium deposits.",
        "tags": [
          "shibarium"
        ]
      }
    },
    "/{chain_id}/api/v2/shibarium/deposits/count": {
      "get": {
        "description": "Retrieves the total count of completed Shibarium deposits.",
        "operationId": "BlockScoutWeb.API.V2.ShibariumController.deposits_count",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "minimum": 0,
                  "type": "integer"
                }
              }
            },
            "description": "Number of items in the deposits list.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Number of Shibarium deposits.",
        "tags": [
          "shibarium"
        ]
      }
    },
    "/{chain_id}/api/v2/shibarium/withdrawals": {
      "get": {
        "description": "Retrieves a paginated list of completed Shibarium withdrawals ordered by Shibarium block number descending.\nA withdrawal is \"completed\" when both the Shibarium and parent-chain sides of the bridge have been observed.\n",
        "operationId": "BlockScoutWeb.API.V2.ShibariumController.withdrawals",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Shibarium block number for paging (cursor on `l2_block_number`).",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/ShibariumWithdrawal"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 5000000
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of Shibarium withdrawals.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List Shibarium withdrawals.",
        "tags": [
          "shibarium"
        ]
      }
    },
    "/{chain_id}/api/v2/shibarium/withdrawals/count": {
      "get": {
        "description": "Retrieves the total count of completed Shibarium withdrawals.",
        "operationId": "BlockScoutWeb.API.V2.ShibariumController.withdrawals_count",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "minimum": 0,
                  "type": "integer"
                }
              }
            },
            "description": "Number of items in the withdrawals list.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Number of Shibarium withdrawals.",
        "tags": [
          "shibarium"
        ]
      }
    },
    "/{chain_id}/api/v2/smart-contracts/": {
      "get": {
        "description": "Retrieves a paginated list of verified smart contracts with optional filtering by proxy status or programming language.",
        "operationId": "BlockScoutWeb.API.V2.SmartContractController.smart_contracts_list",
        "parameters": [
          {
            "description": "Sort results by:\n* balance - Sort by account balance\n* transactions_count - Sort by number of transactions\nShould be used together with `order` parameter.\n",
            "in": "query",
            "name": "sort",
            "schema": {
              "enum": [
                "balance",
                "transactions_count"
              ],
              "type": "string"
            }
          },
          {
            "description": "Sort order:\n* asc - Ascending order\n* desc - Descending order\nShould be used together with `sort` parameter.\n",
            "in": "query",
            "name": "order",
            "schema": {
              "enum": [
                "asc",
                "desc"
              ],
              "type": "string"
            }
          },
          {
            "description": "Search query filter",
            "in": "query",
            "name": "q",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Filter to apply",
            "in": "query",
            "name": "filter",
            "schema": {
              "$ref": "#/components/schemas/Language"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Smart-contract ID for paging",
            "in": "query",
            "name": "smart_contract_id",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Coin balance for paging",
            "in": "query",
            "name": "coin_balance",
            "schema": {
              "anyOf": [
                {
                  "type": "integer"
                },
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Address hash for paging",
            "in": "query",
            "name": "hash",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Transactions count for paging",
            "in": "query",
            "name": "transactions_count",
            "schema": {
              "anyOf": [
                {
                  "type": "integer"
                },
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/SmartContractListItem"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "smart_contract_id": 1947801
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of verified smart contracts matching the filter criteria, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List verified smart contracts with optional filtering options",
        "tags": [
          "smart-contracts"
        ]
      }
    },
    "/{chain_id}/api/v2/smart-contracts/counters": {
      "get": {
        "description": "Retrieves count statistics for smart contracts, including total contracts, verified contracts, and new contracts in the last 24 hours.",
        "operationId": "BlockScoutWeb.API.V2.SmartContractController.smart_contracts_counters",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Counters"
                }
              }
            },
            "description": "Count statistics for smart contracts.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get count statistics (new & newly verified) for deployed smart contracts",
        "tags": [
          "smart-contracts"
        ]
      }
    },
    "/{chain_id}/api/v2/smart-contracts/{address_hash_param}": {
      "get": {
        "description": "Retrieves detailed information about a specific verified smart contract, including source code, ABI, and deployment details.",
        "operationId": "BlockScoutWeb.API.V2.SmartContractController.smart_contract",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SmartContract"
                }
              }
            },
            "description": "Detailed information about the specified verified smart contract.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          }
        },
        "summary": "Retrieve detailed information about a verified smart contract",
        "tags": [
          "smart-contracts"
        ]
      }
    },
    "/{chain_id}/api/v2/smart-contracts/{address_hash_param}/audit-reports": {
      "get": {
        "description": "Returns audit reports for a given smart contract address.",
        "operationId": "BlockScoutWeb.API.V2.SmartContractController.audit_reports_list",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "description": "List of smart-contract's audit reports",
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/AuditReport"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Audit reports.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Audit reports list",
        "tags": [
          "smart-contracts"
        ]
      }
    },
    "/{chain_id}/api/v2/stats": {
      "get": {
        "description": "Retrieves blockchain network statistics including total blocks, transactions, addresses, average block time, market data, and network utilization.",
        "operationId": "BlockScoutWeb.API.V2.StatsController.stats",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StatsResponse"
                }
              }
            },
            "description": "Blockchain network statistics.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Retrieve blockchain network statistics and metrics",
        "tags": [
          "stats"
        ]
      }
    },
    "/{chain_id}/api/v2/stats/charts/market": {
      "get": {
        "description": "Retrieves time series data of market information (daily closing price, market cap) for rendering charts.",
        "operationId": "BlockScoutWeb.API.V2.StatsController.market_chart",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "available_supply": {
                      "anyOf": [
                        {
                          "$ref": "#/components/schemas/FloatString"
                        },
                        {
                          "type": "integer"
                        }
                      ]
                    },
                    "chart_data": {
                      "items": {
                        "type": "object"
                      },
                      "type": "array"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Time series data for market charts and available token supply.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get daily closing price and market cap for native coin",
        "tags": [
          "stats"
        ]
      }
    },
    "/{chain_id}/api/v2/stats/charts/secondary-coin-market": {
      "get": {
        "description": "Returns market history for the secondary coin used for charting.",
        "operationId": "BlockScoutWeb.API.V2.StatsController.secondary_coin_market_chart",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "chart_data": {
                      "items": {
                        "type": "object"
                      },
                      "type": "array"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Secondary coin market chart data.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Secondary coin market history chart data",
        "tags": [
          "stats"
        ]
      }
    },
    "/{chain_id}/api/v2/stats/charts/transactions": {
      "get": {
        "description": "Retrieves time series data of daily transaction counts for rendering charts.",
        "operationId": "BlockScoutWeb.API.V2.StatsController.transactions_chart",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "chart_data": {
                      "items": {
                        "type": "object"
                      },
                      "type": "array"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Time series data for transaction count charts.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get daily transaction counts",
        "tags": [
          "stats"
        ]
      }
    },
    "/{chain_id}/api/v2/stats/hot-smart-contracts": {
      "get": {
        "description": "Retrieves paginated list of hot smart-contracts",
        "operationId": "BlockScoutWeb.API.V2.StatsController.hot_smart_contracts",
        "parameters": [
          {
            "description": "Sort results by:\n* transactions_count - Sort by number of transactions\n* total_gas_used - Sort by total gas used\nShould be used together with `order` parameter.\n",
            "in": "query",
            "name": "sort",
            "schema": {
              "enum": [
                "transactions_count",
                "total_gas_used"
              ],
              "type": "string"
            }
          },
          {
            "description": "Sort order:\n* asc - Ascending order\n* desc - Descending order\nShould be used together with `sort` parameter.\n",
            "in": "query",
            "name": "order",
            "schema": {
              "enum": [
                "asc",
                "desc"
              ],
              "type": "string"
            }
          },
          {
            "description": "Time scale for hot contracts aggregation (5m=5 minutes, 1h=1 hour, 3h=3 hours, 1d=1 day, 7d=7 days, 30d=30 days)",
            "in": "query",
            "name": "scale",
            "required": true,
            "schema": {
              "enum": [
                "5m",
                "1h",
                "3h",
                "1d",
                "7d",
                "30d"
              ],
              "type": "string"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Transactions count for paging",
            "in": "query",
            "name": "transactions_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Total gas used for paging",
            "in": "query",
            "name": "total_gas_used",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Contract address hash for paging",
            "in": "query",
            "name": "contract_address_hash",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/HotContract"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "contract_address_hash": "0x01a2A10583675E0e5dF52DE1b62734109201477a",
                        "total_gas_used": "100",
                        "transactions_count": 100
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Paginated list of hot smart-contracts.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Retrieve hot smart-contracts",
        "tags": [
          "stats"
        ]
      }
    },
    "/{chain_id}/api/v2/token-transfers": {
      "get": {
        "description": "Retrieves a paginated list of token transfers across all token types (ERC-20, ERC-721, ERC-1155).",
        "operationId": "BlockScoutWeb.API.V2.TokenTransferController.token_transfers",
        "parameters": [
          {
            "description": "Filter by token type. Comma-separated list of:\n* ERC-20 - Fungible tokens\n* ERC-721 - Non-fungible tokens\n* ERC-1155 - Multi-token standard\n* ERC-404 - Hybrid fungible/non-fungible tokens\n\n\nExample: `ERC-20,ERC-721` to show both fungible and NFT transfers\n",
            "in": "query",
            "name": "type",
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "pattern": "^\\[?(ERC-20|ERC-721|ERC-1155|ERC-404|ERC-7984)(,(ERC-20|ERC-721|ERC-1155|ERC-404|ERC-7984))*\\]?$",
                  "type": "string"
                }
              ]
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Batch log index for paging",
            "in": "query",
            "name": "batch_log_index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Batch block hash for paging",
            "in": "query",
            "name": "batch_block_hash",
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "Batch transaction hash for paging",
            "in": "query",
            "name": "batch_transaction_hash",
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "Index in batch for paging",
            "in": "query",
            "name": "index_in_batch",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TokenTransfer"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 22133247,
                        "index": 50
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of token transfers with pagination information.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List token transfers across all token types (ERC-20, ERC-721, ERC-1155)",
        "tags": [
          "token-transfers"
        ]
      }
    },
    "/{chain_id}/api/v2/tokens/": {
      "get": {
        "description": "Retrieves a paginated list of tokens with optional filtering by name, symbol, or type.",
        "operationId": "BlockScoutWeb.API.V2.TokenController.tokens_list",
        "parameters": [
          {
            "description": "Filter by token type. Comma-separated list of:\n* ERC-20 - Fungible tokens\n* ERC-721 - Non-fungible tokens\n* ERC-1155 - Multi-token standard\n* ERC-404 - Hybrid fungible/non-fungible tokens\n\n\nExample: `ERC-20,ERC-721` to show both fungible and NFT transfers\n",
            "in": "query",
            "name": "type",
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "pattern": "^\\[?(ERC-20|ERC-721|ERC-1155|ERC-404|ERC-7984)(,(ERC-20|ERC-721|ERC-1155|ERC-404|ERC-7984))*\\]?$",
                  "type": "string"
                }
              ]
            }
          },
          {
            "description": "Search query filter",
            "in": "query",
            "name": "q",
            "schema": {
              "nullable": true,
              "type": "string"
            }
          },
          {
            "description": "Limit result items in the response",
            "in": "query",
            "name": "limit",
            "schema": {
              "nullable": true,
              "type": "integer"
            }
          },
          {
            "description": "Sort results by:\n* fiat_value - Sort by fiat value\n* holders_count - Sort by number of token holders\n* circulating_market_cap - Sort by circulating market cap of the token\nShould be used together with `order` parameter.\n",
            "in": "query",
            "name": "sort",
            "schema": {
              "enum": [
                "fiat_value",
                "holders_count",
                "circulating_market_cap"
              ],
              "type": "string"
            }
          },
          {
            "description": "Sort order:\n* asc - Ascending order\n* desc - Descending order\nShould be used together with `sort` parameter.\n",
            "in": "query",
            "name": "order",
            "schema": {
              "enum": [
                "asc",
                "desc"
              ],
              "type": "string"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Contract address hash for paging",
            "in": "query",
            "name": "contract_address_hash",
            "schema": {
              "$ref": "#/components/schemas/AddressHashNullable"
            }
          },
          {
            "description": "Fiat value for paging",
            "in": "query",
            "name": "fiat_value",
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/FloatString"
                },
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Number of holders returned per page",
            "in": "query",
            "name": "holders_count",
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/IntegerString"
                },
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Is name null for paging",
            "in": "query",
            "name": "is_name_null",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "Market cap for paging",
            "in": "query",
            "name": "market_cap",
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/FloatString"
                },
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Name for paging",
            "in": "query",
            "name": "name",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Token"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "contract_address_hash": "0xbe9895146f7af43049ca1c1ae358b0541ea49704",
                        "fiat_value": "4724.32",
                        "holders_count": 59731,
                        "is_name_null": false,
                        "market_cap": "570958125.135513",
                        "name": "Wrapped Staked ETH"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of tokens matching the filter criteria, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List tokens with optional filtering by name, symbol, or type",
        "tags": [
          "tokens"
        ]
      }
    },
    "/{chain_id}/api/v2/tokens/{address_hash_param}": {
      "get": {
        "description": "Retrieves detailed information for a specific token identified by its contract address.",
        "operationId": "BlockScoutWeb.API.V2.TokenController.token",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TokenResponse"
                }
              }
            },
            "description": "Detailed information about the specified token.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Retrieve detailed information about a specific token",
        "tags": [
          "tokens"
        ]
      }
    },
    "/{chain_id}/api/v2/tokens/{address_hash_param}/counters": {
      "get": {
        "description": "Retrieves count statistics for a specific token, including holders count and transfers count.",
        "operationId": "BlockScoutWeb.API.V2.TokenController.counters",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TokenCountersResponse"
                }
              }
            },
            "description": "Count statistics for the specified token.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get holder and transfer count statistics for a specific token",
        "tags": [
          "tokens"
        ]
      }
    },
    "/{chain_id}/api/v2/tokens/{address_hash_param}/holders": {
      "get": {
        "description": "Retrieves addresses holding a specific token, sorted by balance. Useful for analyzing token distribution.",
        "operationId": "BlockScoutWeb.API.V2.TokenController.holders",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Address hash for paging",
            "in": "query",
            "name": "address_hash",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Transaction value for paging",
            "in": "query",
            "name": "value",
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/IntegerString"
                },
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TokenHolderResponse"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "address_hash": "0x48bb9b14483e43c7726df702b271d410e7460656",
                        "value": "200000000000000"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Holders of the specified token, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List addresses holding a specific token sorted by balance",
        "tags": [
          "tokens"
        ]
      }
    },
    "/{chain_id}/api/v2/tokens/{address_hash_param}/holders/csv": {
      "get": {
        "description": "Exports the holders of a specific token as a CSV file.",
        "operationId": "BlockScoutWeb.API.V2.CsvExportController.export_token_holders",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Start of the time period (ISO 8601 format) in CSV export",
            "in": "query",
            "name": "from_period",
            "schema": {
              "anyOf": [
                {
                  "pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(?:T(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d(?:(?::|%3A)[0-5]\\d(?:\\.\\d{1,9})?)?)?(?:Z|(?:\\+|%2B|-)(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d)?)?)?$",
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "End of the time period (ISO 8601 format) In CSV export",
            "in": "query",
            "name": "to_period",
            "schema": {
              "anyOf": [
                {
                  "pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(?:T(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d(?:(?::|%3A)[0-5]\\d(?:\\.\\d{1,9})?)?)?(?:Z|(?:\\+|%2B|-)(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d)?)?)?$",
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Filter type in CSV export",
            "in": "query",
            "name": "filter_type",
            "schema": {
              "anyOf": [
                {
                  "enum": [
                    "address"
                  ],
                  "nullable": true,
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Filter value in CSV export",
            "in": "query",
            "name": "filter_value",
            "schema": {
              "anyOf": [
                {
                  "enum": [
                    "to",
                    "from"
                  ],
                  "nullable": true,
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/csv": {}
            },
            "description": "CSV file of token holders.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Export token holders as CSV",
        "tags": [
          "tokens"
        ]
      }
    },
    "/{chain_id}/api/v2/tokens/{address_hash_param}/instances": {
      "get": {
        "description": "Retrieves instances of NFTs for a specific token contract. This endpoint is primarily for ERC-721 and ERC-1155 tokens.",
        "operationId": "BlockScoutWeb.API.V2.TokenController.instances",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Token holder address hash in the query",
            "in": "query",
            "name": "holder_address_hash",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Token ID for paging",
            "in": "query",
            "name": "unique_token",
            "schema": {
              "$ref": "#/components/schemas/IntegerStringNullable"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TokenInstanceInTokenInstancesList"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "unique_token": 782098
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "NFT instances for the specified token contract, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List individual NFT instances for a token contract",
        "tags": [
          "tokens"
        ]
      }
    },
    "/{chain_id}/api/v2/tokens/{address_hash_param}/instances/refetch-metadata": {},
    "/{chain_id}/api/v2/tokens/{address_hash_param}/instances/{token_id_param}": {
      "get": {
        "description": "Retrieves detailed information about a specific NFT instance, identified by its token contract address and token ID.",
        "operationId": "BlockScoutWeb.API.V2.TokenController.instance",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Token ID for ERC-721/1155/404 tokens",
            "in": "path",
            "name": "token_id_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/IntegerStringNullable"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TokenInstance"
                }
              }
            },
            "description": "Detailed information about the specified NFT instance.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Retrieve detailed information about a specific NFT",
        "tags": [
          "tokens"
        ]
      }
    },
    "/{chain_id}/api/v2/tokens/{address_hash_param}/instances/{token_id_param}/holders": {
      "get": {
        "description": "Retrieves current holders of a specific NFT instance. For ERC-721, this will typically be a single address. For ERC-1155, multiple addresses may hold the same token ID.",
        "operationId": "BlockScoutWeb.API.V2.TokenController.holders_by_instance",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Token ID for ERC-721/1155/404 tokens",
            "in": "path",
            "name": "token_id_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/IntegerStringNullable"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Address hash for paging",
            "in": "query",
            "name": "address_hash",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Token ID for paging",
            "in": "query",
            "name": "token_id",
            "schema": {
              "$ref": "#/components/schemas/IntegerStringNullable"
            }
          },
          {
            "description": "Transaction value for paging",
            "in": "query",
            "name": "value",
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/IntegerString"
                },
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TokenHolderResponse"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "address_hash": "0x1d2c163fbda9486c3a384b6fa5e34c96fe948e9a",
                        "token_id": "0",
                        "value": "4217417051704137590935"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Current holders of the specified NFT instance, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List current holders of a specific NFT",
        "tags": [
          "tokens"
        ]
      }
    },
    "/{chain_id}/api/v2/tokens/{address_hash_param}/instances/{token_id_param}/media-type": {
      "get": {
        "description": "Determines and returns the media type categories (image/video/html) for the image and animation URLs of a specific NFT instance. Fetches via HTTP HEAD if not yet determined and stores the result.",
        "operationId": "BlockScoutWeb.API.V2.TokenController.media_type",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Token ID for ERC-721/1155/404 tokens",
            "in": "path",
            "name": "token_id_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/IntegerStringNullable"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "animation_media_type": {
                      "enum": [
                        "image",
                        "video",
                        "html"
                      ],
                      "nullable": true,
                      "type": "string"
                    },
                    "image_media_type": {
                      "enum": [
                        "image",
                        "video",
                        "html"
                      ],
                      "nullable": true,
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Media type categories for the NFT instance.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Fetch media type for a specific NFT instance",
        "tags": [
          "tokens"
        ]
      }
    },
    "/{chain_id}/api/v2/tokens/{address_hash_param}/instances/{token_id_param}/refetch-metadata": {},
    "/{chain_id}/api/v2/tokens/{address_hash_param}/instances/{token_id_param}/transfers": {
      "get": {
        "description": "Retrieves token transfers for a specific token instance (by token address and token ID).",
        "operationId": "BlockScoutWeb.API.V2.TokenController.transfers_by_instance",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Token ID for ERC-721/1155/404 tokens",
            "in": "path",
            "name": "token_id_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/IntegerStringNullable"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Token ID for paging",
            "in": "query",
            "name": "token_id",
            "schema": {
              "$ref": "#/components/schemas/IntegerStringNullable"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TokenTransfer"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 23489243,
                        "index": 920,
                        "token_id": "4"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Transfer history for the specified NFT instance, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List token transfers for a specific token instance",
        "tags": [
          "tokens"
        ]
      }
    },
    "/{chain_id}/api/v2/tokens/{address_hash_param}/instances/{token_id_param}/transfers-count": {
      "get": {
        "description": "Retrieves the total number of transfers for a specific NFT instance. Useful for determining how frequently an NFT has changed hands.",
        "operationId": "BlockScoutWeb.API.V2.TokenController.transfers_count_by_instance",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Token ID for ERC-721/1155/404 tokens",
            "in": "path",
            "name": "token_id_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/IntegerStringNullable"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "properties": {
                    "transfers_count": {
                      "type": "integer"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Total number of transfers for the specified NFT instance.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get total number of ownership transfers for a specific NFT",
        "tags": [
          "tokens"
        ]
      }
    },
    "/{chain_id}/api/v2/tokens/{address_hash_param}/transfers": {
      "get": {
        "description": "Retrieves transfer history for a specific NFT instance, showing ownership changes over time.",
        "operationId": "BlockScoutWeb.API.V2.TokenController.transfers",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Batch log index for paging",
            "in": "query",
            "name": "batch_log_index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Batch block hash for paging",
            "in": "query",
            "name": "batch_block_hash",
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "Batch transaction hash for paging",
            "in": "query",
            "name": "batch_transaction_hash",
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "Index in batch for paging",
            "in": "query",
            "name": "index_in_batch",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TokenTransfer"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "batch_block_hash": "0x789",
                        "batch_log_index": 3,
                        "batch_transaction_hash": "0xabc",
                        "block_number": 23484141,
                        "index": 259,
                        "index_in_batch": 2
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Transfers of the specified token, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List ownership transfer history for a specific NFT",
        "tags": [
          "tokens"
        ]
      }
    },
    "/{chain_id}/api/v2/tokens/{address_hash_param}/transfers/csv": {
      "get": {
        "description": "Exports the transfers of a specific token as a CSV file.",
        "operationId": "BlockScoutWeb.API.V2.CsvExportController.export_token_transfers",
        "parameters": [
          {
            "description": "Address hash in the path",
            "in": "path",
            "name": "address_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Start of the time period (ISO 8601 format) in CSV export",
            "in": "query",
            "name": "from_period",
            "required": true,
            "schema": {
              "anyOf": [
                {
                  "pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(?:T(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d(?:(?::|%3A)[0-5]\\d(?:\\.\\d{1,9})?)?)?(?:Z|(?:\\+|%2B|-)(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d)?)?)?$",
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "End of the time period (ISO 8601 format) In CSV export",
            "in": "query",
            "name": "to_period",
            "required": true,
            "schema": {
              "anyOf": [
                {
                  "pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])(?:T(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d(?:(?::|%3A)[0-5]\\d(?:\\.\\d{1,9})?)?)?(?:Z|(?:\\+|%2B|-)(?:[01]\\d|2[0-3])(?:(?::|%3A)[0-5]\\d)?)?)?$",
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Filter type in CSV export",
            "in": "query",
            "name": "filter_type",
            "schema": {
              "anyOf": [
                {
                  "enum": [
                    "address"
                  ],
                  "nullable": true,
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "Filter value in CSV export",
            "in": "query",
            "name": "filter_value",
            "schema": {
              "anyOf": [
                {
                  "enum": [
                    "to",
                    "from"
                  ],
                  "nullable": true,
                  "type": "string"
                },
                {
                  "$ref": "#/components/schemas/NullString"
                }
              ]
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/csv": {}
            },
            "description": "CSV file of token transfers.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Export token transfers as CSV",
        "tags": [
          "tokens"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions": {
      "get": {
        "description": "Retrieves a paginated list of transactions with optional filtering by status, type, and method.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.transactions",
        "parameters": [
          {
            "description": "Filter transactions by status:\n* pending - Transactions waiting to be mined/validated\n* validated - Confirmed transactions included in blocks\nIf omitted, default value \"validated\" is used.\n",
            "in": "query",
            "name": "filter",
            "schema": {
              "enum": [
                "validated",
                "pending"
              ],
              "type": "string"
            }
          },
          {
            "description": "Filter by transaction type. Comma-separated list of:\n* blob_transaction - Only show blob transactions\n",
            "in": "query",
            "name": "type",
            "schema": {
              "enum": [
                "blob_transaction"
              ],
              "type": "string"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Transaction hash for paging",
            "in": "query",
            "name": "hash",
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "Inserted at timestamp for paging (ISO8601)",
            "in": "query",
            "name": "inserted_at",
            "schema": {
              "format": "date-time",
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TransactionResponse"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 23532302,
                        "index": 375
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of transactions with pagination information.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List blockchain transactions with filtering options for status, type, and method",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/arbitrum-batch/{batch_number_param}": {
      "get": {
        "description": "Retrieves L2 transactions bound to a specific Arbitrum batch number.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.arbitrum_batch",
        "parameters": [
          {
            "description": "Batch number",
            "in": "path",
            "name": "batch_number_param",
            "required": true,
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TransactionResponse"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 391483842,
                        "index": 0
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Arbitrum batch transactions.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List L2 transactions in an Arbitrum batch",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/execution-node/{execution_node_hash_param}": {
      "get": {
        "description": "Retrieves transactions that were executed on the specified execution node.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.execution_node",
        "parameters": [
          {
            "description": "Execution node hash in the path",
            "in": "path",
            "name": "execution_node_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TransactionResponse"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 14127868,
                        "index": 0
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of transactions.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List transactions executed on a specific execution node",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/optimism-batch/{batch_number_param}": {
      "get": {
        "description": "Retrieves L2 transactions bound to a specific Optimism batch number.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.optimism_batch",
        "parameters": [
          {
            "description": "Batch number",
            "in": "path",
            "name": "batch_number_param",
            "required": true,
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TransactionResponse"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 142678440,
                        "index": 5
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Optimism batch transactions.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List L2 transactions in an Optimism batch",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/scroll-batch/{batch_number_param}": {
      "get": {
        "description": "Retrieves L2 transactions bound to a specific Scroll batch number.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.scroll_batch",
        "parameters": [
          {
            "description": "Batch number",
            "in": "path",
            "name": "batch_number_param",
            "required": true,
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TransactionResponse"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 14127868,
                        "index": 0
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Scroll batch transactions.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List L2 transactions in a Scroll batch",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/stats": {
      "get": {
        "description": "Retrieves statistics for transactions, including counts and fee summaries for the last 24 hours.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.stats",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "pending_transactions_count": {
                      "$ref": "#/components/schemas/IntegerString"
                    },
                    "transaction_fees_avg_24h": {
                      "$ref": "#/components/schemas/IntegerString"
                    },
                    "transaction_fees_sum_24h": {
                      "$ref": "#/components/schemas/IntegerString"
                    },
                    "transactions_count_24h": {
                      "$ref": "#/components/schemas/IntegerString"
                    }
                  },
                  "required": [
                    "transactions_count_24h",
                    "pending_transactions_count",
                    "transaction_fees_sum_24h",
                    "transaction_fees_avg_24h"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Transaction statistics.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get transaction statistics",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/watchlist": {
      "get": {
        "description": "Retrieves transactions in the authenticated user's watchlist.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.watchlist_transactions",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TransactionResponse"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 23617990,
                        "index": 128
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Watchlist transactions.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ForbiddenResponse"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List transactions in a user's watchlist",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/zksync-batch/{batch_number_param}": {
      "get": {
        "description": "Retrieves L2 transactions bound to a specific ZkSync batch number.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.zksync_batch",
        "parameters": [
          {
            "description": "Batch number",
            "in": "path",
            "name": "batch_number_param",
            "required": true,
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TransactionResponse"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 65361291,
                        "index": 1
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "ZkSync batch transactions.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List L2 transactions in a ZkSync batch",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/{transaction_hash_param}": {
      "get": {
        "description": "Retrieves detailed information for a specific transaction identified by its hash.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.transaction",
        "parameters": [
          {
            "description": "Transaction hash in the path",
            "in": "path",
            "name": "transaction_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TransactionResponse"
                }
              }
            },
            "description": "Detailed information about the specified transaction.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Retrieve detailed information about a specific transaction",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/{transaction_hash_param}/beacon/deposits": {
      "get": {
        "description": "Retrieves beacon deposits included in a specific transaction with pagination support.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.beacon_deposits",
        "parameters": [
          {
            "description": "Transaction hash in the path",
            "in": "path",
            "name": "transaction_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/BeaconDepositResponse"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "index": 2287943
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Beacon deposits for transaction.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List beacon deposits in a transaction",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/{transaction_hash_param}/blobs": {
      "get": {
        "description": "Retrieves blobs for a specific transaction (Ethereum only).",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.blobs",
        "parameters": [
          {
            "description": "Transaction hash in the path",
            "in": "path",
            "name": "transaction_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/BlobResponse"
                      },
                      "type": "array"
                    }
                  },
                  "type": "object"
                }
              }
            },
            "description": "Blobs for transaction.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List blobs for a transaction",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/{transaction_hash_param}/external-transactions": {
      "get": {
        "description": "Retrieves external transactions that are linked to the specified transaction (e.g., Solana transactions in `neon` chain type).",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.external_transactions",
        "parameters": [
          {
            "description": "Transaction hash in the path",
            "in": "path",
            "name": "transaction_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "items": {
                    "type": "string"
                  },
                  "type": "array"
                }
              }
            },
            "description": "Linked external transactions.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List external transactions linked to a transaction",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/{transaction_hash_param}/fhe-operations": {
      "get": {
        "description": "Retrieves Fully Homomorphic Encryption (FHE) operations parsed from transaction logs. Includes operation details, HCU (Homomorphic Compute Unit) costs, operation types, and related metadata.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.fhe_operations",
        "parameters": [
          {
            "description": "Transaction hash in the path",
            "in": "path",
            "name": "transaction_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FheOperationsResponse"
                }
              }
            },
            "description": "FHE operations for the specified transaction with transaction-level metrics.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List FHE operations for a specific transaction",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/{transaction_hash_param}/internal-transactions": {
      "get": {
        "description": "Retrieves internal transactions generated during the execution of a specific transaction. Useful for analyzing contract interactions and debugging failed transactions.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.internal_transactions",
        "parameters": [
          {
            "description": "Transaction hash in the path",
            "in": "path",
            "name": "transaction_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "If `false`, zero-value call-type internal transactions are excluded from results.",
            "in": "query",
            "name": "include_zero_value",
            "schema": {
              "default": true,
              "type": "boolean"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Transaction index for paging",
            "in": "query",
            "name": "transaction_index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/InternalTransaction"
                      },
                      "type": "array"
                    },
                    "meta": {
                      "properties": {
                        "message": {
                          "nullable": true,
                          "type": "string"
                        },
                        "status": {
                          "enum": [
                            1,
                            2
                          ],
                          "type": "integer"
                        }
                      },
                      "required": [
                        "status",
                        "message"
                      ],
                      "type": "object"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 22133247,
                        "index": 50,
                        "transaction_index": 68
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params",
                    "meta"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Internal transactions for the specified transaction, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List internal transactions triggered during a specific transaction",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/{transaction_hash_param}/logs": {
      "get": {
        "description": "Retrieves event logs emitted during the execution of a specific transaction. Logs contain information about contract events and state changes.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.logs",
        "parameters": [
          {
            "description": "Transaction hash in the path",
            "in": "path",
            "name": "transaction_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Log"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 21925703,
                        "index": 124
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Event logs for the specified transaction, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List event logs emitted during a specific transaction",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/{transaction_hash_param}/raw-trace": {
      "get": {
        "description": "Retrieves the raw execution trace for a transaction, showing the step-by-step execution path and all contract interactions.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.raw_trace",
        "parameters": [
          {
            "description": "Transaction hash in the path",
            "in": "path",
            "name": "transaction_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RawTrace"
                }
              }
            },
            "description": "Raw execution trace for the specified transaction.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get step-by-step execution trace for a specific transaction",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/{transaction_hash_param}/state-changes": {
      "get": {
        "description": "Retrieves state changes (balance changes, token transfers) caused by a specific transaction.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.state_changes",
        "parameters": [
          {
            "description": "Transaction hash in the path",
            "in": "path",
            "name": "transaction_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Cumulative number of state changes to skip for keyset-based pagination",
            "in": "query",
            "name": "state_changes_count",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/StateChange"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "state_changes_count": 50
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "State changes caused by the specified transaction, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get on-chain state changes caused by a specific transaction",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/{transaction_hash_param}/summary": {
      "get": {
        "description": "Retrieves a human-readable summary of what a transaction did, presented in natural language.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.summary",
        "parameters": [
          {
            "description": "Transaction hash in the path",
            "in": "path",
            "name": "transaction_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "If true, returns only the request body in the summary endpoint",
            "in": "query",
            "name": "just_request_body",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "anyOf": [
                    {
                      "$ref": "#/components/schemas/Summary"
                    },
                    {
                      "$ref": "#/components/schemas/SummaryJustRequestBody"
                    }
                  ]
                }
              }
            },
            "description": "Human-readable summary of the specified transaction.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get a human-readable, LLM-based transaction summary",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/transactions/{transaction_hash_param}/token-transfers": {
      "get": {
        "description": "Retrieves token transfers that occurred within a specific transaction, with optional filtering by token type.",
        "operationId": "BlockScoutWeb.API.V2.TransactionController.token_transfers",
        "parameters": [
          {
            "description": "Transaction hash in the path",
            "in": "path",
            "name": "transaction_hash_param",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "Filter by token type. Comma-separated list of:\n* ERC-20 - Fungible tokens\n* ERC-721 - Non-fungible tokens\n* ERC-1155 - Multi-token standard\n* ERC-404 - Hybrid fungible/non-fungible tokens\n\n\nExample: `ERC-20,ERC-721` to show both fungible and NFT transfers\n",
            "in": "query",
            "name": "type",
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/EmptyString"
                },
                {
                  "pattern": "^\\[?(ERC-20|ERC-721|ERC-1155|ERC-404|ERC-7984)(,(ERC-20|ERC-721|ERC-1155|ERC-404|ERC-7984))*\\]?$",
                  "type": "string"
                }
              ]
            }
          },
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Block number for paging",
            "in": "query",
            "name": "block_number",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "Batch log index for paging",
            "in": "query",
            "name": "batch_log_index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Batch block hash for paging",
            "in": "query",
            "name": "batch_block_hash",
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "Batch transaction hash for paging",
            "in": "query",
            "name": "batch_transaction_hash",
            "schema": {
              "$ref": "#/components/schemas/FullHash"
            }
          },
          {
            "description": "Index in batch for paging",
            "in": "query",
            "name": "index_in_batch",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/TokenTransfer"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "block_number": 21307214,
                        "index": 442
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "Token transfers within the specified transaction, with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List token transfers within a specific transaction",
        "tags": [
          "transactions"
        ]
      }
    },
    "/{chain_id}/api/v2/validators/stability": {
      "get": {
        "description": "Retrieves a paginated list of validators on the Stability chain, optionally filtered by state and sorted by state, address hash or number of blocks produced.",
        "operationId": "BlockScoutWeb.API.V2.ValidatorController.stability_validators_list",
        "parameters": [
          {
            "description": "Comma-separated list of validator states to keep. Allowed values: `active`, `probation`, `inactive` (case-sensitive).",
            "in": "query",
            "name": "state_filter",
            "schema": {
              "pattern": "^(active|probation|inactive)(,(active|probation|inactive))*$",
              "type": "string"
            }
          },
          {
            "description": "Sort results by:\n* state - Sort by validator operational state\n* address_hash - Sort by address hash\n* blocks_validated - Sort by number of blocks validated by the validator\nShould be used together with `order` parameter.\n",
            "in": "query",
            "name": "sort",
            "schema": {
              "enum": [
                "state",
                "address_hash",
                "blocks_validated"
              ],
              "type": "string"
            }
          },
          {
            "description": "Sort order:\n* asc - Ascending order\n* desc - Descending order\nShould be used together with `sort` parameter.\n",
            "in": "query",
            "name": "order",
            "schema": {
              "enum": [
                "asc",
                "desc"
              ],
              "type": "string"
            }
          },
          {
            "description": "Cursor field — validator state from the previous page's `next_page_params`.",
            "in": "query",
            "name": "state",
            "schema": {
              "enum": [
                "active",
                "probation",
                "inactive"
              ],
              "type": "string"
            }
          },
          {
            "description": "Cursor field — validator address hash from the previous page's `next_page_params`.",
            "in": "query",
            "name": "address_hash",
            "schema": {
              "$ref": "#/components/schemas/AddressHash"
            }
          },
          {
            "description": "Cursor field — number of blocks validated from the previous page's `next_page_params`.",
            "in": "query",
            "name": "blocks_validated",
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/StabilityValidator"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "address_hash": "0x0000000000000000000000000000000000000805",
                        "blocks_validated": 100,
                        "state": "active"
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of Stability validators.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List Stability validators.",
        "tags": [
          "stability"
        ]
      }
    },
    "/{chain_id}/api/v2/validators/stability/counters": {
      "get": {
        "description": "Retrieves aggregate counters for the Stability chain validator set.",
        "operationId": "BlockScoutWeb.API.V2.ValidatorController.stability_validators_counters",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StabilityValidatorsCounters"
                }
              }
            },
            "description": "Stability validators counters.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get Stability validators counters.",
        "tags": [
          "stability"
        ]
      }
    },
    "/{chain_id}/api/v2/validators/zilliqa": {
      "get": {
        "description": "Retrieves the list of Zilliqa validators.",
        "operationId": "BlockScoutWeb.API.V2.ValidatorController.zilliqa_validators_list",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "Sort results by:\n* index - Sort by validator index\nShould be used together with `order` parameter.\n",
            "in": "query",
            "name": "sort",
            "schema": {
              "enum": [
                "index"
              ],
              "type": "string"
            }
          },
          {
            "description": "Sort order:\n* asc - Ascending order\n* desc - Descending order\nShould be used together with `sort` parameter.\n",
            "in": "query",
            "name": "order",
            "schema": {
              "enum": [
                "asc",
                "desc"
              ],
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Staker"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "index": 55
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of validators.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Zilliqa validators list.",
        "tags": [
          "zilliqa",
          "stability"
        ]
      }
    },
    "/{chain_id}/api/v2/validators/zilliqa/{bls_public_key}": {
      "get": {
        "description": "Retrieves Zilliqa validator detailed info by the given BLS public key.",
        "operationId": "BlockScoutWeb.API.V2.ValidatorController.zilliqa_validator",
        "parameters": [
          {
            "in": "path",
            "name": "bls_public_key",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/HexData"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StakerDetailed"
                }
              }
            },
            "description": "Validator detailed info.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BadRequestResponse"
                }
              }
            },
            "description": "Bad Request"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Zilliqa validator by its BLS public key.",
        "tags": [
          "zilliqa",
          "stability"
        ]
      }
    },
    "/{chain_id}/api/v2/withdrawals": {
      "get": {
        "description": "Retrieves a paginated list of withdrawals, typically for proof-of-stake networks supporting validator withdrawals.",
        "operationId": "BlockScoutWeb.API.V2.WithdrawalController.withdrawals_list",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Item index for paging",
            "in": "query",
            "name": "index",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/Withdrawal"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "index": 50
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of withdrawals with pagination.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List validator withdrawal details on proof-of-stake networks",
        "tags": [
          "withdrawals"
        ]
      }
    },
    "/{chain_id}/api/v2/withdrawals/counters": {
      "get": {
        "description": "Returns total withdrawals count and sum from cache.",
        "operationId": "BlockScoutWeb.API.V2.WithdrawalController.withdrawals_counters",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Counter"
                }
              }
            },
            "description": "Withdrawals counters.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Withdrawals counters",
        "tags": [
          "withdrawals"
        ]
      }
    },
    "/{chain_id}/api/v2/zksync/batches": {
      "get": {
        "description": "Retrieves a paginated list of ZkSync rollup batches, newest first.",
        "operationId": "BlockScoutWeb.API.V2.ZkSyncController.batches",
        "parameters": [
          {
            "description": "Number of items per page",
            "in": "query",
            "name": "items_count",
            "schema": {
              "minimum": 1,
              "type": "integer"
            }
          },
          {
            "description": "Number for paging",
            "in": "query",
            "name": "number",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "additionalProperties": false,
                  "properties": {
                    "items": {
                      "items": {
                        "$ref": "#/components/schemas/ZkSync.BatchListItem"
                      },
                      "type": "array"
                    },
                    "next_page_params": {
                      "additionalProperties": true,
                      "example": {
                        "number": 502655
                      },
                      "nullable": true,
                      "type": "object"
                    }
                  },
                  "required": [
                    "items",
                    "next_page_params"
                  ],
                  "type": "object"
                }
              }
            },
            "description": "List of batches.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "List batches.",
        "tags": [
          "zksync"
        ]
      }
    },
    "/{chain_id}/api/v2/zksync/batches/count": {
      "get": {
        "description": "Retrieves the total count of ZkSync rollup batches.",
        "operationId": "BlockScoutWeb.API.V2.ZkSyncController.batches_count",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "minimum": 0,
                  "type": "integer"
                }
              }
            },
            "description": "Total count of batches.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get batches count.",
        "tags": [
          "zksync"
        ]
      }
    },
    "/{chain_id}/api/v2/zksync/batches/{batch_number_param}": {
      "get": {
        "description": "Retrieves detailed information about a ZkSync batch by its number.",
        "operationId": "BlockScoutWeb.API.V2.ZkSyncController.batch",
        "parameters": [
          {
            "description": "Batch number",
            "in": "path",
            "name": "batch_number_param",
            "required": true,
            "schema": {
              "minimum": 0,
              "type": "integer"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ZkSync.Batch"
                }
              }
            },
            "description": "Batch info.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundResponse"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Get batch by number.",
        "tags": [
          "zksync"
        ]
      }
    },
    "/{chain_id}/stats-service/api/v1/counters": {
      "get": {
        "operationId": "StatsService_GetCounters",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1Counters"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Returns all available counter stats for the stats page.",
        "tags": [
          "StatsService"
        ]
      }
    },
    "/{chain_id}/stats-service/api/v1/lines": {
      "get": {
        "operationId": "StatsService_GetLineCharts",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1LineCharts"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Returns metadata (title, description, available resolutions) for all\nline charts, organized into sections.",
        "tags": [
          "StatsService"
        ]
      }
    },
    "/{chain_id}/stats-service/api/v1/lines/{name}": {
      "get": {
        "operationId": "StatsService_GetLineChart",
        "parameters": [
          {
            "description": "Identifier of the chart to retrieve (matches chart id).",
            "in": "path",
            "name": "name",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Default is first data point",
            "in": "query",
            "name": "from",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "Default is last data point",
            "in": "query",
            "name": "to",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "resolution",
            "schema": {
              "default": "RESOLUTION_UNSPECIFIED",
              "enum": [
                "RESOLUTION_UNSPECIFIED",
                "DAY",
                "WEEK",
                "MONTH",
                "YEAR"
              ],
              "type": "string"
            }
          },
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1LineChart"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Returns data points for a specific line chart, with optional date range\nand resolution filtering.",
        "tags": [
          "StatsService"
        ]
      }
    },
    "/{chain_id}/stats-service/api/v1/pages/contracts": {
      "get": {
        "operationId": "StatsService_GetContractsPageStats",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1ContractsPageStats"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Returns stats to be displayed on the contracts page.",
        "tags": [
          "StatsService"
        ]
      }
    },
    "/{chain_id}/stats-service/api/v1/pages/interchain/main": {
      "get": {
        "operationId": "StatsService_GetMainPageInterchainStats",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1MainPageInterchainStats"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Returns interchain messaging stats to be displayed on the main page of interchain indexer.",
        "tags": [
          "StatsService"
        ]
      }
    },
    "/{chain_id}/stats-service/api/v1/pages/main": {
      "get": {
        "operationId": "StatsService_GetMainPageStats",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1MainPageStats"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Returns stats to be displayed on the main page of indexer.",
        "tags": [
          "StatsService"
        ]
      }
    },
    "/{chain_id}/stats-service/api/v1/pages/multichain/main": {
      "get": {
        "operationId": "StatsService_GetMainPageMultichainStats",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1MainPageMultichainStats"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Returns multichain-aggregated stats to be displayed on the main page of multichain indexer.",
        "tags": [
          "StatsService"
        ]
      }
    },
    "/{chain_id}/stats-service/api/v1/pages/transactions": {
      "get": {
        "operationId": "StatsService_GetTransactionsPageStats",
        "parameters": [
          {
            "description": "The ID of the blockchain",
            "in": "path",
            "name": "chain_id",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/v1TransactionsPageStats"
                }
              }
            },
            "description": "A successful response.",
            "headers": {
              "x-credits-remaining": {
                "description": "Number of credits remaining in your plan. Resets daily on the free plan, monthly otherwise.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-limit": {
                "description": "Available requests per second with your plan. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-remaining": {
                "description": "Remaining rate limit based on your queries. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              },
              "x-ratelimit-reset": {
                "description": "Time in milliseconds until the rate limit resets. Returns -1 on internal error.",
                "schema": {
                  "type": "integer"
                }
              }
            }
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/googlerpcStatus"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "summary": "Returns stats to be displayed on the transactions page.",
        "tags": [
          "StatsService"
        ]
      }
    }
  },
  "security": [
    {
      "bearerAuth": []
    },
    {
      "apiKeyAuth": []
    }
  ],
  "servers": [
    {
      "url": "https://api.blockscout.com"
    }
  ]
}