On-chain intelligence

Wallet Ping

One request. Portfolio, recent transfers, staking, and a risk signal — powered by Tatum. Open the orb to begin.

For builders & agents

What you get from a wallet ping

One request returns a single JSON document (schemaVersion: 1) with portfolio, transfers, staking, wallet age, risk, and computed insights — ready for dashboards or autonomous agents. Access is unlocked with a one-time x402 USDC payment on Base when enabled.

  • Portfolio

    Native balances with USD valuation plus fungible tokens (page 1).

    • portfolio.native[] — balance, denominatedBalance, usdValue, unitPriceUsd
    • portfolio.fungible[] — tokenAddress, balance, metadata (name, symbol, logo)
    • valuation.nativeTotalUsd — native asset USD total
    • valuation.fungibleMetadataResolved / Attempted
  • Recent transactions

    Latest on-chain activity for the wallet, sorted for quick triage.

    • transactions.items[] — type, subtype, amount, timestamp, hash
    • transactions.items[] — tokenAddress, tokenId, counterAddress, blockNumber
    • transactions.pagination — pageSize, offset, nextOffset

    Tap a row in the UI to load full tx detail (see below).

  • Wallet age

    How long the address has been active on the selected chain.

    • walletAge.supported — chain availability
    • walletAge.firstActivityAt — ISO timestamp of earliest seen activity
    • walletAge.ageDays / ageLabel — human-readable age
    • walletAge.sourceTxHash — optional proof tx
  • Staking

    Chain-specific staking positions and delegations where Tatum exposes them.

    • staking.supported — whether staking API applies
    • staking.data — normalized rows (label, value) per chain
    • staking.reason — when unsupported or empty
  • Risk signal

    Malicious-address screening from Tatum’s risk check.

    • risk.maliciousCheck.status — e.g. valid, invalid
    • risk.maliciousCheck.source — provider id
    • risk.maliciousCheck.description — optional detail
  • Computed

    Derived locally from the ping — persona, activity pulse, concentration, and flags. No extra API calls.

    • computed.summary — one-sentence agent-ready overview
    • computed.persona — dormant | collector | active-trader | new | whale-native
    • computed.portfolio — stables, dust, diversification, top fungible
    • computed.activity — last active, in/out mix, counterparties, burst detection
    • computed.risk — Wallet Ping score (0–100) + clear/flagged
    • computed.flags[] — human warnings
    • computed.agentHints[] — sample limits (page 1 fungibles, tx window)
  • Envelope

    Core metadata on every response.

    • schemaVersion — always 1
    • chain, address, generatedAt
    • warnings[] — partial data or chain caveats

Agent integration

HTTP

  • GET /wallet-ping/api/ping?chain=&address= — wallet report
  • POST /wallet-ping/api/ping — body with paymentPayload after x402
  • Full integration guide: AGENTS.md (HTTP, x402, example code)
  • GET /wallet-ping/api/tx-hash?chain=&hash= — transaction legs
  • POST /wallet-ping/api/tx-hash — paid tx drill-down

DOM (no extra fetch)

  • Latest JSON lives in #wallet-ping-agent-payload (hidden <pre>, updated after each scan)
  • Use Copy API JSON in results for the same payload
  • Tx detail responses use kind: "tx-hash" with items[] legs per hash

Supported chains include Ethereum, Base, Arbitrum, BSC, Polygon, Optimism, Solana, and more — plus testnets via the chain selector. Staking and wallet age vary by chain; check warnings[] when a subsection is partial.