DEMAND RADARBASE MAINNETX402 V2

Know when the x402 market moved—and what to do next.

A live, machine-readable evidence layer for agents deciding what to build, reprice, position, monitor, or retire.

Resources indexed
14,536
Active listings
14,488
30d calls observed
285,097
ENTITY FIELDLIVE
agents.chain.linkcrypto_financial_data · 36,322 rolling 30d callsx402.twit.shweb_social_scraping_automation · 23,360 rolling 30d callsStableEnrichsearch · 21,266 rolling 30d callsStableTravelsearch · 6,924 rolling 30d callsglim.shweb_social_scraping_automation · 4,013 rolling 30d callsx402.tavily.comsearch · 3,635 rolling 30d calls
SNAPSHOT 06 SIGNALS
01THE PAYMENT CONTRACT

A decision loop your agent can run.

Free status tells an agent whether movement is likely material. Changes names the evidence. The brief turns that evidence into an action.

satssignal / x40201 / 03
$curl -i 'https://srv1334799.hstgr.cloud/v1/x402/demand/snapshot?source=landing_terminal'
HTTP/1.1 402 PAYMENT REQUIREDpayment-required
{
  "x402Version": 2,
  "accepts": [
    {
      "scheme": "exact",
      "network": "eip155: 8453",
      "amount": "10000",
      "asset": "USDC"
    }
  ]
}
shared decision contract · live evidence excerpt
{
  "schemaVersion": "market.v1",
  "whatChanged": "web_social_scraping_automation rolling 30-day calls decreased by 1068 between observed snapshots.",
  "whyItMatters": "The category may be losing attention or experiencing rolling-window churn; avoid expanding supply without checking resource-level drivers.",
  "recommendedAction": "Check whether the decline is broad, concentrated, or caused by the rolling window before allocating more effort.",
  "confidence": 0.78,
  "evidence": {
    "category": "web_social_scraping_automation",
    "previousL30Calls": 55754,
    "currentL30Calls": 54686,
    "delta": -1068,
    "baselineRefreshId": 181,
    "currentRefreshId": 182
  },
  "unknowns": [
    "Bazaar exposes per-resource 30-day calls and unique payers; it does not prove unique companies or durable profitability."
  ],
  "nextCursor": "2026-08-29T19: 23: 05.940Z"
}
02BUYER JOURNEY

Pay only when the decision gets harder.

Every response is deterministic for its snapshot or cursor, with freshness, confidence, evidence references, and explicit unknowns.

CONTRACT whatChanged · whyItMatters · recommendedAction · confidence · evidence

01 Materiality check/v1/x402/demand/status FREE

Poll a saved cursor. Buy nothing until the market crosses a decision-relevant threshold.

INPUTOptional: since=<ISO-8601 cursor>

FRESH · 2H 33M AGO

curl -sS 'https://srv1334799.hstgr.cloud/v1/x402/demand/status?source=landing_card'
{
  "currentCursor": "2026-08-29T19: 23: 05.940Z",
  "newSnapshotAvailable": null,
  "changeAssessment": {
    "state": "unknown",
    "likelyMaterial": null,
    "highestImpact": null,
    "reason": "A comparable historical baseline is not available for this cursor."
  },
  "nextAction": {
    "route": "GET /v1/x402/demand/changes?since=<supplied-cursor>",
    "priceUsd": "$0.03",
    "reason": "Pay only when a newer snapshot is likely material; otherwise keep polling with the persisted cursor."
  },
  "freshness": {
    "state": "fresh",
    "targetHours": 24,
    "staleAfter": "2026-08-30T19: 23: 05.940Z"
  }
}
02 Cheapest read/v1/x402/demand/snapshot $0.01

Buy when an agent needs the current movers and one ranked opportunity before deeper analysis.

INPUTNone — safest first paid call

FRESH · 2H 33M AGO

