FETCH402
← Protocol index

Resource / 956

healthy

Vibe Springs.

Complete DeFi portfolio snapshot for any wallet address in one call. Aggregates wallet balance and token holdings (Viem + Blockscout), on-chain risk score and flags, top USDC DeFi yields available on the chain (DefiLlama), and current gas prices — all fetched in parallel. Ideal for DeFi agents, portfolio trackers, and risk-aware execution engines.

Eligibility
probeable
Failures
0
Last quote
2026-08-13 05:45:03 UTC
Last probe
2026-08-13 05:45:03 UTC
Payment requirements / accepts[] 1 options
State Network Scheme Atomic amount Asset payTo / untrusted
active eip155:8453 exact 100000 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 0x38C063312719220c676E988f0DEE14B4ec0e44C8

All advertised payment options are stored. Base (`eip155:8453`) is the operational network for ranking and canaries; non-Base options remain visible for transparency.

Probe evidence 1 recent
healthy 2026-08-13 05:45:03 UTC GET · HTTP 402 · 394ms · accepts 1 · base 1 ok
Request
GET https://vibesprings.net/api/portfolio-brief
Robots
allow
Note
http_402;accepts=1;base=1
Accepts fingerprint
448de901b6a4d91389643d7c367a49172dd15ca214afd20d60bfd9c630e9b046

Accepts snapshot

[
  {
    "amount": "100000",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "assetTransferMethod": null,
    "extra": {
      "name": "USD Coin",
      "version": "2"
    },
    "maxTimeoutSeconds": 300,
    "network": "eip155:8453",
    "payTo": "0x38C063312719220c676E988f0DEE14B4ec0e44C8",
    "paymentFlow": null,
    "raw": {
      "amount": "100000",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "maxTimeoutSeconds": 300,
      "max_timeout_seconds": 300,
      "network": "eip155:8453",
      "payTo": "0x38C063312719220c676E988f0DEE14B4ec0e44C8",
      "pay_to": "0x38C063312719220c676E988f0DEE14B4ec0e44C8",
      "scheme": "exact"
    },
    "scheme": "exact"
  }
]

PaymentRequired raw

{
  "accepts": [
    {
      "amount": "100000",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "extra": {
        "name": "USD Coin",
        "version": "2"
      },
      "maxTimeoutSeconds": 300,
      "network": "eip155:8453",
      "payTo": "0x38C063312719220c676E988f0DEE14B4ec0e44C8",
      "scheme": "exact"
    }
  ],
  "error": "Payment required",
  "extensions": {
    "bazaar": {
      "category": "data-provider",
      "info": {
        "input": {
          "method": "GET",
          "queryParams": {
            "address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
            "chain": "base"
          },
          "type": "http"
        },
        "output": {
          "example": {
            "address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
            "chain": "base",
            "defiYields": [
              {
                "apy": 4.8,
                "pool": "USDC",
                "protocol": "compound-v3",
                "tvlUsd": 800000000
              }
            ],
            "gas": {
              "baseFeeGwei": "0.0012",
              "chain": "base",
              "gasPriceGwei": "0.0015"
            },
            "processingTime": "520ms",
            "risk": {
              "flags": [
                "ESTABLISHED"
              ],
              "level": "minimal",
              "score": 0
            },
            "wallet": {
              "activityTags": [
                "stablecoin-holder",
                "active-trader"
              ],
              "balanceEth": "1.23",
              "balanceUsd": "$4,305.00",
              "isContract": false,
              "tokens": [
                {
                  "balance": "1500.00",
                  "symbol": "USDC"
                }
              ],
              "transactionCount": 142,
              "type": "eoa"
            }
          },
          "type": "json"
        }
      },
      "schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "input": {
            "additionalProperties": false,
            "properties": {
              "method": {
                "enum": [
                  "GET"
                ],
                "type": "string"
              },
              "queryParams": {
                "properties": {
                  "address": {
                    "description": "Ethereum wallet address to profile (0x-prefixed, 42 chars)",
                    "type": "string"
                  },
                  "chain": {
                    "description": "Target chain: base, ethereum, or sepolia (default: base)",
                    "type": "string"
                  }
                },
                "required": [
                  "address"
                ],
                "type": "object"
              },
              "type": {
                "const": "http",
                "type": "string"
              }
            },
            "required": [
              "type",
              "method"
            ],
            "type": "object"
          },
          "output": {
            "properties": {
              "example": {
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type"
            ],
            "type": "object"
          }
        },
        "required": [
          "input"
        ],
        "type": "object"
      },
      "tags": [
        "portfolio",
        "wallet",
        "defi",
        "risk",
        "tokens",
        "blockchain",
        "composite",
        "finance"
      ]
    }
  },
  "resource": {
    "description": "Complete DeFi portfolio snapshot for any wallet address in one call. Aggregates wallet balance and token holdings (Viem + Blockscout), on-chain risk score and flags, top USDC DeFi yields available on the chain (DefiLlama), and current gas prices — all fetched in parallel. Ideal for DeFi agents, portfolio trackers, and risk-aware execution engines.",
    "iconUrl": "https://vibesprings.net/logo.png",
    "mimeType": "application/json",
    "serviceName": "Vibe Springs",
    "tags": [
      "portfolio",
      "wallet",
      "defi",
      "risk",
      "tokens"
    ],
    "url": "https://vibesprings.net/api/portfolio-brief"
  },
  "x402Version": 2
}

