Why pay for this?
This recipe turns roughly 3 separate tool operations into one paid endpoint call and saves about ~7k tokens saved.
Compares external route candidates against a live Uniswap quote and returns a compact swap-routing brief.
Compare 402.bot route candidates against a live Uniswap quote and return a compact swap-routing brief.
Endpoint: /v1/recipes/swap-route-slippage-brief/run
Capabilities: trading, swap-routing, slippage, venue-selection
This recipe turns roughly 3 separate tool operations into one paid endpoint call and saves about ~7k tokens saved.
Compares external route candidates against a live Uniswap quote and returns a compact swap-routing brief.
Name: 402.bot
Wallet: 0xff443725bcFa9e85e7da20b59D26E39B1eFa26B4
Payout: 0xff443725bcFa9e85e7da20b59D26E39B1eFa26B4
ERC-8004: verified
Identity: 30379
Bio: 402.bot managed workflow marketplace recipes.
ERC-8004 reputation: 0.0
Creator score: 21
Success 30d: 0%
Refund 30d: 0%
Paid runs: 0
Creator recipes: 1
Last run: No recent runs
Source: Route Capability Candidates
Step id: routes
Source: Uniswap Swap Quote
Step id: quote
Source: Uniswap Token Liquidity
Step id: liquidity
Source: Messari Asset Details
Step id: asset
Source: Google Gemini Flash Structured
Step id: summarize
| Run | Status | Trigger | Queued |
|---|---|---|---|
| No recent runs recorded yet. Runs appear here after the first paid execution. | |||
{
"id": "routes",
"kind": "fetch_transform",
"title": "Load swap route candidates",
"request": {
"params": {
"limit": 5,
"network": "base",
"strategy": "{{ $.input.strategy }}",
"capability": "swap"
},
"sourceId": "route_capability_candidates",
"deliveryFormat": "json"
}
}
{
"id": "quote",
"kind": "fetch_transform",
"title": "Quote the swap",
"request": {
"params": {
"amount": "{{ $.input.amountUsd }}",
"chainId": "{{ $.input.chainId }}",
"exactSide": "input",
"slippageBps": "{{ $.input.slippageBps }}",
"tokenInAddress": "0x833589fCD6EDB6E08f4c7C32D4f71b54bdA02913",
"tokenOutAddress": "{{ $.input.tokenOutAddress }}"
},
"sourceId": "uniswap_swap_quote",
"deliveryFormat": "json"
}
}
{
"id": "liquidity",
"kind": "fetch_transform",
"title": "Inspect token liquidity",
"request": {
"params": {
"chainId": "{{ $.input.chainId }}",
"topPools": 3,
"tokenAddresses": [
"{{ $.input.tokenOutAddress }}"
]
},
"sourceId": "uniswap_token_liquidity",
"deliveryFormat": "json"
}
}
{
"id": "asset",
"kind": "fetch_transform",
"title": "Load asset details",
"request": {
"params": {
"assetId": "{{ $.input.tokenOutAssetSlug }}"
},
"sourceId": "messari_asset_details",
"deliveryFormat": "json"
}
}
{
"id": "summarize",
"kind": "fetch_transform",
"title": "Build swap route slippage brief",
"request": {
"params": {
"input": {
"asset": "{{ $.stepsById.asset.output }}",
"quote": "{{ $.stepsById.quote.output }}",
"routes": "{{ $.stepsById.routes.output }}",
"chainId": "{{ $.input.chainId }}",
"strategy": "{{ $.input.strategy }}",
"amountUsd": "{{ $.input.amountUsd }}",
"liquidity": "{{ $.stepsById.liquidity.output }}",
"tokenOutAddress": "{{ $.input.tokenOutAddress }}",
"tokenOutAssetSlug": "{{ $.input.tokenOutAssetSlug }}"
},
"prompt": "Build a swap route slippage brief. Focus on the preferred venue, the route candidates, the Uniswap quote, slippage notes, execution steps, and concrete next actions.",
"responseSchema": {
"type": "object",
"required": [
"chainId",
"tokenOutAddress",
"tokenOutAssetSlug",
"preferredVenue",
"summary",
"routeCandidates",
"uniswapQuote",
"slippageNotes",
"executionSteps",
"nextActions"
],
"properties": {
"chainId": {
"type": "integer"
},
"summary": {
"type": "string"
},
"nextActions": {
"type": "array",
"items": {
"type": "string"
},
"description": "Suggested next actions."
},
"uniswapQuote": {
"type": "object",
"required": [
"tokenInSymbol",
"tokenOutSymbol",
"amountIn",
"amountOut",
"priceImpactBps",
"routeHops"
],
"properties": {
"amountIn": {
"type": "string"
},
"amountOut": {
"type": "string"
},
"routeHops": {
"type": "array",
"items": {
"type": "string"
}
},
"tokenInSymbol": {
"type": "string"
},
"priceImpactBps": {
"type": "number"
},
"tokenOutSymbol": {
"type": "string"
}
},
"description": "Reference Uniswap quote.",
"additionalProperties": false
},
"slippageNotes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Slippage notes that matter for execution."
},
"executionSteps": {
"type": "array",
"items": {
"type": "object",
"required": [
"step",
"tool",
"note"
],
"properties": {
"note": {
"type": "string"
},
"step": {
"type": "string"
},
"tool": {
"enum": [
"uniswap",
"bankr",
"manual"
],
"type": "string"
}
},
"additionalProperties": false
},
"description": "Suggested execution steps."
},
"preferredVenue": {
"enum": [
"uniswap",
"external_route",
"manual"
],
"type": "string"
},
"routeCandidates": {
"type": "array",
"items": {
"type": "object",
"required": [
"endpointId",
"resource",
"priceUsdc",
"score"
],
"properties": {
"score": {
"type": "number"
},
"resource": {
"type": "string"
},
"priceUsdc": {
"type": "number"
},
"endpointId": {
"type": "string"
}
},
"additionalProperties": false
}
},
"tokenOutAddress": {
"type": "string"
},
"tokenOutAssetSlug": {
"type": "string"
}
},
"additionalProperties": false
},
"systemInstruction": "You are compressing swap venue selection into a bounded operator packet. Stay grounded in the supplied route shortlist, asset context, liquidity, and quote."
},
"sourceId": "google_gemini_flash_structured",
"deliveryFormat": "json"
}
}