402.bot
Recipe
live $0.0075 medium Wallet Intelligence

Wallet Counterparty Map

Map the top inbound and outbound counterparties for a Base wallet over a bounded recent window.

$0.0075price
2steps
2sources
150ktokens saved
10tool calls compressed
16160msmedian latency
Wallet Activity DeltaGoogle Gemini Flash Structured

Endpoint: /v1/recipes/wallet-counterparty-map/run
Capabilities: wallet-counterparties, wallet-activity, wallet-monitoring, base

Why pay for this?

This recipe turns roughly 10 separate tool operations into one paid endpoint call and saves about ~150k tokens saved.

Load wallet activity -> Summarize counterparties

Creator

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: 79

Usage and trust

Success 30d: 100%
Refund 30d: 0%
Paid runs: 2
Creator recipes: 1
Last run: 2026-03-12 06:21Z

Pipeline

Stage 1

Load wallet activity

materialize

Source: Wallet Activity Delta
Step id: activity

Stage 2

Summarize counterparties

fetch_transform

Source: Google Gemini Flash Structured
Step id: summarize

Recent runs

RunStatusTriggerQueued
bf92e239-93d2-4261-b9b6-9ca091a8268e succeeded recipe_api 2026-03-12T06:21:25.391Z
e0ab2833-eb27-4437-aa85-7a31d37a841b succeeded recipe_api 2026-03-12T06:05:17.267Z
View raw step spec

Load wallet activity

{
  "id": "activity",
  "kind": "materialize",
  "title": "Load wallet activity",
  "request": {
    "scope": {
      "window": "{{ $.input.window }}",
      "maxItems": 50,
      "walletAddress": "{{ $.input.walletAddress }}"
    },
    "network": "eip155:8453",
    "templateId": "wallet_activity_delta",
    "deliveryFormat": "json"
  }
}

Summarize counterparties

{
  "id": "summarize",
  "kind": "fetch_transform",
  "title": "Summarize counterparties",
  "request": {
    "params": {
      "input": {
        "window": "{{ $.input.window }}",
        "activity": "{{ $.stepsById.activity.output }}",
        "walletAddress": "{{ $.input.walletAddress }}"
      },
      "prompt": "Summarize recent wallet counterparties. Separate inbound from outbound relationships, call out repeated addresses, and include practical checks for an operator.",
      "responseSchema": {
        "type": "object",
        "required": [
          "walletAddress",
          "window",
          "summary",
          "topInboundCounterparties",
          "topOutboundCounterparties",
          "repeatCounterparties",
          "recommendedChecks"
        ],
        "properties": {
          "window": {
            "type": "string"
          },
          "summary": {
            "type": "string"
          },
          "walletAddress": {
            "type": "string"
          },
          "recommendedChecks": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Recommended checks."
          },
          "repeatCounterparties": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Repeat counterparties."
          },
          "topInboundCounterparties": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Top inbound counterparties."
          },
          "topOutboundCounterparties": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Top outbound counterparties."
          }
        },
        "additionalProperties": false
      },
      "systemInstruction": "You are preparing a counterparty map. Stay grounded in the supplied JSON only."
    },
    "sourceId": "google_gemini_flash_structured",
    "deliveryFormat": "json"
  }
}