TOP Group (The Open Platform) Blockchain API

The Blockchain API from TOP Group (The Open Platform) — 22 operation(s) for blockchain.

Operations 23

GET /v2/blockchain/reduced/blocks #
GET /v2/blockchain/blocks/{block_id} #
GET /v2/blockchain/blocks/{block_id}/boc #
GET /v2/blockchain/masterchain/{masterchain_seqno}/shards #
GET /v2/blockchain/masterchain/{masterchain_seqno}/blocks #
GET /v2/blockchain/masterchain/{masterchain_seqno}/transactions #
GET /v2/blockchain/masterchain/{masterchain_seqno}/config #
GET /v2/blockchain/masterchain/{masterchain_seqno}/config/raw #
GET /v2/blockchain/blocks/{block_id}/transactions #
GET /v2/blockchain/transactions/{transaction_id} #
GET /v2/blockchain/messages/{msg_id}/transaction #
GET /v2/blockchain/validators #
GET /v2/blockchain/masterchain-head #
GET /v2/blockchain/accounts/{account_id} #
POST /v2/blockchain/accounts/_bulk #
GET /v2/blockchain/accounts/{account_id}/transactions #
GET /v2/blockchain/accounts/{account_id}/methods/{method_name} #
POST /v2/blockchain/accounts/{account_id}/methods/{method_name} #
POST /v2/blockchain/message #
GET /v2/blockchain/config #
GET /v2/blockchain/config/raw #
GET /v2/blockchain/accounts/{account_id}/inspect #
GET /v2/blockchain/libraries/{hash} #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/top-group-blockchain-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

top-group-blockchain-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: REST api to TON explorer Blockchain API
  version: 2.0.0
  description: Provide access to indexed TON blockchain
  contact:
    name: Support
    email: support@tonkeeper.com
servers:
- url: https://tonapi.io
- url: https://testnet.tonapi.io
- url: http://localhost:8081
tags:
- name: Blockchain
  externalDocs:
    description: Additional documentation
    url: https://docs.tonconsole.com/tonapi/rest-api/blockchain