curl -sS 'https://srv1334799.hstgr.cloud/v1/x402/demand/snapshot?source=landing_card'
{
  "schemaVersion": "market.v1",
  "whatChanged": "web_social_scraping_automation rolling 30-day calls decreased by 1068 between observed snapshots.",
  "whyItMatters": "The category may be losing attention or experiencing rolling-window churn; avoid expanding supply without checking resource-level drivers.",
  "recommendedAction": "Check whether the decline is broad, concentrated, or caused by the rolling window before allocating more effort.",
  "confidence": 0.78,
  "evidence": {
    "category": "web_social_scraping_automation",
    "previousL30Calls": 55754,
    "currentL30Calls": 54686,
    "delta": -1068,
    "baselineRefreshId": 181,
    "currentRefreshId": 182
  },
  "unknowns": [
    "Bazaar exposes per-resource 30-day calls and unique payers; it does not prove unique companies or durable profitability."
  ],
  "nextCursor": "2026-08-29T19: 23: 05.940Z"
}
03 What moved/v1/x402/demand/changes?since=2026-08-29T13%3A23%3A05.940Z $0.03

Buy after status says likelyMaterial=true to retrieve identities, values, evidence, and the next cursor.

INPUTRequired: since=<ISO-8601 cursor from status>

FRESH · 2H 33M AGO

curl -sS 'https://srv1334799.hstgr.cloud/v1/x402/demand/changes?since=2026-08-29T13%3A23%3A05.940Z&source=landing_card'
{
  "schemaVersion": "market.v1",
  "whatChanged": "web_social_scraping_automation rolling 30-day calls decreased by 1068 between observed snapshots.",
  "whyItMatters": "The category may be losing attention or experiencing rolling-window churn; avoid expanding supply without checking resource-level drivers.",
  "recommendedAction": "Check whether the decline is broad, concentrated, or caused by the rolling window before allocating more effort.",
  "confidence": 0.78,
  "evidence": {
    "category": "web_social_scraping_automation",
    "previousL30Calls": 55754,
    "currentL30Calls": 54686,
    "delta": -1068,
    "baselineRefreshId": 181,
    "currentRefreshId": 182
  },
  "unknowns": [
    "Bazaar exposes per-resource 30-day calls and unique payers; it does not prove unique companies or durable profitability."
  ],
  "nextCursor": "2026-08-29T19: 23: 05.940Z"
}
04 Decision brief/v1/x402/demand/builder-brief $0.10

Buy before a build, reprice, positioning, dependency, or retire decision needs an evidence-backed action.

INPUTOptional: since=<ISO-8601 cursor>

FRESH · 2H 33M AGO

curl -sS 'https://srv1334799.hstgr.cloud/v1/x402/demand/builder-brief?source=landing_card'
{
  "schemaVersion": "market.v1",
  "whatChanged": "web_social_scraping_automation rolling 30-day calls decreased by 1068 between observed snapshots.",
  "whyItMatters": "The category may be losing attention or experiencing rolling-window churn; avoid expanding supply without checking resource-level drivers.",
  "recommendedAction": "Check whether the decline is broad, concentrated, or caused by the rolling window before allocating more effort.",
  "confidence": 0.78,
  "evidence": {
    "category": "web_social_scraping_automation",
    "previousL30Calls": 55754,
    "currentL30Calls": 54686,
    "delta": -1068,
    "baselineRefreshId": 181,
    "currentRefreshId": 182
  },
  "unknowns": [
    "Bazaar exposes per-resource 30-day calls and unique payers; it does not prove unique companies or durable profitability."
  ],
  "nextCursor": "2026-08-29T19: 23: 05.940Z"
}
05 Competitor deep dive/v1/market/competitors?query=data $0.03

Buy to inspect comparable endpoints, demand, pricing, and concentration for a specific query.

INPUTRequired: query=<category, host, or product>

FRESH · 2H 33M AGO

