other · Listed · Found · 10 endpoints · Gateway-eligible
penny402
penny402
penny402 is a penny arcade for agents: small, self-contained, instantly-answered attractions, each a flat $0.0025 in USDC on Base or Solana over x402. No account, no API key, no minimum. THE QUOTE IS THE 402. POST an unpaid request to a paid attraction and the 402 that comes back carries the exact terms — amount, asset, payTo, network — for that call. Pay it by repeating the identical request with the payment header, and the amount that settles is the amount that was quoted. There is one pricing function and both sides read it. Headers: send X-PAYMENT for x402 v1, or PAYMENT-SIGNATURE for x402 v2. The v1 envelope is the 402 response body; the v2 envelope is standard base64 in the PAYMENT-REQUIRED response header. Both versions are served from the same 402, so use whichever your client speaks. Rails: Base — USDC 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913, network "base" in x402 v1 and "eip155:8453" in v2; Solana — USDC EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v, network "solana" in x402 v1 and "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp" in v2. Every rail carries the SAME quote — a second rail is a second way to pay, never a second price. The accepts array in the 402 you were handed is authoritative; pay the first entry you can, which is the order they are listed in. POST is how you buy a paid attraction. A GET or HEAD on one answers the same payable 402 so a prober can read the terms without spending, but a payment presented on GET is refused without settling. A FREE attraction (/penny) answers 200 on GET, HEAD and POST alike, needs no body, and never returns a 402. Its operation below documents no 402 response for exactly that reason. Every attraction is SYNCHRONOUS. The response body is the answer: there is no job id, nothing to poll, and no expiring link. Almost every attraction takes no parameters — POST {} — so a bare probe and a real call send the identical body; where one does take a parameter it is optional, and its operation below documents it. The paid readings are POOL-SERVED and DETERMINISTIC: the answer is drawn from a pre-generated pool for the request's UTC date, keyed to the paying address. The same wallet asking twice in one UTC day is served the identical reading, and a new one after midnight UTC. No model runs while you wait, which is why the answer comes back in one round trip. THE EXCEPTIONS ARE NAMED: /spark, /oblique and /brainstorm run a model per call at high temperature (answers differ every call; an unreachable model means a 502 and no charge), and /roast-my-wallet reads the paying wallet's public Base state at serve time (an unreachable node means a generic roast, still served). Everything else is a pool read and a hash. GET /v1/attractions is the directory: every attraction id, its path, whether it is free, its price in dollars and in atomic USDC, and what it returns. It is free, it is the catalog every other surface here is rendered from, and it is the cheapest way to find out what is open.
Indexed from this operator's public /.well-known/x402.json. Found is not operator-owned and is not attested. Claim or opt out.
Agent Read · Cleared Index
CAUTION
Caution — usable signal, incomplete attestation or mesh.
confidence
67%
source
signal
Index before you pay. Same payload for agents:
GET /api/cleared/agent-read?slug=penny402-lp8a
When to call
- Single-call floor around $0.0025.
- penny402 is a penny arcade for agents: small, self-contained, instantly-answered attractions, each a flat $0.0025 in USDC on Base or Solana over x402. No account, no API key, no minimum. THE QUOTE IS THE 402. POST an unpaid request to a paid attraction and the 402 that comes back carries the exact terms — amount, asset, payTo, network — for that call. Pay it by repeating the identical request with the payment header, and the amount that settles is the amount that was quoted. There is one pricing function and both sides read it. Headers: send X-PAYMENT for x402 v1, or PAYMENT-SIGNATURE for x402 v2. The v1 envelope is the 402 response body; the v2 envelope is standard base64 in the PAYMENT-REQUIRED response header. Both versions are served from the same 402, so use whichever your client speaks. Rails: Base — USDC 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913, network "base" in x402 v1 and "eip155:8453" in v2; Solana — USDC EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v, network "solana" in x402 v1 and "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp" in v2. Every rail carries the SAME quote — a second rail is a second way to pay, never a second price. The accepts array in the 402 you were handed is authoritative; pay the first entry you can, which is the order they are listed in. POST is how you buy a paid attraction. A GET or HEAD on one answers the same payable 402 so a prober can read the terms without spending, but a payment presented on GET is refused without settling. A FREE attraction (/penny) answers 200 on GET, HEAD and POST alike, needs no body, and never returns a 402. Its operation below documents no 402 response for exactly that reason. Every attraction is SYNCHRONOUS. The response body is the answer: there is no job id, nothing to poll, and no expiring link. Almost every attraction takes no parameters — POST {} — so a bare probe and a real call send the identical body; where one does take a parameter it is optional, and its operation below documents it. The paid readings are POOL-SERVED and DETERMINISTIC: the answer is drawn from a pre-generated pool for the request's UTC date, keyed to the paying address. The same wallet asking twice in one UTC day is served the identical reading, and a new one after midnight UTC. No model runs while you wait, which is why the answer comes back in one round trip. THE EXCEPTIONS ARE NAMED: /spark, /oblique and /brainstorm run a model per call at high temperature (answers differ every call; an unreachable model means a 502 and no charge), and /roast-my-wallet reads the paying wallet's public Base state at serve time (an unreachable node means a generic roast, still served). Everything else is a pool read and a hash. GET /v1/attractions is the directory: every attraction id, its path, whether it is free, its price in dollars and in atomic USDC, and what it returns. It is free, it is the catalog every other surface here is rendered from, and it is the cheapest way to find out what is open.
Risks
- Found — not operator-owned; claim status unknown.
- No Cleared settlement receipt on file yet.
- Uptime not yet marked stable.
- No Gateway traffic yet — market share unproven.
Price posture
Published floor $0.0025 across 10 endpoints.
Category · Gateway
other · no Gateway routes yet — early / unproven on Cleared market share.
Endpoint hints
POST /horoscopeOne horoscope per paying wallet per UTC day, drawn from that day's pool and keyed to the address that paid: ask twice today and the reading is identical, ask to
POST /oracleA short, oblique fortune for the wallet that paid — drawn from the day's pool, stable for the whole UTC day, a different one tomorrow. You may send {"question":
POST /sparkOne creative provocation, written by a model at high temperature the moment you ask: a single vivid sentence or two meant to knock a stuck agent off the line it
POST /obliqueOne original constraint card in the tradition of lateral-thinking decks: a short instruction, reversal or question you can apply to whatever is stuck, written f
POST /brainstormBetween one and five deliberately divergent takes on whatever you are working on, returned as an array of strings. Send {"n": 1-5} for how many (the default is
POST /koanOne koan per paying wallet per UTC day, drawn from that day's pool and keyed to the address that paid: ask twice today and it is identical, ask tomorrow and it
POST /tarotOne card per paying wallet per UTC day from a standard 78-card deck, upright or reversed, with the keywords for that orientation and a one-line reflective meani
POST /fortuneA fortune cookie for the wallet that paid: one line drawn from the day's pool and keyed to the paying address, the same until midnight UTC and a new one after,
Evidence (Cleared)
- → Intake verified · Gateway-eligible
- → Trust 55/100 · fail · tier listed
- → Protocol x402
- → Manifest reachable · schema valid
- → Found listing — indexed from public x402.json, not operator-attested.
Endpoints
buy The daily agent horoscope
$0.0025POST https://penny402.fun/horoscopeOne horoscope per paying wallet per UTC day, drawn from that day's pool and keyed to the address that paid: ask twice today and the reading is identical, ask tomorrow and it is a new one. Written for agents rather than star signs — retries and backoff, stale caches, context windows, schema drift, the comment that stopped being true. It predicts no outcome and stakes nothing. Served from a pre-generated pool: one round trip, no model running while you wait. A flat $0.0025 per call. Unpaid: 402 carrying exactly those terms. Paid: the answer is the response body, synchronously — no job, no polling, nothing that expires. This attraction takes no parameters, so POST {} either way. A GET or HEAD answers the same payable 402 for probing; the sale happens on POST.
buy Ask the oracle
$0.0025POST https://penny402.fun/oracleA short, oblique fortune for the wallet that paid — drawn from the day's pool, stable for the whole UTC day, a different one tomorrow. You may send {"question": "…"} of up to 140 characters: it is echoed back and recorded, but THE ORACLE ANSWERS THE DAY, NOT THE QUESTION — YET. No model runs at serve time, so the question steers nothing in this version and the endpoint says so rather than implying otherwise. Nothing staked, nothing to redeem, one round trip. A flat $0.0025 per call. Unpaid: 402 carrying exactly those terms. Paid: the answer is the response body, synchronously — no job, no polling, nothing that expires. POST {} is a complete call; question is optional. A GET or HEAD answers the same payable 402 for probing; the sale happens on POST.
buy A creative provocation
$0.0025POST https://penny402.fun/sparkOne creative provocation, written by a model at high temperature the moment you ask: a single vivid sentence or two meant to knock a stuck agent off the line it was already on. Send an optional {"topic": "…"} of up to 140 characters and the provocation is aimed at it. Nothing is pooled and nothing is cached, so two calls a second apart are two different lines — and if the model cannot be reached you are told so and charged nothing. A flat $0.0025 per call. Unpaid: 402 carrying exactly those terms. Paid: the answer is the response body, synchronously — no job, no polling, nothing that expires. POST {} is a complete call; topic is optional. A GET or HEAD answers the same payable 402 for probing; the sale happens on POST.
buy An oblique instruction card
$0.0025POST https://penny402.fun/obliqueOne original constraint card in the tradition of lateral-thinking decks: a short instruction, reversal or question you can apply to whatever is stuck, written fresh by a model at high temperature on every call. The cards are ours, never a card from any published deck. An optional {"topic": "…"} of up to 140 characters steers it and reaches the model as its own message. No pool, no cache, and nothing settles unless a card was actually produced. A flat $0.0025 per call. Unpaid: 402 carrying exactly those terms. Paid: the answer is the response body, synchronously — no job, no polling, nothing that expires. POST {} is a complete call; topic is optional. A GET or HEAD answers the same payable 402 for probing; the sale happens on POST.
buy Divergent takes, one to five
$0.0025POST https://penny402.fun/brainstormBetween one and five deliberately divergent takes on whatever you are working on, returned as an array of strings. Send {"n": 1-5} for how many (the default is 3) and an optional {"topic": "…"} of up to 140 characters to aim them. Generated live at high temperature so the takes disagree with each other about what the problem even is, rather than restating one idea five ways. No pool, no cache, and no charge if the model could not answer. A flat $0.0025 per call. Unpaid: 402 carrying exactly those terms. Paid: the answer is the response body, synchronously — no job, no polling, nothing that expires. POST {} is a complete call; topic, n are optional. A GET or HEAD answers the same payable 402 for probing; the sale happens on POST.
buy A koan for the working day
$0.0025POST https://penny402.fun/koanOne koan per paying wallet per UTC day, drawn from that day's pool and keyed to the address that paid: ask twice today and it is identical, ask tomorrow and it is a new one. Short, oblique and about the work — retries, caches, defaults, the lock nobody released, the state nobody is observing. It resolves nothing and advises nothing; that is the form. Served from a pre-generated pool: one round trip, no model running while you wait. A flat $0.0025 per call. Unpaid: 402 carrying exactly those terms. Paid: the answer is the response body, synchronously — no job, no polling, nothing that expires. This attraction takes no parameters, so POST {} either way. A GET or HEAD answers the same payable 402 for probing; the sale happens on POST.
buy The daily card
$0.0025POST https://penny402.fun/tarotOne card per paying wallet per UTC day from a standard 78-card deck, upright or reversed, with the keywords for that orientation and a one-line reflective meaning. The deck is fixed and ships with the service — no model, no shuffle, no store — so the draw is two independent hashes of the paying address and the date: the same card all UTC day, a different one tomorrow, re-derivable by you. It describes a posture to consider, never an outcome and never a financial one. A flat $0.0025 per call. Unpaid: 402 carrying exactly those terms. Paid: the answer is the response body, synchronously — no job, no polling, nothing that expires. This attraction takes no parameters, so POST {} either way. A GET or HEAD answers the same payable 402 for probing; the sale happens on POST.
buy A fortune cookie, and six numbers
$0.0025POST https://penny402.fun/fortuneA fortune cookie for the wallet that paid: one line drawn from the day's pool and keyed to the paying address, the same until midnight UTC and a new one after, plus six numbers between 1 and 99 drawn the same deterministic way. The numbers are pure novelty — there is nothing to play them on, nothing is at risk and nothing is redeemable. They are the printed slip, not a mechanism. Served from a pre-generated pool: one round trip, no model running while you wait. A flat $0.0025 per call. Unpaid: 402 carrying exactly those terms. Paid: the answer is the response body, synchronously — no job, no polling, nothing that expires. This attraction takes no parameters, so POST {} either way. A GET or HEAD answers the same payable 402 for probing; the sale happens on POST.
buy The oracle reads the chain
$0.0025POST https://penny402.fun/prophecyA daily prophecy about the x402 economy for the wallet that paid, drawn from that day's pool and keyed to the paying address: ask twice today and it is identical, ask tomorrow and it is new. The pool is written each night against the real market snapshot from x402stats.io, and those same numbers come back beside the prophecy in `market`, attributed, so you can check it. Novelty and commentary, NOT investment advice: no asset named, no price predicted, nothing to redeem. A flat $0.0025 per call. Unpaid: 402 carrying exactly those terms. Paid: the answer is the response body, synchronously — no job, no polling, nothing that expires. This attraction takes no parameters, so POST {} either way. A GET or HEAD answers the same payable 402 for probing; the sale happens on POST.
buy Roast my wallet
$0.0025POST https://penny402.fun/roast-my-walletAn affectionate roast of the wallet that paid, written from its PUBLIC Base state read at request time: the USDC balance, the native balance, and whether there is code at the address. Those become words — dust, pocket, purse, vault; gas or none; contract or plain — and a hand-written line is picked from them, keyed to your address and the UTC date, so it holds all day. EXACT AMOUNTS ARE NEVER RETURNED OR STORED. Chain unreadable, generic roast: you paid for one either way. A flat $0.0025 per call. Unpaid: 402 carrying exactly those terms. Paid: the answer is the response body, synchronously — no job, no polling, nothing that expires. This attraction takes no parameters, so POST {} either way. A GET or HEAD answers the same payable 402 for probing; the sale happens on POST.
Checks
reachable
valid
2026-09-02T21:47:11.546Z
Intake verified · Verified — Gateway-eligible · probed 3/3 · No settlement evidence found in chain signals.
Gateway routing
Score 55/100 — manifest verified (≥55) but not full attestation (70). Gateway may route with caution; missing receipt settled, uptime, or identity caps the score.
Claim this listing to upgrade to Cleared attestation.
Claim listing