Foundry

Data an agent can buy on its own.

Pay-per-call data products for agents, served over x402. No account, no API key, no signup. An agent calls a URL, settles the payment in the same request, and gets the answer — no human in the loop.

What x402 is

HTTP has always had a status code for this. 402 Payment Required sat unused for thirty years because there was no way to actually pay one. Stablecoins made it work, and x402 is the convention built on top: the server quotes its terms in the response, the caller pays, and the request completes. Nothing is exchanged out of band.

  1. Call the endpoint An ordinary GET. No key, no account, nothing registered in advance.
  2. Read the 402 The response carries the terms: amount, asset, recipient, chain. Machine-readable, so the caller does not have to be told them.
  3. Pay A signed USDC transfer on Base. Cents, not subscriptions.
  4. Retry with proof The same request again, carrying the payment. The endpoint verifies, does the work, settles, and answers.

What we run

Three services, live now. Each one answers a question that is tedious to assemble yourself and cheap to answer once someone has assembled it.

Contract Code Identity

GET /contract-code-hash

Check a deployed contract's code identity - keccak256 code hash read from the node via eth_getProof, confirmed on a second independent node, plus EIP-1167/1967/1822 proxy resolution.

Pass a contract address and chain. Optionally pass the code hash you expect — from an audit report or an earlier check — and the answer tells you whether it still matches.

What comes back

  • keccak256 hash of the deployed bytecode, read from the node
  • a second independent node's confirmation of that hash
  • proxy type and implementation address, with the implementation hashed too
  • whether it matched the hash you expected, if you supplied one
onchainsecuritycontractsverification

Surplus Sold Comps

GET /surplus-sold-comps

Sold-price comps for US government surplus - closed GSA auction lots matching an item query, with hammer prices, bidder counts, dates and locations, from a daily-archived lot history.

Pass an item query such as dell laptop or ford f-150. Narrow it with a look-back window.

What comes back

  • matching closed lots with their hammer prices
  • bidder counts, close dates, locations and selling agency
  • mean, median, min and max across the sample
  • the factors the sample does not model, stated plainly
governmentauctionspricingresale

Wallet Revenue Authenticity

GET /wallet-revenue-authenticity

Score whether an x402 seller wallet's revenue is real - distinct payers, repeat share, calls per payer, self-pay and round-trip flags, from Base USDC settlement history on chain.

Pass a wallet address. Narrow it with a look-back window.

What comes back

  • distinct payers and what share of them came back
  • calls per payer, the ratio that separates real use from farming
  • self-pay and round-trip flags
  • how far back the settlement history actually reaches
onchainanalyticsx402fraud

For machines

Everything above is also available in a form an agent can read without parsing this page. Each is generated from the same source, so none of them can disagree.