curl -sS 'https://srv1334799.hstgr.cloud/v1/market/competitors?query=data&source=landing_card'
{
  "schemaVersion": "market.v1",
  "topResources": [
    {
      "resource": "https://agents.chain.link/v1/operations/:workflowName",
      "serviceName": null,
      "host": "agents.chain.link",
      "category": "crypto_financial_data",
      "description": "Chainlink For Agents: execute a catalog workflow by workflow name.",
      "tags": [],
      "priceUsd": 0.01,
      "priceOutlier": false,
      "network": "eip155: 8453",
      "l30Calls": 36322,
      "l30UniquePayers": 1,
      "lastCalledAt": "2026-08-29T18: 45: 39.832Z",
      "lastUpdated": "2026-08-29T19: 21: 49.727Z",
      "sourceUrl": "https://api.cdp.coinbase.com/platform/v2/x402/discovery/resources"
    }
  ]
}
06 Opportunity ranking/v1/market/opportunities $0.15

Buy to rank categories before committing engineering time to a new paid endpoint.

INPUTNone

FRESH · 2H 33M AGO

curl -sS 'https://srv1334799.hstgr.cloud/v1/market/opportunities?source=landing_card'
{
  "schemaVersion": "market.v1",
  "underservedOpportunity": {
    "category": "crypto_financial_data",
    "score": 10,
    "demandSignal": "broad_high_volume",
    "suggestedPositioning": "Package cross-endpoint intelligence and provenance instead of another raw token or wallet endpoint.",
    "recommendedPriceUsd": 0.01,
    "mainRisk": "Free substitutes and buyer concentration.",
    "evidence": {
      "resourceCount": 4725,
      "activeResources": 4707,
      "l30Calls": 128948,
      "l30PayerEvents": 24251,
      "medianPriceUsd": 0.0085,
      "topHostShare": 0.4064
    }
  },
  "confidence": 0.78
}
07 Market map/v1/market/map $0.05

Buy when category, host, and top-resource context matters more than a single movement.

INPUTNone

FRESH · 2H 33M AGO

