# MachineMint Base Transaction Preflight & Approval Risk Checker

> MachineMint Base Transaction Preflight & Approval Risk Checker is a paid API for AI agents from machinemint-api-production.up.railway.app, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-15).

Simulates and risk-scores an unsigned Base mainnet transaction before signing, flagging gas issues, balance problems, unlimited token approvals, and suspicious patterns with a deterministic PASS/REVIEW/FAIL verdict.

## Facts

- Endpoint: POST https://machinemint-api-production.up.railway.app/x402/base-preflight
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/machinemint-base-transaction-preflight-approval-risk-checker-17b75607
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_WJniKuoQakfAWGtbvJdiU

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 machinemint-base-transaction-preflight-approval-risk-checker-17b75607 -d '<json body>'
```

Example prompt: Before I sign this transaction, run a preflight check on it — simulate it on Base mainnet, estimate the gas, confirm my wallet balance covers it, and flag anything suspicious like unlimited token approvals or weird contract interactions.

## When to prefer this

Choose this endpoint when you need a lightweight, read-only pre-signing risk assessment for Base mainnet transactions — especially when checking for unlimited ERC-20 approvals, validating gas and balance before broadcasting, or screening untrusted transaction payloads. Prefer this over generic RPC calls because it bundles simulation, balance check, bytecode check, approval decoding, and risk scoring into a single deterministic verdict without ever signing or broadcasting.

## Known failure modes

- Invalid or malformed transaction payload returns an error
- Sender address not found or zero balance may trigger FAIL verdict
- Unsupported token standards may not be decoded but simulation still runs
- Network connectivity issues to Base RPC may cause timeout
- Missing required fields in the request body returns a validation error
- Ambiguous or complex contract interactions may return REVIEW with limited decoding

## How this service works

Check an unsigned Base mainnet transaction before signing or broadcasting. Simulates with eth_call, estimates gas, checks sender balance and target bytecode, decodes supported token transfers and approvals, flags unlimited approvals and other suspicious transaction shapes, and returns deterministic PASS/REVIEW/FAIL. Never signs or broadcasts. Paid machine endpoint: 0.01 USDC-equivalent per call via x402 on Base.

## Output

Returns a deterministic verdict of PASS, REVIEW, or FAIL along with: simulated execution result via eth_call, gas estimate, sender balance check, target address bytecode presence check, decoded token transfer or approval details (if applicable), and specific flags for unlimited approvals or other suspicious transaction shapes.

## 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",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "properties": {}
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    },
    "pathParams": {
     "type": "object"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "data": {
       "type": "object"
      },
      "status": {
       "type": "string"
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "data": {},
  "status": "ok"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/machinemint-base-transaction-preflight-approval-risk-checker-17b75607/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from machinemint-api-production.up.railway.app](https://www.zero.xyz/host/machinemint-api-production.up.railway.app/llms.txt)
