Touchstone.

Live notes on the agent economy. Every number measured on-chain, every purchase receipted.

Seeing something in this market? Data, corrections and disagreements all welcome. Reach out to @crowdturtle on X, or follow along by RSS.

2026-08-05 18:32 ETmarket-dataagent-trapsx402

A ticker is not a coin

pro-api.coinmarketcap.comGET /x402/v3/cryptocurrency/quotes/latestLive market quotes by symbol. One flat cent per call.

If your agent looks up a coin by ticker, it is not asking a precise question. I paid a cent a time to count how many separate assets claim the same symbol.

  • PEPE returns 32 assets. BTC returns 13, including Satoshi Pumpomoto and HarryPotterTrumpSonic100Inu. SOL returns 8, and Solana is not first in the list.
  • MORPHO returns 2, and the impostor has held that ticker since December 2022, two years before the real Morpho existed. Older listing, wrong asset.
  • Query by the provider's numeric id, or drop anything unranked and priceless before you use the result. An agent that takes the first row buys the wrong thing and never notices.
Receipts and detailclick to hide
What I senttickers picked to span meme-heavy and quality names
GET https://pro-api.coinmarketcap.com/x402/v3/cryptocurrency/quotes/latest
  ?symbol=MORPHO&convert=USD
  ?symbol=BTC,ETH,SOL,XRP,DOGE,ADA,AVAX,LINK,DOT,LTC,
          BCH,XLM,ATOM,UNI,AAVE,MKR,CRV,SNX,COMP,PEPE
$0.01 per call, USDC on Base
Receipts: Measured 2026-08-05 from paid calls to pro-api.coinmarketcap.com (x402, $0.01 each on Base). Counts are assets returned per symbol in a single response: 20 tickers returned 115 assets, 56 of them unranked.
2026-08-05 17:15 ETx402price-honestycorrectionscoinmarketcap

Payment #02The ten billion dollar bitcoin quote that wasn't

pro-api.coinmarketcap.comGET /x402/v3/cryptocurrency/quotes/latestLive market quotes for any listed cryptocurrency. One flat cent per call, no matter how many coins you ask for.

I found what looked like the most expensive thing in the agent economy: a CoinMarketCap price quote listed at ten billion dollars. I was about to grade it F. Then I paid it, and it charged one cent.

Honestquoted $0.01 · charged $0.01 · goods delivered
Receipts and detailclick to expand
  • The ten billion was my bug, not their price. Six of the seven payment options are 18-decimal tokens on BNB Chain, and my parser divided everything by a million. A one-cent quote read as $10,000,000,000.
  • The cent is flat, not per coin. One symbol or twenty, the quote never moves, and twenty came back with full market cap, supply and 90-day change on each.
  • What I did not expect: a symbol is not a coin. BTC returns 13 assets claiming that ticker, PEPE returns 32. Ask for SOL, take the first result, and you get Solcoin instead of Solana. Query by id or filter on rank.
What I sentsymbols picked by me, not requested by anyone
GET https://pro-api.coinmarketcap.com/x402/v3/cryptocurrency/quotes/latest
  ?symbol=BTC                       # call 1, the one graded here
  ?symbol=BTC,ETH,SOL,XRP,DOGE,     # call 2, the flat-price test
          ADA,AVAX,LINK,DOT,LTC,
          BCH,XLM,ATOM,UNI,AAVE,
          MKR,CRV,SNX,COMP,PEPE
no request body · spend capped at $0.01 per call
Paid
$0.01
Protocol
x402 v2
Network
Base
Asset
USDC
API
pro-api.coinmarketcap.com
Options offered
7 across 3 chains
Payer
0xC533…2D7A
Tx (20 coins)
0x43b8…b546
Run this payment yourself

Look at all seven options before you judge the price. The amount is an integer in the asset's own decimals, so the same number means different money depending on the token.

# 1. read the paywall, free, and decode every option
curl -sD - -o /dev/null \
  'https://pro-api.coinmarketcap.com/x402/v3/cryptocurrency/quotes/latest?symbol=BTC' \
  | grep -i '^payment-required:' | cut -d' ' -f2 | base64 -d | jq '.accepts[] | {amount, asset, network}'
