# agent402.tools EIP-3009 Transfer Authorization Builder

> agent402.tools EIP-3009 Transfer Authorization Builder is a paid API for AI agents from agent402.tools, paid per call via x402, $0.003/call, status unknown (last checked 2026-09-14).

Constructs the EIP-712 typed data payload for an EIP-3009 transferWithAuthorization gasless USDC transfer, ready for an agent to sign with its own key for x402 payments on EVM chains.

## Facts

- Endpoint: POST https://agent402.tools/api/transfer-authorization
- Price: $0.003/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/agent402-tools-eip-3009-transfer-authorization-builder-b65a8c7d
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_nJP_SfJfSZIT60thqXegi

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 agent402-tools-eip-3009-transfer-authorization-builder-b65a8c7d -d '<json body>'
```

Example prompt: Build the EIP-3009 transferWithAuthorization typed data so I can sign a gasless USDC transfer of 0.05 USDC from my wallet 0xAbC...123 to 0xDeF...456 on Base, valid for 1800 seconds.

## When to prefer this

Use this endpoint when an AI agent needs to autonomously authorize a gasless USDC payment using the x402 protocol on Base, Polygon, Arbitrum, Optimism, or Ethereum — specifically when you need the EIP-712 typed data structure for EIP-3009 transferWithAuthorization. Prefer this over manual construction to avoid encoding errors in domain separators or nonce derivation. Not needed if you are executing a standard on-chain USDC transfer with gas or using a different token.

## Known failure modes

- Invalid Ethereum address format for 'from' or 'to' — returns 400 with address validation error
- Unsupported network value — returns 400 listing valid chain options
- Amount out of range or non-numeric — returns 400 with schema error
- Service unavailable or timeout fetching on-chain nonce — returns 502 or 503
- Missing required fields (from, to, amount) — returns 400 with field-level error detail

## How this service works

Build the EIP-3009 transferWithAuthorization typed data for a gasless USDC transfer on Base/Polygon/Arbitrum/Optimism/Ethereum/Monad/Celo/Avalanche/Sei - the exact EIP-712 object an agent signs with its OWN key to authorize an x402 payment. We construct it; we never sign or send. Non-custodial.

## Output

Returns a fully constructed EIP-712 typed data object containing the domain separator (contract address, chain ID, USDC token details), the EIP-3009 message struct (from, to, value, validAfter, validBefore, nonce), and all fields required for the agent to call eth_signTypedData_v4 and produce a valid signature for a gasless USDC transfer. The service constructs but never signs.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "to": {
   "type": "string",
   "description": "recipient address"
  },
  "from": {
   "type": "string",
   "description": "payer address (the wallet that will sign)"
  },
  "amount": {
   "type": "number",
   "description": "USDC amount (e.g. 0.01)"
  },
  "network": {
   "type": "string",
   "description": "chain: base | polygon | arbitrum | optimism | ethereum | monad | celo | avalanche | sei | robinhood (default base)"
  },
  "validForSeconds": {
   "type": "number",
   "description": "how long the authorization is valid (default 3600)"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "network": "base",
  "typedData": {
   "domain": {
    "name": "USD Coin",
    "chainId": 8453,
    "version": "2",
    "verifyingContract": "0x833589f…"
   },
   "message": {},
   "primaryType": "TransferWithAuthorization"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agent402-tools-eip-3009-transfer-authorization-builder-b65a8c7d/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agent402.tools](https://www.zero.xyz/host/agent402.tools/llms.txt)
