---
title: "Invoke a smart contract"
method: POST
path: "/api/v1/contracts/call"
tags: ["contracts"]
---

# Invoke a smart contract

`POST /api/v1/contracts/call`

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.

## Request body

- ContractCallRequest
  - `block` string, nullable — Hexadecimal block number or the string "latest", "pending", "earliest". Defaults to "latest".
  - `data` string, binary, nullable — Hexadecimal method signature and encoded parameters. Up to 131072 bytes as at most 262146 hexadecimal digits including optional leading 0x.
  - `estimate` boolean, nullable — Whether gas estimation is called. Defaults to false.
  - `from` string, binary, nullable — The 20-byte hexadecimal EVM address the transaction is sent from.
  - `gas` integer, nullable — Gas provided for the transaction execution. Defaults to 15000000.
  - `gasPrice` integer, nullable — Gas price used for each paid gas.
  - `to` string, binary, required — The 20-byte hexadecimal EVM address the transaction is directed to.
  - `value` integer, nullable — Value sent with this transaction. Defaults to 0.

## Response `200`

OK

- ContractCallResponse
  - `result` string, binary — Result in hexadecimal from executed contract call.

## Other responses

- `400` — Validation error
- `404` — Not found error
- `415` — Unsupported media type error
- `429` — Too many requests
- `500` — Generic error
- `501` — Not implemented error

## Changes

- **2026-05-08** (v1) `e018d575a0ed` — 7 breaking
  - the request property `block` became not nullable
  - the request property `data` became not nullable
  - the request property `estimate` became not nullable
  - the request property `from` became not nullable
  - …3 more
- **2025-08-08** (v1) `db389f03b097` — 12 breaking, 7 info
  - the response property `_status/messages/items/data` became nullable for the status `400`
  - the response property `_status/messages/items/data` became nullable for the status `404`
  - the response property `_status/messages/items/data` became nullable for the status `415`
  - the response property `_status/messages/items/data` became nullable for the status `429`
  - …15 more

[Change history](https://skmtc.dev/hiero-ledger/apis/mirror-node-rest-api/changes/api/v1/contracts/call/post.md)

---

[API](https://skmtc.dev/hiero-ledger/apis/mirror-node-rest-api.md) · [All operations](https://skmtc.dev/hiero-ledger/apis/mirror-node-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/hiero-ledger/mirror-node-rest-api/revisions/ee602751b3f7/schema)
