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

# FAQ

> Common questions about Shield API.

export const date_0 = "2026-04-07"

### What chains does Shield support?

Shield supports the same chains as the Enso API. See the [Supported Networks](/pages/build/reference/supported-networks) page for the full list.

***

### How long are simulations cached?

Simulations are cached for **5 minutes**. After that, the `simulationId` expires and validation will return a `404` error. Re-simulate to get a fresh ID.

***

### Can I simulate transactions from other APIs?

Yes. Shield is source-agnostic — you can simulate any valid EVM transaction regardless of where the calldata came from. See the [Third-Party Transactions guide](/pages/shield/guides/third-party-transactions) for examples with custom contracts and more.

***

### Does Shield modify my transaction?

No. Shield only simulates and validates. The transaction you submit on-chain is exactly what you built. Shield never alters your calldata, target address, or value.

***

### What authentication does Shield use?

The same Enso API key used for the main Enso API. Pass it as a `Bearer` token in the `Authorization` header or as an `api_key` query parameter. See the [Authentication guide](/pages/build/get-started/authentication).

***

### What is the base URL?

```
https://shield.api.enso.build
```

***

### How is the `data` field validated?

The calldata is compared by hash, not raw byte comparison. This means any modification to the `data` field — even a single byte — will cause the `data` check to fail during validation.

***

### Can I simulate delegate calls?

Yes. Set `operationType: 1` in the `transaction` object to simulate a DelegateCall. This is useful for smart account and ERC-4337 scenarios. The default (`0`) is a standard Call.

***

### What are `preSimulationTransactions`?

Optional setup transactions that execute before the main simulation. Common uses include:

* **Token approvals** — Approve a contract to spend tokens before simulating a deposit
* **State setup** — Set up any on-chain state your main transaction depends on

See the [Simulate guide](/pages/shield/guides/simulate) for examples.

***

### How accurate is the gas estimate?

The gas estimate comes from actual EVM execution on a forked state, so it is highly accurate at the time of simulation. However, gas consumption can change if on-chain state changes between simulation and execution (e.g., storage slot modifications by other transactions).

<div className="text-right text-xs gray-200 font-semibold w-full" style={{marginTop: '0'}}>
  <p style={{
        color: "#b2b2b2"  
    }}>Updated {date_0}</p>
</div>
