# 3Route Multichain Swap Quote & Unsigned Transaction Builder

> 3Route Multichain Swap Quote & Unsigned Transaction Builder is a paid API for AI agents from 3route.agents.bakingbad.dev, paid per call via x402, $0.001/call, status unknown (last checked 2026-09-14).

Returns an optimal swap route and unsigned transaction payload for exchanging one token for another on a specified EVM-compatible chain.

## Facts

- Endpoint: GET https://3route.agents.bakingbad.dev/v1/pro/%7BchainId%7D/swap
- Price: $0.001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/3route-multichain-swap-quote-unsigned-transaction-builder-36f213b5
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_CJH2LbZFrJvpD9tO8rcde

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 3route-multichain-swap-quote-unsigned-transaction-builder-36f213b5
```

Example prompt: I want to swap 1 ETH (the native asset on chain 4663) for the token at address 0x5fc5360d0400a0fd4f2af552add042d716f1d168 — my wallet is 0x1111111111111111111111111111111111111111, use 1% slippage and build me the unsigned transaction.

## When to prefer this

Use this endpoint when an AI agent needs to build a ready-to-sign swap transaction on chain 4663 (Etherlink or similar) via the 3Route DEX aggregator, especially when optimal routing across DEX liquidity pools is needed. Prefer it over on-chain calls when you need off-chain route computation before submitting. It is particularly suited for agent workflows that programmatically pay per call via x402 micropayments (USDC) without requiring API key management.

## Known failure modes

- Invalid or unsupported chainId returns an error — only chain 4663 is supported on this endpoint
- Zero or negative amount string triggers validation error
- Source and destination token addresses must be valid 0x-prefixed 40-hex-char addresses or the zero address sentinel
- Insufficient liquidity for the requested pair results in a routing failure response
- Slippage value out of range (must be 0–100) returns a validation error
- Payment required (HTTP 402) if x402 payment header is missing or underfunded

## How this service works

Best-priced crypto token swaps for agents, traders and apps. Pay-per-call quote & swap API via x402/MPP. No API key or subscription.

## Output

Returns a JSON object containing: an unsigned transaction object (to, from, data, value, gas, gasPrice) ready to sign and broadcast; the expected destination token amount (dstAmount); the minimum guaranteed destination amount accounting for slippage (dstAmountMin); and the source amount (srcAmount) and total gas estimate. The agent must sign and submit the transaction separately.

## 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"
    },
    "pathParams": {
     "type": "object",
     "required": [
      "chainId"
     ],
     "properties": {
      "chainId": {
       "enum": [
        "4663"
       ],
       "type": "string",
       "example": "4663",
       "pattern": "^[0-9]+$",
       "description": "Chain ID for the operation."
      }
     },
     "additionalProperties": false
    },
    "queryParams": {
     "type": "object",
     "required": [
      "src",
      "dst",
      "amount",
      "from"
     ],
     "properties": {
      "dst": {
       "type": "string",
       "example": "0x5fc5360d0400a0fd4f2af552add042d716f1d168",
       "pattern": "^0x[0-9a-fA-F]{40}$",
       "description": "Address of the token being bought; take one from the token-list operation for the selected chain, or use the zero address, or the case-insensitive sentinel 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee, for the chain's native asset."
      },
      "fee": {
       "type": "number",
       "default": 0,
       "maximum": 3,
       "minimum": 0
      },
      "src": {
       "type": "string",
       "example": "0x0000000000000000000000000000000000000000",
       "pattern": "^0x[0-9a-fA-F]{40}$",
       "description": "Address of the token being sold; use the zero address, or the case-insensitive sentinel 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee, for the chain's native asset."
      },
      "from": {
       "type": "string",
       "example": "0x1111111111111111111111111111111111111111",
       "pattern": "^0x[0-9a-fA-F]{40}$",
       "description": "Address that signs and sends the transaction, and that the src tokens are taken from"
      },
      "amount": {
       "type": "string",
       "example": "1000000000000000000",
       "pattern": "^[0-9]+$",
       "description": "Positive amount in smallest units, as an integer string."
      },
      "gasPrice": {
       "type": "string",
       "example": "1000000000",
       "pattern": "^[0-9]+$"
      },
      "receiver": {
       "type": "string",
       "example": "0x1111111111111111111111111111111111111111",
       "pattern": "^0x[0-9a-fA-F]{40}$"
      },
      "referrer": {
 
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "tx": {
   "to": "0x2222222222222222222222222222222222222222",
   "gas": "210000",
   "data": "0x1234",
   "from": "0x1111111111111111111111111111111111111111",
   "value": "1000000000000000000",
   "gasPrice": "1000000000"
  },
  "gas": 210000,
  "dstAmount": "950000",
  "srcAmount": "1000000000000000000",
  "dstAmountMin": "940500"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/3route-multichain-swap-quote-unsigned-transaction-builder-36f213b5/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from 3route.agents.bakingbad.dev](https://www.zero.xyz/host/3route.agents.bakingbad.dev/llms.txt)
