major labsSubscribe
Open data

x402 seller liveness

Every seller endpoint listed on the Major Matters x402 adoption tracker at majormatters.co/x402 is requested once a day with no payment attached, and we record whether it still answers with an x402 payment challenge: an HTTP 402 carrying a payment-required header or an x402 JSON body, or for a discovery endpoint, a 200 with an x402 manifest. A served 402 is the lowest bar for calling a seller live; it says the endpoint exists and asks to be paid, nothing more. This is a liveness check, not a volume measure. It does not say whether anyone pays, how often, or whether a payment settles.

As of October 29, 2026 · 4 endpoints · reruns daily at 06:15 UTC

4
seller endpoints probed
4
answered with a live challenge or manifest
0
did not
4
payTo matched the tracker

Every seller

One row per probed endpoint, sorted by company. Expected is what the tracker says the endpoint should return: a challenge (402) or a manifest (200). Networks is the number of distinct chains in the accepts array. First and last seen live carry forward across runs; consecutive failures resets to zero on the next live answer.

companyendpointexpectedlast checkedresultx402 versionnetworksfirst seen livelast seen liveconsecutive failures
GigSoulapi.gigsoul.com/.well-known/x402manifest2026-10-29live, payTo matches212026-10-292026-10-290
Goldskyedge.goldsky.com/standard/evm/8453 (POST)challenge2026-10-29live, payTo matches2132026-10-292026-10-290
Goldskyedge.goldsky.com/data/feeds/wallets/balances?…challenge2026-10-29live, payTo matches2132026-10-292026-10-290
Kronos (nexismvp.com)api.nexismvp.com/.well-known/x402manifest2026-10-29live, payTo matches212026-10-292026-10-290

A result of HTTP 404 or no response means the listed URL did not answer as the tracker expects on that day; the error text, where there is one, is on the row's tooltip and in the JSON.

Method

Each seller endpoint listed with a probe on the Major Matters x402 tracker is requested once a day from a GitHub-hosted runner, with no payment attached and a 20-second timeout. A challenge probe passes when the response is HTTP 402 and carries either a payment-required header (x402 v2, base64 JSON with x402Version) or a JSON body with x402Version and an accepts array. A manifest probe passes when the response is HTTP 200 and a JSON body with x402Version or a resources or accepts array. Only parsed fields are recorded: version, number of accepts, the set of networks, the set of payTo addresses and whether that set matches the address on the tracker. first_ok_at and last_ok_at carry forward across runs. This is a liveness check, not a volume measure: a 402 proves the challenge is served, not that any payment settles.

The list of sellers and their probe definitions come from the tracker's public JSON at majormatters.co/x402.json. The raw dataset behind this page, one JSON document with every row and the carried history, is at /data/x402-liveness.json. Data: CC BY 4.0.

Limitations

  • A 402 proves the challenge is served. It does not prove that a payment verifies, settles, or unlocks the resource behind it.
  • A seller can move or rename an endpoint. A failed probe may mean the URL on the tracker is stale rather than the seller is gone; the tracker is corrected by hand when that happens.
  • Probes run from GitHub-hosted runners in one region. A seller that blocks that address range, or that answers differently by geography, shows up here as it answers there.
  • No paid call is made. The probe stops at the challenge, so the price, the facilitator and the settlement path are read from the response, never exercised.
  • One request a day is a thin sample. An endpoint that is up for 23 hours and down at 06:15 UTC records a failure for that day.

The check reruns daily against the current tracker list, and each run replaces this page and the JSON while carrying forward first and last seen live for every slug.

See also: the MCP open data, AI-ported games, build log.