paths:
  /v2/blockchain/reduced/blocks:
    get:
      description: Get reduced blockchain blocks data
      operationId: getReducedBlockchainBlocks
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/fromQuery'
      - $ref: '#/components/parameters/toQuery'
      responses:
        '200':
          description: blockchain reduced blocks
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReducedBlocks'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/blocks/{block_id}:
    get:
      description: Get blockchain block data
      operationId: getBlockchainBlock
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/blockchainBlockIDParameter'
      responses:
        '200':
          description: blockchain block
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BlockchainBlock'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/blocks/{block_id}/boc:
    get:
      description: Download blockchain block BOC
      operationId: downloadBlockchainBlockBoc
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/blockchainBlockIDParameter'
      responses:
        '200':
          description: Block BOC file
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
          headers:
            Content-Disposition:
              schema:
                type: string
                example: attachment; filename="block.boc"
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/masterchain/{masterchain_seqno}/shards:
    get:
      description: Get blockchain block shards
      operationId: getBlockchainMasterchainShards
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/masterchainSeqno'
      responses:
        '200':
          description: blockchain block shards
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BlockchainBlockShards'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/masterchain/{masterchain_seqno}/blocks:
    get:
      description: Get all blocks in all shards and workchains between target and previous masterchain block according to shards last blocks snapshot in masterchain.  We don't recommend to build your app around this method because it has problem with scalability and will work very slow in the future.
      operationId: getBlockchainMasterchainBlocks
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/masterchainSeqno'
      responses:
        '200':
          description: blockchain blocks
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BlockchainBlocks'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/masterchain/{masterchain_seqno}/transactions:
    get:
      description: Get all transactions in all shards and workchains between target and previous masterchain block according to shards last blocks snapshot in masterchain. We don't recommend to build your app around this method because it has problem with scalability and will work very slow in the future.
      operationId: getBlockchainMasterchainTransactions
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/masterchainSeqno'
      - $ref: '#/components/parameters/offsetQuery'
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          example: 100
          minimum: 1
      responses:
        '200':
          description: blockchain transactions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Transactions'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/masterchain/{masterchain_seqno}/config:
    get:
      description: Get blockchain config from a specific block, if present.
      operationId: getBlockchainConfigFromBlock
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/masterchainSeqno'
      responses:
        '200':
          description: blockchain config
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BlockchainConfig'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/masterchain/{masterchain_seqno}/config/raw:
    get:
      description: Get raw blockchain config from a specific block, if present.
      operationId: getRawBlockchainConfigFromBlock
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/masterchainSeqno'
      responses:
        '200':
          description: blockchain config
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RawBlockchainConfig'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/blocks/{block_id}/transactions:
    get:
      description: Get transactions from block
      operationId: getBlockchainBlockTransactions
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/blockchainBlockIDParameter'
      responses:
        '200':
          description: blockchain block transactions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Transactions'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/transactions/{transaction_id}:
    get:
      description: Get transaction data
      operationId: getBlockchainTransaction
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/transactionIDParameter'
      responses:
        '200':
          description: blockchain transaction
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Transaction'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/messages/{msg_id}/transaction:
    get:
      description: Get transaction data by message hash
      operationId: getBlockchainTransactionByMessageHash
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/messageIDParameter'
      responses:
        '200':
          description: transaction by message hash
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Transaction'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/validators:
    get:
      description: Get blockchain validators
      operationId: getBlockchainValidators
      tags:
      - Blockchain
      responses:
        '200':
          description: blockchain validators
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Validators'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/masterchain-head:
    get:
      description: Get last known masterchain block
      operationId: getBlockchainMasterchainHead
      tags:
      - Blockchain
      responses:
        '200':
          description: blockchain masterchain head
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BlockchainBlock'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/accounts/{account_id}:
    get:
      description: Get low-level information about an account taken directly from the blockchain.
      operationId: getBlockchainRawAccount
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/accountIDParameter'
      responses:
        '200':
          description: raw account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BlockchainRawAccount'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/accounts/_bulk:
    post:
      description: Get low-level information about several accounts taken directly from the blockchain.
      operationId: getBlockchainRawAccounts
      tags:
      - Blockchain
      requestBody:
        $ref: '#/components/requestBodies/AccountIDs'
      responses:
        '200':
          description: a list of raw accounts
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BlockchainRawAccounts'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/accounts/{account_id}/transactions:
    get:
      description: Get account transactions
      operationId: getBlockchainAccountTransactions
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/accountIDParameter'
      - name: after_lt
        in: query
        description: omit this parameter to get last transactions
        schema:
          type: integer
          format: int64
          example: 39787624000003
          x-js-format: bigint
      - name: before_lt
        in: query
        description: omit this parameter to get last transactions
        schema:
          type: integer
          format: int64
          example: 39787624000003
          x-js-format: bigint
      - name: limit
        in: query
        schema:
          type: integer
          format: int32
          maximum: 1000
          default: 100
          example: 100
          minimum: 1
      - name: sort_order
        in: query
        schema:
          type: string
          description: used to sort the result-set in ascending or descending order by lt.
          default: desc
          enum:
          - desc
          - asc
      responses:
        '200':
          description: blockchain account transactions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Transactions'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/accounts/{account_id}/methods/{method_name}:
    get:
      description: Execute get method for account
      operationId: execGetMethodForBlockchainAccount
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/accountIDParameter'
      - $ref: '#/components/parameters/methodNameParameter'
      - name: args
        in: query
        required: false
        schema:
          type: array
          description: 'Array of method arguments in string format. Supported value formats:

            - "NaN" for Not-a-Number type

            - "Null" for Null type

            - Decimal integers for tinyint type (e.g., "100500")

            - 0x-prefixed hex strings for int257 type (e.g., "0xfa01d78381ae32")

            - TON blockchain addresses for slice type (e.g., "0:6e731f2e28b73539a7f85ac47ca104d5840b229351189977bb6151d36b5e3f5e")

            - Base64-encoded BOC for cell type (e.g., "te6ccgEBAQEAAgAAAA==")

            - Hex-encoded BOC for slice type (e.g., "b5ee9c72010101010002000000")'
          items:
            type: string
          example:
          - 0:9a33970f617bcd71acf2cd28357c067aa31859c02820d8f01d74c88063a8f4d8
      responses:
        '200':
          description: method execution result
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MethodExecutionResult'
        default:
          $ref: '#/components/responses/Error'
    post:
      description: Execute get method for account
      operationId: execGetMethodWithBodyForBlockchainAccount
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/accountIDParameter'
      - $ref: '#/components/parameters/methodNameParameter'
      requestBody:
        $ref: '#/components/requestBodies/ExecGetMethodArgs'
      responses:
        '200':
          description: method execution result
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MethodExecutionResult'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/message:
    post:
      description: Send message to blockchain
      operationId: sendBlockchainMessage
      tags:
      - Blockchain
      requestBody:
        $ref: '#/components/requestBodies/BatchBoc'
      responses:
        '200':
          description: the message has been sent
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/config:
    get:
      description: Get blockchain config
      operationId: getBlockchainConfig
      tags:
      - Blockchain
      responses:
        '200':
          description: blockchain config
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BlockchainConfig'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/config/raw:
    get:
      description: Get raw blockchain config
      operationId: getRawBlockchainConfig
      tags:
      - Blockchain
      responses:
        '200':
          description: blockchain config
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RawBlockchainConfig'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/accounts/{account_id}/inspect:
    get:
      description: Blockchain account inspect
      operationId: blockchainAccountInspect
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/accountIDParameter'
      responses:
        '200':
          description: blockchain account inspect
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BlockchainAccountInspect'
        default:
          $ref: '#/components/responses/Error'
  /v2/blockchain/libraries/{hash}:
    get:
      description: Get library cell
      operationId: getLibraryByHash
      tags:
      - Blockchain
      parameters:
      - $ref: '#/components/parameters/hashParameter'
      responses:
        '200':
          description: library cell
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BlockchainLibrary'
        default:
          $ref: '#/components/responses/Error'