Response headers

{
  "alt-svc": "h3=\":443\"; ma=86400",
  "cache-control": "no-cache, no-store, must-revalidate",
  "connection": "keep-alive",
  "content-security-policy": "upgrade-insecure-requests",
  "content-type": "application/json",
  "date": "Thu, 13 Aug 2026 05:45:03 GMT",
  "panel": "hpanel",
  "payment-required": "eyJ4NDAyVmVyc2lvbiI6MiwiZXJyb3IiOiJQYXltZW50IHJlcXVpcmVkIiwicmVzb3VyY2UiOnsidXJsIjoiaHR0cHM6Ly92aWJlc3ByaW5ncy5uZXQvYXBpL3BvcnRmb2xpby1icmllZiIsImRlc2NyaXB0aW9uIjoiQ29tcGxldGUgRGVGaSBwb3J0Zm9saW8gc25hcHNob3QgZm9yIGFueSB3YWxsZXQgYWRkcmVzcyBpbiBvbmUgY2FsbC4gQWdncmVnYXRlcyB3YWxsZXQgYmFsYW5jZSBhbmQgdG9rZW4gaG9sZGluZ3MgKFZpZW0gKyBCbG9ja3Njb3V0KSwgb24tY2hhaW4gcmlzayBzY29yZSBhbmQgZmxhZ3MsIHRvcCBVU0RDIERlRmkgeWllbGRzIGF2YWlsYWJsZSBvbiB0aGUgY2hhaW4gKERlZmlMbGFtYSksIGFuZCBjdXJyZW50IGdhcyBwcmljZXMg4oCUIGFsbCBmZXRjaGVkIGluIHBhcmFsbGVsLiBJZGVhbCBmb3IgRGVGaSBhZ2VudHMsIHBvcnRmb2xpbyB0cmFja2VycywgYW5kIHJpc2stYXdhcmUgZXhlY3V0aW9uIGVuZ2luZXMuIiwibWltZVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIiwic2VydmljZU5hbWUiOiJWaWJlIFNwcmluZ3MiLCJ0YWdzIjpbInBvcnRmb2xpbyIsIndhbGxldCIsImRlZmkiLCJyaXNrIiwidG9rZW5zIl0sImljb25VcmwiOiJodHRwczovL3ZpYmVzcHJpbmdzLm5ldC9sb2dvLnBuZyJ9LCJhY2NlcHRzIjpbeyJzY2hlbWUiOiJleGFjdCIsIm5ldHdvcmsiOiJlaXAxNTU6ODQ1MyIsImFtb3VudCI6IjEwMDAwMCIsImFzc2V0IjoiMHg4MzM1ODlmQ0Q2ZURiNkUwOGY0YzdDMzJENGY3MWI1NGJkQTAyOTEzIiwicGF5VG8iOiIweDM4QzA2MzMxMjcxOTIyMGM2NzZFOTg4ZjBERUUxNEI0ZWMwZTQ0QzgiLCJtYXhUaW1lb3V0U2Vjb25kcyI6MzAwLCJleHRyYSI6eyJuYW1lIjoiVVNEIENvaW4iLCJ2ZXJzaW9uIjoiMiJ9fV0sImV4dGVuc2lvbnMiOnsiYmF6YWFyIjp7ImluZm8iOnsiaW5wdXQiOnsidHlwZSI6Imh0dHAiLCJxdWVyeVBhcmFtcyI6eyJhZGRyZXNzIjoiMHhkOGRBNkJGMjY5NjRhRjlEN2VFZDllMDNFNTM0MTVEMzdhQTk2MDQ1IiwiY2hhaW4iOiJiYXNlIn0sIm1ldGhvZCI6IkdFVCJ9LCJvdXRwdXQiOnsidHlwZSI6Impzb24iLCJleGFtcGxlIjp7ImFkZHJlc3MiOiIweGQ4ZEE2QkYyNjk2NGFGOUQ3ZUVkOWUwM0U1MzQxNUQzN2FBOTYwNDUiLCJjaGFpbiI6ImJhc2UiLCJ3YWxsZXQiOnsidHlwZSI6ImVvYSIsImJhbGFuY2VFdGgiOiIxLjIzIiwiYmFsYW5jZVVzZCI6IiQ0LDMwNS4wMCIsInRyYW5zYWN0aW9uQ291bnQiOjE0MiwiaXNDb250cmFjdCI6ZmFsc2UsInRva2VucyI6W3sic3ltYm9sIjoiVVNEQyIsImJhbGFuY2UiOiIxNTAwLjAwIn1dLCJhY3Rpdml0eVRhZ3MiOlsic3RhYmxlY29pbi1ob2xkZXIiLCJhY3RpdmUtdHJhZGVyIl19LCJyaXNrIjp7InNjb3JlIjowLCJsZXZlbCI6Im1pbmltYWwiLCJmbGFncyI6WyJFU1RBQkxJU0hFRCJdfSwiZGVmaVlpZWxkcyI6W3sicHJvdG9jb2wiOiJjb21wb3VuZC12MyIsInBvb2wiOiJVU0RDIiwiYXB5Ijo0LjgsInR2bFVzZCI6ODAwMDAwMDAwfV0sImdhcyI6eyJjaGFpbiI6ImJhc2UiLCJiYXNlRmVlR3dlaSI6IjAuMDAxMiIsImdhc1ByaWNlR3dlaSI6IjAuMDAxNSJ9LCJwcm9jZXNzaW5nVGltZSI6IjUyMG1zIn19fSwic2NoZW1hIjp7IiRzY2hlbWEiOiJodHRwczovL2pzb24tc2NoZW1hLm9yZy9kcmFmdC8yMDIwLTEyL3NjaGVtYSIsInR5cGUiOiJvYmplY3QiLCJwcm9wZXJ0aWVzIjp7ImlucHV0Ijp7InR5cGUiOiJvYmplY3QiLCJwcm9wZXJ0aWVzIjp7InR5cGUiOnsidHlwZSI6InN0cmluZyIsImNvbnN0IjoiaHR0cCJ9LCJtZXRob2QiOnsidHlwZSI6InN0cmluZyIsImVudW0iOlsiR0VUIl19LCJxdWVyeVBhcmFtcyI6eyJ0eXBlIjoib2JqZWN0IiwicHJvcGVydGllcyI6eyJhZGRyZXNzIjp7InR5cGUiOiJzdHJpbmciLCJkZXNjcmlwdGlvbiI6IkV0aGVyZXVtIHdhbGxldCBhZGRyZXNzIHRvIHByb2ZpbGUgKDB4LXByZWZpeGVkLCA0MiBjaGFycykifSwiY2hhaW4iOnsidHlwZSI6InN0cmluZyIsImRlc2NyaXB0aW9uIjoiVGFyZ2V0IGNoYWluOiBiYXNlLCBldGhlcmV1bSwgb3Igc2Vwb2xpYSAoZGVmYXVsdDogYmFzZSkifX0sInJlcXVpcmVkIjpbImFkZHJlc3MiXX19LCJyZXF1aXJlZCI6WyJ0eXBlIiwibWV0aG9kIl0sImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjpmYWxzZX0sIm91dHB1dCI6eyJ0eXBlIjoib2JqZWN0IiwicHJvcGVydGllcyI6eyJ0eXBlIjp7InR5cGUiOiJzdHJpbmcifSwiZXhhbXBsZSI6eyJ0eXBlIjoib2JqZWN0In19LCJyZXF1aXJlZCI6WyJ0eXBlIl19fSwicmVxdWlyZWQiOlsiaW5wdXQiXX0sImNhdGVnb3J5IjoiZGF0YS1wcm92aWRlciIsInRhZ3MiOlsicG9ydGZvbGlvIiwid2FsbGV0IiwiZGVmaSIsInJpc2siLCJ0b2tlbnMiLCJibG9ja2NoYWluIiwiY29tcG9zaXRlIiwiZmluYW5jZSJdfX19",
  "platform": "hostinger",
  "pragma": "no-cache",
  "referrer-policy": "strict-origin-when-cross-origin",
  "server": "hcdn",
  "strict-transport-security": "max-age=63072000; includeSubDomains; preload",
  "transfer-encoding": "chunked",
  "vary": "Accept-Encoding",
  "x-content-type-options": "nosniff",
  "x-frame-options": "DENY",
  "x-hcdn-request-id": "8d8d19904420a853b5425b4d9cc3aefc-tok-edge4",
  "x-xss-protection": "1; mode=block"
}

Response body

{}

Request headers

{
  "accept": "*/*",
  "user-agent": "Fetch402Bot/0.1 (+https://fetch402.com/crawler; contact: crawler@fetch402.com)"
}

Machine contract

Schemas.

InputJSON
{}
OutputJSON
{}