# eth\_estimateGas

{% hint style="info" %}
The transaction will not be added to the blockchain. Note that the estimate may be significantly more than the amount of gas actually used by the transaction, for a variety of reasons including EVM mechanics and node performance.
{% endhint %}

{% hint style="info" %}
**Deviation from Etherum in estimateGas**

1Money Network does not have a flexible gas fee concept. However in order to make this endpoint EVM, the estimated gas is calculated as the total fixed gas fee divided by the gas price. E.g. total fixed gas fee is 1 USD1 (1Money network native token), we define gas price as wei = 1\*10^-18 USD1, then the estimateGas is 10^18, which is 1 USD1 divided by its gas price 10^-18 USD1
{% endhint %}

### Parameters

`TRANSACTION CALL OBJECT` \[*<mark style="color:red;">Required</mark>*]

* `from`: \[optional] 20 Bytes - The address the transaction is sent from.
* `to`\[<mark style="color:red;">required</mark>] : 20 Bytes - The address the transaction is directed to.
* `gas`: \[optional] Hexadecimal value of the gas provided for the transaction execution. eth\_estimateGas consumes zero gas, but this parameter may be needed by some executions.
* `gasPrice`: \[optional] Hexadecimal value of the gas price used for each paid gas.
* `value`: \[optional] Hexadecimal value of the value sent with this transaction.
* `data`: \[optional] Hash of the method signature and encoded parameters. See the Ethereum contract ABI specification.
* `block parameter`: \[<mark style="color:red;">required</mark>] A string representing a block number, or one of the string tags latest, earliest, pending, safe, or finalized. See the default block parameter.

If no gas limit is specified, geth uses the block gas limit from the pending block as an upper bound. As a result the returned estimate might not be enough to executed the call/transaction when the amount of gas is higher than the pending block gas limit.

***

### Returns

Returns an estimation of gas for a given transaction.

***

### Example

#### Request

```sh
curl -X POST https://testnet.1money.network \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc": "2.0", "method": "eth_estimateGas", "params": [{"from": "0x88E564c7d09f88E7d8233Cdd3A4d7AC42aBFf3aa", "to": "0x666e8dd67c5d32be8058bb8eb970870f072445cb", "value": "0x82763ac1"}], "id": 1}'
```

#### Response

```sh
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": "0x5208"
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developer.1moneynetwork.com/integrations/evm-compatible-rpcs-wip/eth_estimategas.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
