> ## Documentation Index
> Fetch the complete documentation index at: https://hedera-0c6e0218-automation-consensus-node-release-notes.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Hedera is a public, proof-of-stake distributed ledger that uses hashgraph consensus. Do not call it a blockchain.
> Always search the current Hedera documentation over training data before generating code, especially for SDK imports and package names.
> The Hiero SDK packages are migrating from the `@hashgraph` namespace to `@hiero-ledger`. Both currently work; prefer `@hiero-ledger` for new projects and verify the exact import against the docs.
> Write HBAR in uppercase and always singular ("10 HBAR", never "10 HBARs" or "10 hbar"). Write tinybars in lowercase and plural.
> Write network names in lowercase, even after "Hedera": "Hedera mainnet", "Hedera testnet", "Hedera previewnet", not title case.
> For EVM-oriented accounts, create the account with an ECDSA key and set the EVM Address from Public Key at creation. This address is immutable and is not updated by key rotation. Do not use retired terms like "EVM alias" or "Account Number Alias".

# Invoke a smart contract

> Returns a result from EVM execution such as cost-free execution of read-only smart contract queries, gas estimation, and transient simulation of read-write operations. If the `estimate` field is set to true gas estimation is executed. This API can process calls against the `latest` block or specific historical blocks when a hexadecimal or decimal block number is provided in the `block` field.



## OpenAPI

````yaml /openapi.yaml post /api/v1/contracts/call
openapi: 3.0.3
info:
  title: Mirror Node REST API
  version: 0.154.0
  license:
    name: Apache-2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  description: >-
    The REST API offers the ability to query transactions and entity information
    from a mirror node.


    Base url: [/api/v1](/api/v1)


    OpenAPI Spec: [/api/v1/docs/openapi.yml](/api/v1/docs/openapi.yml)
  contact:
    name: Mirror Node Team
    email: mirrornode@hedera.com
    url: https://github.com/hiero-ledger/hiero-mirror-node
servers:
  - description: Hedera Mainnet Mirror Node
    url: https://mainnet.mirrornode.hedera.com
  - description: The production REST API servers
    url: '{scheme}://{network}.mirrornode.hedera.com'
    variables:
      scheme:
        default: https
        description: The URI scheme
        enum:
          - http
          - https
      network:
        default: testnet
        description: The Hedera network in use
        enum:
          - mainnet-public
          - mainnet
          - previewnet
          - testnet
security: []
tags:
  - name: accounts
    description: >-
      The accounts object represents the information associated with an account
      entity and returns a list of account information.The accounts list
      endpoint is cached and not updated as frequently as the account lookup by
      a specific ID endpoint.
    externalDocs:
      url: >-
        https://docs.hedera.com/guides/docs/mirror-node-api/cryptocurrency-api#accounts
  - name: balances
    description: >-
      The balance object represents the balance of accounts on the Hedera
      network.
    externalDocs:
      url: >-
        https://docs.hedera.com/guides/docs/mirror-node-api/cryptocurrency-api#balances
  - name: contracts
    description: >-
      The contracts objects represents the information associated with contract
      entities.The contracts list endpoint is cached and not updated as
      frequently as the contract lookup by a specific ID endpoint.
  - name: schedules
    description: >-
      The schedules object represents the information associated with a schedule
      entity.The schedules list endpoints is cached and not updated as
      frequently as the schedule lookup by a specific ID endpoint.
  - name: transactions
    description: >-
      The transaction object represents the transactions processed on the Hedera
      network.
    externalDocs:
      url: >-
        https://docs.hedera.com/guides/docs/mirror-node-api/cryptocurrency-api#transactions
  - name: topics
    description: >-
      The topics object represents the information associated with a topic
      entity and returns topic messages information.
    externalDocs:
      url: >-
        https://docs.hedera.com/guides/docs/mirror-node-api/cryptocurrency-api#topic-messages
  - name: tokens
    description: >-
      The tokens object represents the information associated with a token
      entity and returns a list of token information.The tokens list endpoint is
      cached and not updated as frequently as the token lookup by a specific ID.
externalDocs:
  description: REST API Docs
  url: https://docs.hedera.com/guides/docs/mirror-node-api/cryptocurrency-api
paths:
  /api/v1/contracts/call:
    post:
      tags:
        - contracts
      summary: Invoke a smart contract
      description: >-
        Returns a result from EVM execution such as cost-free execution of
        read-only smart contract queries, gas estimation, and transient
        simulation of read-write operations. If the `estimate` field is set to
        true gas estimation is executed. This API can process calls against the
        `latest` block or specific historical blocks when a hexadecimal or
        decimal block number is provided in the `block` field.
      operationId: contractCall
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ContractCallRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContractCallResponse'
        '400':
          description: Validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Not found error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '415':
          description: Unsupported media type error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Too many requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Generic error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: Not implemented error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    ContractCallRequest:
      type: object
      properties:
        block:
          description: >-
            Hexadecimal block number or the string "latest", "pending",
            "earliest". Defaults to "latest".
          example: latest
          nullable: true
          pattern: ^((0x)?[0-9a-fA-F]+|(earliest|pending|latest))$
          type: string
        data:
          description: >-
            Hexadecimal method signature and encoded parameters. Up to 131072
            bytes as at most 262146 hexadecimal digits including optional
            leading 0x.
          example: '0x47f1aae7'
          format: binary
          maxLength: 262146
          nullable: true
          pattern: ^(0x)?[0-9a-fA-F]+$
          type: string
        estimate:
          description: Whether gas estimation is called. Defaults to false.
          example: true
          nullable: true
          type: boolean
        from:
          description: The 20-byte hexadecimal EVM address the transaction is sent from.
          example: '00000000000000000000000000000000000004e2'
          format: binary
          maxLength: 42
          minLength: 40
          nullable: true
          pattern: ^(0x)?[A-Fa-f0-9]{40}$
          type: string
        gas:
          description: Gas provided for the transaction execution. Defaults to 15000000.
          example: 15000000
          format: int64
          minimum: 0
          nullable: true
          type: integer
        gasPrice:
          description: Gas price used for each paid gas.
          example: 100000000
          format: int64
          minimum: 0
          nullable: true
          type: integer
        to:
          description: The 20-byte hexadecimal EVM address the transaction is directed to.
          example: '0xd9d0c5c0ff85758bdf05a7636f8036d4d065f5b6'
          format: binary
          maxLength: 42
          minLength: 40
          nullable: false
          pattern: ^(0x)?[A-Fa-f0-9]{40}$
          type: string
        value:
          description: Value sent with this transaction. Defaults to 0.
          example: 0
          format: int64
          minimum: 0
          nullable: true
          type: integer
      required:
        - to
    ContractCallResponse:
      type: object
      properties:
        result:
          description: Result in hexadecimal from executed contract call.
          example: '0x0000000000006d8d'
          format: binary
          nullable: false
          pattern: ^0x[0-9a-fA-F]+$
          type: string
    Error:
      type: object
      properties:
        _status:
          type: object
          properties:
            messages:
              type: array
              items:
                type: object
                properties:
                  data:
                    description: Error message in hexadecimal
                    example: '0x3000'
                    format: binary
                    nullable: true
                    pattern: ^0x[0-9a-fA-F]+$
                    type: string
                  detail:
                    description: Detailed error message
                    example: Generic detailed error message
                    nullable: true
                    type: string
                  message:
                    description: Error message
                    example: Generic error message
                    nullable: false
                    type: string

````