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

# Estimate Fee

> Estimate fee for query



## OpenAPI

````yaml POST /api/v2/estimateFee
openapi: 3.1.1
info:
  title: TON HTTP API C++
  description: >
    This API enables HTTP access to TON blockchain - getting accounts and
    wallets information, looking up blocks and transactions, sending messages to
    the blockchain, calling get methods of smart contracts, and more.


    In addition to REST API, all methods are available through [JSON-RPC
    endpoint](#json%20rpc)  with `method` equal to method name and `params`
    passed as a dictionary.


    The response contains a JSON object, which always has a boolean field `ok`
    and either `error` or `result`. If `ok` equals true, the request was
    successful and the result of the query can be found in the `result` field.
    In case of an unsuccessful request, `ok` equals false and the error is
    explained in the `error`.


    API Key should be sent either as `api_key` query parameter or `X-API-Key`
    header
  version: 2.1.1
servers:
  - url: https://toncenter.com
    description: Mainnet
  - url: https://testnet.toncenter.com
    description: Testnet
security: []
tags:
  - name: utils
    description: Some useful methods
  - name: accounts
    description: Information about accounts
  - name: blocks
    description: Information about blocks
  - name: transactions
    description: Fetching and locating transactions
  - name: configuration
    description: Information about blockchain config
  - name: run method
    description: Run get-method of smart contracts
  - name: send
    description: Send data to blockchain
  - name: rpc
    description: JSON-RPC and POST endpoints
paths:
  /api/v2/estimateFee:
    post:
      tags:
        - send
        - rpc
      summary: Estimate Fee
      description: Estimate fee for query
      operationId: estimateFee_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EstimateFeeRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                    example: true
                  result:
                    title: QueryFees
                    allOf:
                      - $ref: '#/components/schemas/QueryFees'
                required:
                  - ok
                  - result
        default:
          $ref: '#/components/responses/default'
components:
  schemas:
    EstimateFeeRequest:
      type: object
      additionalProperties: false
      required:
        - address
        - body
      properties:
        address:
          $ref: '#/components/schemas/TonAddr'
        body:
          $ref: '#/components/schemas/Bytes'
        init_code:
          $ref: '#/components/schemas/Bytes'
        init_data:
          $ref: '#/components/schemas/Bytes'
        ignore_chksig:
          type: boolean
          default: true
    QueryFees:
      type: object
      additionalProperties: false
      required:
        - '@type'
        - source_fees
        - destination_fees
      properties:
        '@type':
          type: string
          enum:
            - query.fees
          default: query.fees
        source_fees:
          $ref: '#/components/schemas/Fees'
        destination_fees:
          type: array
          items:
            $ref: '#/components/schemas/Fees'
    TonAddr:
      type: string
      x-usrv-cpp-type: ton_http::types::ton_addr
    Bytes:
      type: string
      x-usrv-cpp-type: ton_http::types::bytes
    Fees:
      type: object
      additionalProperties: false
      required:
        - '@type'
        - in_fwd_fee
        - storage_fee
        - gas_fee
        - fwd_fee
      properties:
        '@type':
          type: string
          enum:
            - fees
          default: fees
        in_fwd_fee:
          type: integer
          format: int64
        storage_fee:
          type: integer
          format: int64
        gas_fee:
          type: integer
          format: int64
        fwd_fee:
          type: integer
          format: int64
    TonlibErrorResponse:
      type: object
      additionalProperties: false
      title: TonlibErrorResponse
      required:
        - ok
        - error
        - code
      properties:
        ok:
          type: boolean
          title: Ok
          default: false
        error:
          type: string
          title: Error description
        code:
          type: integer
          title: Error code
          minimum: 100
          maximum: 600
        '@extra':
          type: string
          title: Extra information
        jsonrpc:
          type: string
        id:
          type: string
  responses:
    default:
      description: Tonlib error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TonlibErrorResponse'
          examples:
            '409':
              summary: Not a token
              value:
                ok: false
                code: 409
                error: Smart contract is not a Jetton or NFT
                '@extra': ...
            '422':
              summary: Request validation error
              value:
                ok: false
                code: 422
                error: ...
                '@extra': ...
            '429':
              summary: Ratelimit exceeded
              value:
                ok: false
                code: 429
                error: ...
                '@extra': ...
            '504':
              summary: Tonlib timeout
              value:
                ok: false
                code: 504
                error: ...
                '@extra': ...

````