# Can I Send This Transaction (EVM Pre-flight Check)

> Can I Send This Transaction (EVM Pre-flight Check) is a paid API for AI agents from flat-rate-llm.kikoribera03.workers.dev, paid per call via x402, $0.02/call, status unknown (last checked 2026-11-04).

Checks whether an EVM transaction will succeed right now by returning balance, gas estimate, cost, revert status, nonce, contract detection, and chain head freshness in a single call.

## Facts

- Endpoint: GET https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/can-i-send?utm_source=zero.xyz
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-11-04
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/can-i-send-this-transaction-evm-pre-flight-check-ea552d68
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_P-Bv3P5sGyhhLm0PwyqRv

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability can-i-send-this-transaction-evm-pre-flight-check-ea552d68
```

Example prompt: Before I sign this transaction sending 0.5 ETH from 0xAbC...123 to 0xDeF...456 on Base, check if it will actually go through — tell me if I have enough balance, what the gas will cost, whether it would revert, and what nonce to use.

## When to prefer this

Use this endpoint when an agent is about to sign or broadcast an EVM transaction and needs a single authoritative go/no-go answer before committing. It replaces five separate RPC reads (eth_getBalance, eth_estimateGas, eth_call for revert, eth_getTransactionCount, eth_getCode) with one call, making it ideal for autonomous agents that need fast, consolidated pre-flight checks without managing RPC connections or API keys. Prefer it over raw RPC calls when you need all preflight data atomically and want to avoid partial state reads across multiple requests.

## Known failure modes

- Missing required 'from' or 'to' address parameters returns a 400 error
- Invalid or malformed Ethereum address causes a parse or validation error
- Unsupported chain name falls back to base or returns an error
- Node connectivity issues may cause timeout or stale chain head warnings
- Very high gas transactions may hit estimation limits
- Payment not received (402 if x402 payment not attached)

## How this service works

Use when an agent is about to sign a transaction and must decide whether it will go through right now: one call that answers canSend with the facts behind it - the sender's balance, the gas this exact transaction needs, what it will cost, whether the node says it would revert, the nonce to use if earlier ones are still in flight, whether the destination is a contract, and how stale the chain head is. Replaces five separate reads. No API key, no account.

## Output

A JSON object with a canSend boolean and supporting facts: the sender's current balance, the estimated gas units, the total cost in wei (gas cost + value), whether a static call simulation would revert (and the revert reason if so), the recommended nonce accounting for pending transactions, whether the destination address is a contract, and the age of the chain head in seconds to indicate data freshness.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "from",
      "to"
     ],
     "properties": {
      "to": {
       "type": "string",
       "description": "Destination address."
      },
      "data": {
       "type": "string",
       "description": "Optional 0x calldata."
      },
      "from": {
       "type": "string",
       "description": "The address that would sign and pay."
      },
      "chain": {
       "type": "string",
       "description": "base | ethereum | polygon | arbitrum | optimism. Defaults to base."
      },
      "value": {
       "type": "string",
       "description": "Optional native amount in wei, as a decimal string."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/can-i-send-this-transaction-evm-pre-flight-check-ea552d68/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from flat-rate-llm.kikoribera03.workers.dev](https://www.zero.xyz/host/flat-rate-llm.kikoribera03.workers.dev/llms.txt)
