81trust / 100

Wallet Spy

by Oblique Markets in Onchain & crypto

x402 APIPassing, checked 2 h ago

Use when an agent wants to know what a wallet has been doing before paying it, accepting payment from it or following it. Returns Recent transactions, token transfers, DEX swaps, NFT activity and internal transactions for an EVM wallet on Base or Ethereum, with a heuristic risk score. $0.03.

GET https://api.oblique.markets/api/v1/paid/wallet-spy

Last 30 days

All checks passedSome failedAll failedNot checked
Uptime
100%
Response time
44 ms typical, 44 ms slowest 5%
Last check
2 h ago
Next check
any minute now

How to call it

# See the payment challenge (nothing is charged)
curl -i -X GET "https://api.oblique.markets/api/v1/paid/wallet-spy?address=0x970007590aCC5C938cd51345B17AF51B1B40D3Ab"
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

const client = new x402Client().register(
  "eip155:8453",
  new ExactEvmScheme(privateKeyToAccount(process.env.AGENT_KEY)),
);
const pay = wrapFetchWithPayment(fetch, client);

// Not sure it's safe to pay? Preflight it first for $0.005:
// GET https://toolvet.app/api/v1/check?url=https%3A%2F%2Fapi.oblique.markets%2Fapi%2Fv1%2Fpaid%2Fwallet-spy
const res = await pay("https://api.oblique.markets/api/v1/paid/wallet-spy?address=0x970007590aCC5C938cd51345B17AF51B1B40D3Ab");
console.log(await res.json());

Example input

{
  "address": "0x970007590aCC5C938cd51345B17AF51B1B40D3Ab"
}

Example output

{
  "chain": "base",
  "message": "Wallet surveillance via x402 protocol",
  "queried_at": "2026-09-12T00:09:51.442Z",
  "risk_score": {
    "level": "medium",
    "reasons": [
      "no_transaction_history"
    ],
    "score": 25
  },
  "surveillance": {
    "dexs_swaps": {
      "count": 0,
      "items": []
    },
    "internal_transactions": {
      "count": 0,
      "items": []
    },
    "nft_activity": {
      "count": 0,
      "items": []
    },
    "recent_transactions": {
      "count": 0,
      "items": []
    },
    "token_transfers": {
      "count": 50,
      "items": [
        {
          "from": "0x7Cd443d93a981Ae154a78F4A9b4Fadb6E8A7A264",
          "hash": "0x244024778b5aff09fba5961a9e4d711260d929100b8225c46633275cf40ac3f1",
          "method": "0xe3ee160e",
          "timestamp": "2026-09-12T00:09:03.000000Z",
          "to": "0x970007590aCC5C938cd51345B17AF51B1B40D3Ab",
          "token": {
            "address": null,
            "decimals": "6",
            "name": "USDC",
            "symbol": "USDC",
            "type": "ERC-20"
          },
          "total": "0",
          "value": "4000"
        }
      ],
      "unique_tokens": 0
    }
  },
  "wallet_address": "0x970007590aCC5C938cd51345B17AF51B1B40D3Ab"
}

Security scan

  • No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.

Recent checks

WhenResultHTTPTimePrice
2 h agoPassed40265 ms$0.03
8 h agoPassed40244 ms$0.03