curl -sS 'https://srv1334799.hstgr.cloud/v1/market/map?source=landing_card'
{
  "schemaVersion": "market.v1",
  "categories": [
    {
      "category": "crypto_financial_data",
      "resourceCount": 142,
      "activeResources": 142,
      "l30Calls": 109544,
      "l30PayerEvents": 16416,
      "medianPriceUsd": 0.005,
      "activeMedianPriceUsd": 0.005,
      "topHostShare": 0.4783,
      "topResources": [
        {
          "resource": "https://agents.chain.link/v1/operations/:workflowName",
          "serviceName": null,
          "host": "agents.chain.link",
          "category": "crypto_financial_data",
          "description": "Chainlink For Agents: execute a catalog workflow by workflow name.",
          "tags": [],
          "priceUsd": 0.01,
          "priceOutlier": false,
          "network": "eip155: 8453",
          "l30Calls": 36322,
          "l30UniquePayers": 1,
          "lastCalledAt": "2026-08-29T18: 45: 39.832Z",
          "lastUpdated": "2026-08-29T19: 21: 49.727Z",
          "sourceUrl": "https://api.cdp.coinbase.com/platform/v2/x402/discovery/resources"
        },
        {
          "resource": "https://agents.chain.link/v1/operations/:operationId/submit",
          "serviceName": null,
          "host": "agents.chain.link",
          "category": "crypto_financial_data",
          "description": "Chainlink For Agents: submit a signed operation payload.",
          "tags": [],
          "priceUsd": 0.002,
          "priceOutlier": false,
          "network": "eip155: 8453",
          "l30Calls": 16077,
          "l30UniquePayers": 1,
          "lastCalledAt": "2026-08-29T18: 42: 10.159Z",
          "lastUpdated": "2026-08-29T19: 21: 07.803Z",
          "sourceUrl": "https://api.cdp.coinbase.com/platform/v2/x402/discovery/resources"
        },
        {
          "resource": "https://api.deepnets.ai/api/token-safety",
          "serviceName": null,
          "host": "api.deepnets.ai",
          "category": "crypto_financial_data",
          "description": "Token safety analysis for a Solana mint: overall risk level, wallet-network concentration, bundle detection, mintable/freezable flags, critical risks, and warnings. Returns the most recent cached analysis.",
          "tags": [],
          "priceUsd": null,
          "priceOutlier": true,
          "network": "solana: 5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
          "l30Calls": 3471,
          "l30UniquePayers": 4,
          "lastCalledAt": "2026-08-26T22: 57: 23.494Z",
          "lastUpdated": "2026-08-26T22: 57: 19.268Z",
          "sourceUrl": "https://api.cdp.coinbase.com/platform/v2/x402/discovery/resources"
        },
        {
          "resource": "https://token4u.ai/v1/chat/completions",
          "serviceName": "Token4u AI Chat API",
          "host": "token4u.ai",
          "category": "crypto_financial_data",
    
…
03LIVE CONSOLE

Inspect the live contract.

Free calls return data. Paid calls stop at the real 402 challenge—no wallet, signature, or charge is requested here.

FREE
402 DEMO
RESPONSEREADY
{
  "ready": true,
  "instruction": "Choose a free endpoint or inspect a paid 402 challenge."
}
04FIRST PAID CALL

Make one safe, recoverable paid request.

Start with the parameter-free $0.01 snapshot. The pinned x402 v2 client requests the route, signs only the returned Base-mainnet requirement, and retries once. Never paste a funded key into this page or commit it to source control.

  1. 01Request and inspect the 402
  2. 02Sign the exact returned requirement
  3. 03Verify delivery and payment response

INSTALL — PINNED TO THE SERVER'S X402 V2 RELEASE

npm i @x402/fetch@2.18.0 @x402/evm@2.18.0 viem

FIRST-CALL.MJS — BASE MAINNET / EXACT USDC

import { wrapFetchWithPaymentFromConfig } from "@x402/fetch";
import { ExactEvmScheme } from "@x402/evm";
import { privateKeyToAccount } from "viem/accounts";

const privateKey = process.env.EVM_PRIVATE_KEY;
if (!privateKey?.startsWith("0x")) throw new Error("Set EVM_PRIVATE_KEY");

const account = privateKeyToAccount(privateKey);
const paidFetch = wrapFetchWithPaymentFromConfig(fetch, {
  schemes: [{
    network: "eip155:8453",
    client: new ExactEvmScheme(account),
  }],
});

const response = await paidFetch(
  "https://srv1334799.hstgr.cloud/v1/x402/demand/snapshot?source=landing_first_call",
);
if (!response.ok) {
  throw new Error(response.status + ": " + await response.text());
}

console.log(JSON.stringify({
  paymentResponse: response.headers.get("payment-response"),
  body: await response.json(),
}, null, 2));

Client flow follows the official x402 buyer quickstart . Review the code and use a purpose-limited wallet.

BEFORE THE WALLET SIGNS

  • NETWORKeip155:8453 (Base mainnet)
  • ASSETExact USDC requirement returned by the server
  • INPUTUse snapshot first; use the status cursor for changes
  • KEYEVM_PRIVATE_KEY stays server-side and out of logs

RECOVER BY STATUS — DO NOT BLINDLY LOOP

400
The request contract or parameter is invalid. Fix it before signing or retrying; this is not a paid delivery.
402
An unsigned call is expected. If a signed retry still returns 402, inspect scheme, network, amount, and wallet funds before another attempt.
200
Parse the JSON delivery and retain the PAYMENT-RESPONSE header as the settlement receipt.
05HANDOFF

Send your agent. Or bring the decision yourself.

FOR AGENTS

Use the machine-readable surface.

LLMShttps://srv1334799.hstgr.cloud/llms.txt
OPENAPIhttps://srv1334799.hstgr.cloud/openapi.json
MCP{"mcpServers":{"satssignal":{"type":"http","url":"https://srv1334799.hstgr.cloud/mcp"}}}
Browse the public Bazaar resource index

ARE YOU HUMAN?

A small design-partner cohort is open.

SatsSignal is for x402 builders with a live product decision: check status for material movement, inspect changes when something moved, then use the brief to decide whether to build, reprice, reposition, monitor, or retire. We are working closely with 3–5 builders during this test; partners get direct interpretation of the evidence and influence over the contract, with no subscription or lock-in.

Talk to Conor on X