components:
  parameters:
    methodNameParameter:
      in: path
      name: method_name
      required: true
      description: contract get method name
      schema:
        type: string
        example: get_wallet_address
    accountIDParameter:
      in: path
      name: account_id
      required: true
      description: account ID
      schema:
        type: string
        format: address
        example: 0:97264395BD65A255A429B11326C84128B7D70FFED7949ABAE3036D506BA38621
    masterchainSeqno:
      in: path
      name: masterchain_seqno
      required: true
      description: masterchain block seqno
      schema:
        type: integer
        format: int32
        example: 123456
    toQuery:
      in: query
      name: to
      required: true
      schema:
        type: integer
        format: int64
    messageIDParameter:
      in: path
      name: msg_id
      required: true
      description: message ID
      schema:
        type: string
        example: 97264395BD65A255A429B11326C84128B7D70FFED7949ABAE3036D506BA38621
    transactionIDParameter:
      in: path
      name: transaction_id
      required: true
      description: transaction ID
      schema:
        type: string
        example: 97264395BD65A255A429B11326C84128B7D70FFED7949ABAE3036D506BA38621
    hashParameter:
      in: path
      name: hash
      required: true
      description: hash in hex (without 0x) format
      schema:
        type: string
        example: 131D0C65055F04E9C19D687B51BC70F952FD9CA6F02C2801D3B89964A779DF85
    blockchainBlockIDParameter:
      in: path
      name: block_id
      required: true
      description: block ID
      schema:
        type: string
        example: (-1,8000000000000000,4234234)
    fromQuery:
      in: query
      name: from
      required: true
      schema:
        type: integer
        format: int64
    offsetQuery:
      in: query
      name: offset
      required: false
      schema:
        type: integer
        default: 0
        minimum: 0
  schemas:
    BlockLimits:
      type: object
      required:
      - bytes
      - gas
      - lt_delta
      properties:
        bytes:
          $ref: '#/components/schemas/BlockParamLimits'
        gas:
          $ref: '#/components/schemas/BlockParamLimits'
        lt_delta:
          $ref: '#/components/schemas/BlockParamLimits'
    JettonBridgePrices:
      type: object
      required:
      - bridge_burn_fee
      - bridge_mint_fee
      - wallet_min_gram_for_storage
      - wallet_gas_consumption
      - minter_min_gram_for_storage
      - discover_gas_consumption
      properties:
        bridge_burn_fee:
          type: integer
          format: int64
        bridge_mint_fee:
          type: integer
          format: int64
        wallet_min_tons_for_storage:
          type: integer
          format: int64
          deprecated: true
          description: this field will gone after Sept. 2026, use wallet_min_gram_for_storage instead
        wallet_min_gram_for_storage:
          type: integer
          format: int64
        wallet_gas_consumption:
          type: integer
          format: int64
        minter_min_tons_for_storage:
          type: integer
          format: int64
          deprecated: true
          description: this field will gone after Sept. 2026, use wallet_min_gram_for_storage instead
        minter_min_gram_for_storage:
          type: integer
          format: int64
        discover_gas_consumption:
          type: integer
          format: int64
    BlockchainBlocks:
      type: object
      required:
      - blocks
      properties:
        blocks:
          type: array
          items:
            $ref: '#/components/schemas/BlockchainBlock'
    AccStatusChange:
      type: string
      example: acst_unchanged
      enum:
      - acst_unchanged
      - acst_frozen
      - acst_deleted
    TvmStackRecord:
      type: object
      format: tuple-item
      required:
      - type
      properties:
        type:
          type: string
          example: cell
          enum:
          - cell
          - num
          - nan
          - 'null'
          - tuple
        cell:
          type: string
          format: cell
        slice:
          type: string
          format: cell
        num:
          type: string
          example: ''
        tuple:
          type: array
          example: []
          items:
            $ref: '#/components/schemas/TvmStackRecord'
    OracleBridgeParams:
      type: object
      required:
      - bridge_addr
      - oracle_multisig_address
      - external_chain_address
      - oracles
      properties:
        bridge_addr:
          type: string
          format: address
        oracle_multisig_address:
          type: string
          format: address
        external_chain_address:
          type: string
        oracles:
          type: array
          items:
            $ref: '#/components/schemas/Oracle'
    BouncePhaseType:
      type: string
      example: cskip_no_state
      enum:
      - TrPhaseBounceNegfunds
      - TrPhaseBounceNofunds
      - TrPhaseBounceOk
    AccountStorageInfo:
      type: object
      required:
      - used_cells
      - used_bits
      - used_public_cells
      - last_paid
      - due_payment
      properties:
        used_cells:
          type: integer
          format: int64
          example: 567
        used_bits:
          type: integer
          format: int64
          example: 567
        used_public_cells:
          type: integer
          format: int64
          example: 567
        last_paid:
          type: integer
          format: int64
          description: time of the last payment
          example: 1720860269
        due_payment:
          type: integer
          format: int64
          x-js-format: bigint
          example: 567
    BlockchainRawAccount:
      type: object
      required:
      - address
      - balance
      - status
      - last_transaction_lt
      - storage
      properties:
        address:
          type: string
          format: address
          example: 0:da6b1b6663a0e4d18cc8574ccd9db5296e367dd9324706f3bbd9eb1cd2caf0bf
        balance:
          type: integer
          format: int64
          x-js-format: bigint
          example: 123456789
        extra_balance:
          type: array
          items:
            $ref: '#/components/schemas/ExtraCurrency'
        code:
          type: string
          format: cell
          example: b5ee9c72410104010087000114ff00f4a413f4a0f2c80b0102012002030002d200dfa5ffff76a268698fe9ffe8e42c5267858f90e785ffe4f6aa6467c444ffb365ffc10802faf0807d014035e7a064b87d804077e7857fc10803dfd2407d014035e7a064b86467cd8903a32b9ba4410803ade68afd014035e7a045ea432b6363796103bb7b9363210c678b64b87d807d8040c249b3e4
        data:
          type: string
          format: cell
          example: b5ee9c7241010101002600004811fd096c0000000000000000000000000000000000000000000000000000000000000000cb78264d
        last_transaction_lt:
          type: integer
          format: int64
          x-js-format: bigint
          example: 123456789
        last_transaction_hash:
          type: string
          example: 088b436a846d92281734236967970612f87fbd64a2cd3573107948379e8e4161
        frozen_hash:
          type: string
          example: 088b436a846d92281734236967970612f87fbd64a2cd3573107948379e8e4161
        status:
          $ref: '#/components/schemas/AccountStatus'
        storage:
          $ref: '#/components/schemas/AccountStorageInfo'
        libraries:
          type: array
          items:
            type: object
            required:
            - public
            - root
            properties:
              public:
                type: boolean
                example: true
              root:
                type: string
                format: cell
    Method:
      type: object
      required:
      - id
      - method
      properties:
        id:
          type: integer
          format: int64
        method:
          type: string
          example: get_something
    ReducedBlock:
      type: object
      required:
      - workchain_id
      - shard
      - seqno
      - tx_quantity
      - utime
      - shards_blocks
      - parent
      properties:
        workchain_id:
          type: integer
          example: 0
          format: int32
        shard:
          type: string
          example: '8000000000000000'
        seqno:
          type: integer
          example: 21734019
          format: int32
        master_ref:
          type: string
          example: (-1,4234234,8000000000000000)
        tx_quantity:
          type: integer
          example: 130
        utime:
          type: integer
          format: int64
          example: 23814011000000
        shards_blocks:
          type: array
          items:
            type: string
            example: '[ (0,4234235,8000000000000000) ]'
        parent:
          type: array
          items:
            type: string
            example: '[ (0,21734018,8000000000000000) ]'
    Source:
      type: object
      required:
      - files
      properties:
        files:
          type: array
          items:
            $ref: '#/components/schemas/SourceFile'
    RawBlockchainConfig:
      type: object
      required:
      - config
      properties:
        config:
          type: object
          additionalProperties: true
          example: {}
    MethodExecutionResult:
      type: object
      required:
      - success
      - exit_code
      - stack
      properties:
        success:
          type: boolean
          example: true
        exit_code:
          type: integer
          example: 0
          description: tvm exit code
        stack:
          type: array
          items:
            $ref: '#/components/schemas/TvmStackRecord'
        decoded: {}
    Oracle:
      type: object
      required:
      - address
      - secp_pubkey
      properties:
        address:
          type: string
          format: address
          example: 0:55e8809519cd3c49098c9ee45afdafcea7a894a74d0f628d94a115a50e045122
        secp_pubkey:
          type: string
          example: 00000000000000000000000017dcab1b1481610f6c7a7a98cf0370dc0ec704a6
    CreditPhase:
      type: object
      required:
      - fees_collected
      - credit
      properties:
        fees_collected:
          type: integer
          format: int64
          x-js-format: bigint
          example: 100
        credit:
          type: integer
          format: int64
          x-js-format: bigint
          example: 1000
    GasLimitPrices:
      type: object
      required:
      - gas_price
      - gas_limit
      - gas_credit
      - block_gas_limit
      - freeze_due_limit
      - delete_due_limit
      properties:
        special_gas_limit:
          type: integer
          format: int64
        flat_gas_limit:
          type: integer
          format: int64
        flat_gas_price:
          type: integer
          format: int64
        gas_price:
          type: integer
          format: int64
          example: 1
        gas_limit:
          type: integer
          format: int64
          example: 1000000
        gas_credit:
          type: integer
          format: int64
          example: 1000000
        block_gas_limit:
          type: integer
          format: int64
          example: 1000000
        freeze_due_limit:
          type: integer
          format: int64
          example: 1000000
        delete_due_limit:
          type: integer
          format: int64
          example: 1000000
    ComputeSkipReason:
      type: string
      example: cskip_no_state
      enum:
      - cskip_no_state
      - cskip_bad_state
      - cskip_no_gas
      - cskip_suspended
    EcPreview:
      type: object
      required:
      - id
      - symbol
      - decimals
      - image
      properties:
        id:
          type: integer
          example: 239
          format: int32
        symbol:
          type: string
          example: FMS
        decimals:
          type: integer
          example: 5
        image:
          type: string
          example: https://cache.tonapi.io/images/extra.jpg
    SourceFile:
      type: object
      required:
      - name
      - content
      - is_entrypoint
      - is_std_lib
      - include_in_command
      properties:
        name:
          type: string
        content:
          type: string
        is_entrypoint:
          type: boolean
          example: false
        is_std_lib:
          type: boolean
          example: false
        include_in_command:
          type: boolean
          example: false
    ExecGetMethodArg:
      type: object
      required:
      - type
      - value
      properties:
        type:
          $ref: '#/components/schemas/ExecGetMethodArgType'
        value:
          type: string
          description: String representation of the value according to the specified type
          example: '0xfa01d78381ae32'
    ExecGetMethodArgType:
      type: string
      description: 'Data type of the argument value:

        - `nan`: Not-a-Number value

        - `null`: Null value

        - `tinyint`: Decimal integer (e.g., `100500`)

        - `int257`: 257-bit integer in hex format with 0x prefix (e.g., `0xfa01d78381ae32`)

        - `slice`: TON blockchain address (e.g., `0:6e731f2e...`)

        - `cell_boc_base64`: Base64-encoded cell BOC (Binary Object Code) (e.g., `te6ccgEBAQEAAgAAAA==`)

        - `slice_boc_hex`: Hex-encoded slice BOC (e.g., `b5ee9c72...`)

        '
      enum:
      - nan
      - 'null'
      - tinyint
      - int257
      - slice
      - cell_boc_base64
      - slice_boc_hex
      example: int257
    BlockchainRawAccounts:
      type: object
      required:
      - accounts
      properties:
        accounts:
          type: array
          items:
            $ref: '#/components/schemas/BlockchainRawAccount'
    NewConsensusConfig:
      type: object
      required:
      - flags
      - use_quic
      - slots_per_leader_window
      properties:
        flags:
          type: integer
          format: int
          example: 0
          x-js-format: bigint
        use_quic:
          type: boolean
          example: false
        target_rate_ms:
          type: integer
          format: int64
          example: 1000
          x-js-format: bigint
        slots_per_leader_window:
          type: integer
          format: int64
          example: 1
          x-js-format: bigint
        first_block_timeout_ms:
          type: integer
          format: int64
          example: 1000
          x-js-format: bigint
        max_leader_window_desync:
          type: integer
          format: int64
          example: 4
          x-js-format: bigint
        noncritical_params:
          type: object
          additionalProperties:
            type: integer
            format: int64
            x-js-format: bigint
    BlockchainBlockShards:
      type: object
      required:
      - shards
      properties:
        shards:
          type: array
          items:
            type: object
            required:
            - last_known_block_id
            - last_known_block
            properties:
              last_known_block_id:
                type: string
                example: (0,8000000000000000,4234234)
              last_known_block:
                $ref: '#/components/schemas/BlockchainBlock'
    Validators:
      type: object
      required:
      - validators
      - elect_at
      - elect_close
      - min_stake
      - total_stake
      properties:
        elect_at:
          type: integer
          format: int64
          example: 123456789
        elect_close:
          type: integer
          format: int64
          example: 123456789
        min_stake:
          type: integer
          format: int64
          x-js-format: bigint
          example: 123456789
        total_stake:
          type: integer
          format: int64
          x-js-format: bigint
          example: 123456789
        validators:
          type: array
          items:
            $ref: '#/components/schemas/Validator'
    Message:
      type: object
      required:
      - msg_type
      - created_lt
      - ihr_disabled
      - bounce
      - bounced
      - value
      - fwd_fee
      - ihr_fee
      - import_fee
      - created_at
      - hash
      properties:
        msg_type:
          type: string
          example: int_msg
          enum:
          - int_msg
          - ext_in_msg
          - ext_out_msg
        created_lt:
          type: integer
          format: int64
          example: 25713146000001
          x-js-format: bigint
        ihr_disabled:
          type: boolean
          example: true
        bounce:
          type: boolean
          example: true
        bounced:
          type: boolean
          example: true
        value:
          type: integer
          format: int64
          x-js-format: bigint
          example: 60000000
        value_extra:
          type: array
          items:
            $ref: '#/components/schemas/ExtraCurrency'
        fwd_fee:
          type: integer
          format: int64
          x-js-format: bigint
          example: 5681002
        ihr_fee:
          type: integer
          format: int64
          x-js-format: bigint
          example: 5681002
        destination:
          $ref: '#/components/schemas/AccountAddress'
        source:
          $ref: '#/components/schemas/AccountAddress'
        import_fee:
          type: integer
          format: int64
          x-j

# --- truncated at 32 KB (73 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/top-group/refs/heads/main/openapi/top-group-blockchain-api-openapi.yml