HTTP/1.1 402 PAYMENT REQUIRED agent402.base.eth · BASE · SOLANA · POLYGON · ARBITRUM · MONAD · STELLAR · ALGORAND · ROBINHOOD · USDC · USDG
Agent402 / tools / x402-trending

x402 trending sellers

$0.005 per call · USDC via x402 · GET /api/x402-trending

Momentum radar for the x402 seller ecosystem — which sellers are heating up, graded for wash-trade resistance. Reads the hourly on-chain leaderboard (real Base USDC settlements) and adds per-seller signals the raw board doesn't have: organicScore (uniqueBuyers/callsSettled — 1000 calls from 2 buyers smells like self-dealing, 1000 from 400 is organic demand) and avgTicketUsd. Rank by sort: 'usd' (revenue, default), 'calls' (volume), 'organic' (buyer diversity — the honest-demand lens), or 'buyers' (reach). include='external' (default) excludes Agent402's own row; 'all' keeps it. Once ~7 days of persisted snapshots accrue, each row also carries deltaVsPrevWeek + trend (rising/flat/cooling/new) — the wow envelope says whether those are live; deltas are never faked. ?sort=organic&limit=10

Input

FieldTypeDescription
sortstringRanking lens: usd=USDC settled (default), calls=raw volume, organic=organicScore (buyer diversity), buyers=distinct paying wallets
limitintegerHow many sellers to return (1-50, default 10)
includestringexternal (default) excludes Agent402's own wallet; all keeps it

Example output

{
  "window": "24h",
  "sort": "usd",
  "include": "external",
  "limit": 10,
  "totalSellers": 214,
  "sellers": [
    {
      "rank": 1,
      "name": "example-seller",
      "homepage": "https://seller.example",
      "network": "base",
      "wallet": "0x1111111111111111111111111111111111111111",
      "callsSettled": 3541,
      "totalUsd": 41.2,
      "uniqueBuyers": 402,
      "organicScore": 0.1135,
      "avgTicketUsd": 0.011635
    }
  ],
  "wow": {
    "available": false,
    "note": "no persisted snapshot ~7 days old yet — week-over-week deltas activate automatically as history accrues"
  },
  "snapshotAsOf": "2026-07-14T00:00:00.000Z",
  "generatedAt": "2026-07-14T00:00:05.000Z"
}

Try it — see the 402 challenge (free)

curl -i "https://agent402.tools/api/x402-trending?sort=usd&limit=10&include=external"

The response is HTTP 402 Payment Required with exact payment requirements. Any x402 v2 client pays automatically and retries:

Paid call (JavaScript agent)

import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

const client = new x402Client();
registerExactEvmScheme(client, { signer: privateKeyToAccount(KEY) });
const payFetch = wrapFetchWithPayment(fetch, client);

const res = await payFetch("https://agent402.tools/api/x402-trending?sort=usd&limit=10&include=external");
Wallet-only. This tool reaches the network/browser/storage, so it is paid in USDC via x402 (no proof-of-work tier).

Related tools

x402 market pulse

FREE w/ compute · or $0.01 · GET /api/x402-market-pulse

Live cross-provider x402 market sentiment. topProviders: the top x402 sellers ecosystem-wide, ranked by REAL on-chain ac…

x402 quote

$0.003 · GET /api/x402-quote

Probe any URL and decode its HTTP 402 payment requirements (price, asset, network, pay-to) into clean JSON — what an age…

USDC balance

$0.003 · GET /api/usdc-balance

Read the USDC balance of any address on Base, Polygon, Arbitrum, Optimism, or Ethereum. Read-only on-chain call. ?addres…