# -> 7 options. USDC on Base (6dp) is 10000 = $0.01.
#    BNB-chain tokens (18dp) show 10000000000000000, which is also $0.01.

# 2. pay it, capping what you will spend
npx agentcash@latest fetch \
  'https://pro-api.coinmarketcap.com/x402/v3/cryptocurrency/quotes/latest?symbol=BTC' \
  --max-amount 0.01
Receipts: Two payments from wallet 0xC533Bf5268A2F64aDDe58dcE380651f70Aa92D7A on 2026-08-05, both settled on Base and verifiable on Basescan: one symbol at 21:11 UTC, twenty symbols at 21:19 UTC, $0.01 each. Quote options read from the live payment-required header the same day.
2026-08-05 15:40 ETx402agent-paymentsreceiptsprice-honesty

Payment #01One cent for a meme

stablememes.devPOST /api/automemeAuto-captioned meme. You send one line of text, it picks a template from the top 2,048 and captions it.

I gave an agent a wallet and told it to buy something. It found a meme API, read the price off the paywall, signed a payment, and got back a JPEG. No account, no API key, no card.

Honestquoted $0.01 · charged $0.01 · goods delivered
Receipts and detailclick to expand
  • I sent one line of input: "ratatata is going to war". The API chose its own template out of the top 2,048. I did not pick Change My Mind.
  • Quoted a cent, charged a cent. My balance moved 7.397111 to 7.387111, exactly as advertised.
  • That is rarer than it should be. stablegiftcards.dev quotes a flat $25.00 whether you ask for a $5 gift card or a $1 phone top-up, and re-probing it today it still wants $500.00 for a malformed body.
  • Scale check: it takes 77 of these memes to match what the median x402 seller earns in a month.
What I senttext mine, watermark left at its default
POST https://stablememes.dev/api/automeme
{"text": "ratatata is going to war", "watermark": true}

# watermark:true is the default and costs $0.01
# watermark:false costs $0.02
Change My Mind meme template captioned: ratatata is going to war
What one cent buys. Template chosen by the API, not by me.
Paid
$0.01
Protocol
x402 v2
Network
Base
Asset
USDC
API
stablememes.dev
Payer
0xC533…2D7A
Balance
7.397111 → 7.387111
Run this payment yourself

Any wallet with a couple of cents of USDC on Base can make this exact call. No account, no API key. The endpoint quotes $0.01 with the watermark left on, $0.02 without.

# 1. see the paywall and its price, free
curl -s -X POST https://stablememes.dev/api/automeme \
  -H 'Content-Type: application/json' \
  -d '{"text":"ratatata is going to war","watermark":true}'
# -> 402, quoting 10000 (0.01 USDC) to 0x3F17AE7D36d77Ca0b8194144F5763283D17E7955 on Base

# 2. pay it and get the meme back
npx agentcash@latest fetch https://stablememes.dev/api/automeme \
  --method POST \
  --body '{"text":"ratatata is going to war","watermark":true}'
# -> {"url":"...jpg","page_url":"..."} plus the settlement tx hash
Receipts: Paid 2026-08-05 19:32 UTC from wallet 0xC533Bf5268A2F64aDDe58dcE380651f70Aa92D7A, verifiable on Base. Median-seller figure from the x402scan 30d seller pull, as of 2026-08-04.
2026-08-05 14:58 ETcloudflareidentityagent-payments

Cloudflare announced Wallets. AI agents aren't equipped to make purchases right now. They have no native way to pay for APIs, which anyone running Claude Code sees constantly: it hits a paywall, stalls, and kicks back to you to enter a card or start a subscription.

Agents do not have a stable identifier to sign up for an API, and they do not have a native way to pay for APIs.

Cloudflare, Introducing Cloudflare Wallets

Cloudflare is building an ecosystem where agents manage their own wallets inside human-set guardrails and transact with each other. I imagine this starts with APIs and inference calls, then expands from there.

Receipts and detailclick to expand
Receipts: Cloudflare announcement, Aug 4 2026. Handles claimable now at cloudflare.pay; wallet functionality listed as coming soon.