toolshed.lemon-agent.dev: x402 purchase results on Base, latest attempt 2026-09-27
19 Base listings. Latest result about the seller at each listing: 4 delivered · 0 failed on the seller's side · 4 with no such result among the attempts shown · 11 not tried yet. This counts, for each listing, the newest purchase that delivered or the newest failure on the seller's side. Attempts on vet402's side, not bought, not sorted, or awaiting on-chain verification are skipped.
By the latest attempt at each listing, whatever it was: 4 delivered · 0 failed on the seller's side · 0 on vet402's side · 4 not sorted (vet402 cannot show the failure was not its own) · 11 not tried yet.
Latest attempt: 2026-09-27 18:02 UTC. This page read the ledger at 2026-09-29 10:22 UTC and reuses that read for up to 5 min.
1.Your listings
- toolshed.lemon-agent.dev/convert/html-markdownPOST
- Latest attempt
- 2026-09-27 18:02 UTC
- Result
- delivered
- Whose side
- no failure (delivered)
Decision API now: asking… · the full answerWhat we saw: Paid; vet402 confirmed the transfer on-chain and the paid request answered HTTP 200.The 402 terms vet402 paid: exact · 0.006 USDC · payTo 0x0adc…9f9e. Input sent: body empty, query not recorded. The listing's maxTimeoutSeconds is 60; vet402 waits 20 seconds for the paid answer.Signed payment: scheme exact · 0.006 USDC · payTo 0x0adc…9f9e · nonce 0x89cc…bd31 · validBefore not recorded.Answer to the paid request: HTTP 200 · Content-Type text/markdown; charset=utf-8 · no PAYMENT-RESPONSE recorded.The latest purchase delivered. An earlier attempt listed below did not.Recorded (L1 paid purchase):settled(vet402 confirmed the USDC transfer on-chain) · HTTP 200 · tx 0x85750028…8c73In export.csv?days=3: the row withattempted_at2026-09-27T18:02:04Z andresource_keytoolshed.lemon-agent.dev/convert/html-markdown.After a fixNext purchase by vet402: Not before 2026-10-03 18:02 UTC (a listing is bought at most once every 6 days). After that it depends on the daily budget and the order of demand, so this is the earliest date, not a booking.Email me when this result changesDispute this purchaseEarlier attempts- 2026-09-12 00:00 UTC · No record of the input vet402 sent · not sorted: vet402 unproven
settle_failed(vet402 signed a payment and got no settlement receipt back) · HTTP 503 · no txDispute this purchaseWhat vet402 recorded
This purchase is from before vet402 recorded the body and the query it sent on each paid request (the query on Base since 2026-09-27 23:27 UTC), so it cannot show that it sent the input the listing declares. This page does not count the row as the seller's fault.The 402 terms vet402 signed: exact · 0.006 USDC · payTo 0x0adc…9f9e. Input sent: body not recorded, query not recorded. The listing's maxTimeoutSeconds is 60; vet402 waits 20 seconds for the paid answer.Signed payment: scheme exact · 0.006 USDC · payTo 0x0adc…9f9e · nonce 0x1bdd…0c07 · validBefore not recorded.Answer to the paid request: HTTP 503 · Content-Type application/json; charset=utf-8 · no PAYMENT-RESPONSE recorded.Not shown for this row: vet402 has no record of the input it sent. - 2026-09-03 01:00 UTC · delivered · no failure (delivered)
settled(vet402 confirmed the USDC transfer on-chain) · HTTP 200 · tx 0x2db32147…1e5eDispute this purchaseWhat vet402 recorded
Paid; vet402 confirmed the transfer on-chain and the paid request answered HTTP 200.The 402 terms vet402 paid: exact · 0.006 USDC · payTo 0x0adc…9f9e. Input sent: body not recorded, query not recorded. The listing's maxTimeoutSeconds is 60; vet402 waits 20 seconds for the paid answer.Signed payment: scheme exact · 0.006 USDC · payTo 0x0adc…9f9e · nonce not recorded · validBefore not recorded.Answer to the paid request: HTTP 200 · Content-Type text/markdown; charset=utf-8 · no PAYMENT-RESPONSE recorded.
- toolshed.lemon-agent.dev/convert/md-htmlPOST
- Latest attempt
- 2026-09-27 00:02 UTC
- Result
- delivered
- Whose side
- no failure (delivered)
Decision API now: asking… · the full answerWhat we saw: Paid; vet402 confirmed the transfer on-chain and the paid request answered HTTP 200.The 402 terms vet402 paid: exact · 0.004 USDC · payTo 0x0adc…9f9e. Input sent: body empty, query not recorded. The listing's maxTimeoutSeconds is 60; vet402 waits 20 seconds for the paid answer.Signed payment: scheme exact · 0.004 USDC · payTo 0x0adc…9f9e · nonce 0xc18a…d229 · validBefore not recorded.Answer to the paid request: HTTP 200 · Content-Type text/html; charset=utf-8 · no PAYMENT-RESPONSE recorded.The latest purchase delivered. An earlier attempt listed below did not.Recorded (L1 paid purchase):settled(vet402 confirmed the USDC transfer on-chain) · HTTP 200 · tx 0x97f32edd…f9d7In export.csv?days=4: the row withattempted_at2026-09-27T00:02:28Z andresource_keytoolshed.lemon-agent.dev/convert/md-html.After a fixNext purchase by vet402: Not before 2026-10-03 00:02 UTC (a listing is bought at most once every 6 days). After that it depends on the daily budget and the order of demand, so this is the earliest date, not a booking.Email me when this result changesDispute this purchaseEarlier attempts- 2026-09-13 00:02 UTC · vet402's wallet was out of USDC · vet402's side
settle_failed(vet402 signed a payment and got no settlement receipt back) · HTTP 402 · no tx · held aspayer_unfunded(a 402 or 5xx while vet402's Base wallet was out of USDC (2026-09-13 to 2026-09-15))Dispute this purchaseWhat vet402 recorded
Between 2026-09-13 00:00 and 2026-09-15 23:49 UTC, vet402's Base payer wallet had run out of USDC. The seller refused a payment that had nothing behind it (402 or 5xx).The 402 terms vet402 signed: exact · 0.004 USDC · payTo 0x0adc…9f9e. Input sent: body not recorded, query not recorded. The listing's maxTimeoutSeconds is 60; vet402 waits 20 seconds for the paid answer.Signed payment: scheme exact · 0.004 USDC · payTo 0x0adc…9f9e · nonce 0x5a72…3943 · validBefore not recorded.Answer to the paid request: HTTP 402 · Content-Type application/json; charset=utf-8 · no PAYMENT-RESPONSE recorded. - 2026-09-03 01:02 UTC · delivered · no failure (delivered)
settled(vet402 confirmed the USDC transfer on-chain) · HTTP 200 · tx 0xbe6530fa…37c4Dispute this purchaseWhat vet402 recorded
Paid; vet402 confirmed the transfer on-chain and the paid request answered HTTP 200.The 402 terms vet402 paid: exact · 0.004 USDC · payTo 0x0adc…9f9e. Input sent: body not recorded, query not recorded. The listing's maxTimeoutSeconds is 60; vet402 waits 20 seconds for the paid answer.Signed payment: scheme exact · 0.004 USDC · payTo 0x0adc…9f9e · nonce not recorded · validBefore not recorded.Answer to the paid request: HTTP 200 · Content-Type text/html; charset=utf-8 · no PAYMENT-RESPONSE recorded.
- toolshed.lemon-agent.dev/convert/json-yamlPOST
- Latest attempt
- 2026-09-23 12:02 UTC
- Result
- delivered
- Whose side
- no failure (delivered)
Decision API now: · the full answerWhat we saw: Paid; vet402 confirmed the transfer on-chain and the paid request answered HTTP 200.The 402 terms vet402 paid: exact · 0.002 USDC · payTo 0x0adc…9f9e. Input sent: body empty, query not recorded. The listing's maxTimeoutSeconds is 60; vet402 waits 20 seconds for the paid answer.Signed payment: scheme exact · 0.002 USDC · payTo 0x0adc…9f9e · nonce 0x8635…11a8 · validBefore not recorded.Answer to the paid request: HTTP 200 · Content-Type application/yaml; charset=utf-8 · no PAYMENT-RESPONSE recorded.The latest purchase delivered. An earlier attempt listed below did not.Recorded (L1 paid purchase):settled(vet402 confirmed the USDC transfer on-chain) · HTTP 200 · tx 0x2fcfc221…e6a0In export.csv?days=7: the row withattempted_at2026-09-23T12:02:27Z andresource_keytoolshed.lemon-agent.dev/convert/json-yaml.After a fixNext purchase by vet402: Not before 2026-09-29 12:02 UTC (a listing is bought at most once every 6 days). After that it depends on the daily budget and the order of demand, so this is the earliest date, not a booking.Email me when this result changesDispute this purchaseEarlier attempts- 2026-09-12 00:00 UTC · No record of the input vet402 sent · not sorted: vet402 unproven
settle_failed(vet402 signed a payment and got no settlement receipt back) · HTTP 503 · no txDispute this purchaseWhat vet402 recorded
This purchase is from before vet402 recorded the body and the query it sent on each paid request (the query on Base since 2026-09-27 23:27 UTC), so it cannot show that it sent the input the listing declares. This page does not count the row as the seller's fault.The 402 terms vet402 signed: exact · 0.002 USDC · payTo 0x0adc…9f9e. Input sent: body not recorded, query not recorded. The listing's maxTimeoutSeconds is 60; vet402 waits 20 seconds for the paid answer.Signed payment: scheme exact · 0.002 USDC · payTo 0x0adc…9f9e · nonce 0x4784…a854 · validBefore not recorded.Answer to the paid request: HTTP 503 · Content-Type application/json; charset=utf-8 · no PAYMENT-RESPONSE recorded.Not shown for this row: vet402 has no record of the input it sent. - 2026-09-03 12:08 UTC · delivered · no failure (delivered)
settled(vet402 confirmed the USDC transfer on-chain) · HTTP 200 · tx 0x1e75eb6d…a9f3Dispute this purchaseWhat vet402 recorded
Paid; vet402 confirmed the transfer on-chain and the paid request answered HTTP 200.The 402 terms vet402 paid: exact · 0.002 USDC · payTo 0x0adc…9f9e. Input sent: body not recorded, query not recorded. The listing's maxTimeoutSeconds is 60; vet402 waits 20 seconds for the paid answer.Signed payment: scheme exact · 0.002 USDC · payTo 0x0adc…9f9e · nonce not recorded · validBefore not recorded.Answer to the paid request: HTTP 200 · Content-Type application/yaml; charset=utf-8 · no PAYMENT-RESPONSE recorded.
- toolshed.lemon-agent.dev/convert/csv-jsonPOST
- Latest attempt
- 2026-09-23 00:00 UTC
- Result
- delivered
- Whose side
- no failure (delivered)
Decision API now: · the full answerWhat we saw: Paid; vet402 confirmed the transfer on-chain and the paid request answered HTTP 200.The 402 terms vet402 paid: exact · 0.002 USDC · payTo 0x0adc…9f9e. Input sent: body empty, query not recorded. The listing's maxTimeoutSeconds is 60; vet402 waits 20 seconds for the paid answer.Signed payment: scheme exact · 0.002 USDC · payTo 0x0adc…9f9e · nonce 0x0c72…c49e · validBefore not recorded.Answer to the paid request: HTTP 200 · Content-Type application/json; charset=utf-8 · no PAYMENT-RESPONSE recorded.Recorded (L1 paid purchase):settled(vet402 confirmed the USDC transfer on-chain) · HTTP 200 · tx 0x3ae958d2…b0beIn export.csv?days=8: the row withattempted_at2026-09-23T00:00:29Z andresource_keytoolshed.lemon-agent.dev/convert/csv-json.After a fixNext purchase by vet402: The regular sweep can pick this listing again since 2026-09-29 00:00 UTC (a listing is bought at most once every 6 days). When it does depends on the daily budget and the order of demand, so there is no booked date.Email me when this result changesDispute this purchase - toolshed.lemon-agent.dev/convert/frontmatter-jsonPOST
- Latest attempt
- 2026-09-19 12:08 UTC
- Result
- Refused, and no payment was taken
- Whose side
- not sorted: no charge
Decision API now: · the full answerWhat we saw: vet402 signed the payment and the paid request got a 4xx other than 402, with no settlement receipt and no transaction on the row. No money moved, and vet402 cannot rule out that its own request was the problem (held_reason unsettled_4xx), so this page does not count the row as the seller's fault. Since 2026-09-16 23:25 UTC vet402 sends the request body the seller's 402 declares (an empty JSON body when it declares none), and since 2026-09-27 23:27 UTC it adds the query parameters the seller's 402 declares on Base.Last result about the seller: none among the attempts shown. The latest attempt is not sorted; there has been no attempt since.The 402 terms vet402 signed: exact · 0.004 USDC · payTo 0x0adc…9f9e. Input sent: body empty, query not recorded. The listing's maxTimeoutSeconds is 60; vet402 waits 20 seconds for the paid answer.Signed payment: scheme exact · 0.004 USDC · payTo 0x0adc…9f9e · nonce 0x039d…5b18 · validBefore not recorded.Answer to the paid request: HTTP 400 · Content-Type application/json; charset=utf-8 · no PAYMENT-RESPONSE recorded.What to fix: This page does not count it as the seller's fault. If the request was meant to succeed, declare the input in the listing (body or query) with example values that work as written.Recorded (L1 attempt; vet402 signed a payment, not settled on-chain):settle_failed(vet402 signed a payment and got no settlement receipt back) · HTTP 400 · no tx · held asunsettled_4xx(the paid request got a 4xx with no settlement receipt and no transaction)In export.csv?days=11: the row withattempted_at2026-09-19T12:08:09Z andresource_keytoolshed.lemon-agent.dev/convert/frontmatter-json.After a fixNext purchase by vet402: The regular sweep can pick this listing again since 2026-09-25 12:08 UTC (a listing is bought at most once every 6 days). When it does depends on the daily budget and the order of demand, so there is no booked date.Email me when this result changesDispute this purchase - toolshed.lemon-agent.dev/convert/json-tomlPOST
- Latest attempt
- 2026-09-06 19:02 UTC
- Result
- No record of the input vet402 sent
- Whose side
- not sorted: vet402 unproven
Decision API now: · the full answerWhat we saw: This purchase is from before vet402 recorded the body and the query it sent on each paid request (the query on Base since 2026-09-27 23:27 UTC), so it cannot show that it sent the input the listing declares. This page does not count the row as the seller's fault.Last result about the seller: none among the attempts shown. The latest attempt is not sorted; there has been no attempt since.The 402 terms vet402 signed: exact · 0.004 USDC · payTo 0x0adc…9f9e. Input sent: body not recorded, query not recorded. The listing's maxTimeoutSeconds is 60; vet402 waits 20 seconds for the paid answer.Signed payment: scheme exact · 0.004 USDC · payTo 0x0adc…9f9e · nonce 0x7924…cb6d · validBefore not recorded.Answer to the paid request: HTTP 503 · Content-Type application/json; charset=utf-8 · no PAYMENT-RESPONSE recorded.What to fix: This page does not count it as the seller's fault.Not shown for this row: vet402 has no record of the input it sent.Recorded (L1 attempt; vet402 signed a payment, not settled on-chain):settle_failed(vet402 signed a payment and got no settlement receipt back) · HTTP 503 · no txIn export.csv?days=24: the row withattempted_at2026-09-06T19:02:01Z andresource_keytoolshed.lemon-agent.dev/convert/json-toml.After a fixNext purchase by vet402: The regular sweep can pick this listing again since 2026-09-12 19:02 UTC (a listing is bought at most once every 6 days). When it does depends on the daily budget and the order of demand, so there is no booked date.Email me when this result changesDispute this purchase - toolshed.lemon-agent.dev/convert/html-jsonPOST
- Latest attempt
- 2026-09-06 19:01 UTC
- Result
- No record of the input vet402 sent
- Whose side
- not sorted: vet402 unproven
Decision API now: · the full answerWhat we saw: This purchase is from before vet402 recorded the body and the query it sent on each paid request (the query on Base since 2026-09-27 23:27 UTC), so it cannot show that it sent the input the listing declares. This page does not count the row as the seller's fault.Last result about the seller: none among the attempts shown. The latest attempt is not sorted; there has been no attempt since.The 402 terms vet402 signed: exact · 0.006 USDC · payTo 0x0adc…9f9e. Input sent: body not recorded, query not recorded. The listing's maxTimeoutSeconds is 60; vet402 waits 20 seconds for the paid answer.Signed payment: scheme exact · 0.006 USDC · payTo 0x0adc…9f9e · nonce 0x8d0d…4d51 · validBefore not recorded.Answer to the paid request: HTTP 503 · Content-Type application/json; charset=utf-8 · no PAYMENT-RESPONSE recorded.What to fix: This page does not count it as the seller's fault.Not shown for this row: vet402 has no record of the input it sent.Recorded (L1 attempt; vet402 signed a payment, not settled on-chain):settle_failed(vet402 signed a payment and got no settlement receipt back) · HTTP 503 · no txIn export.csv?days=24: the row withattempted_at2026-09-06T19:01:01Z andresource_keytoolshed.lemon-agent.dev/convert/html-json.After a fixNext purchase by vet402: The regular sweep can pick this listing again since 2026-09-12 19:01 UTC (a listing is bought at most once every 6 days). When it does depends on the daily budget and the order of demand, so there is no booked date.Email me when this result changesDispute this purchase - toolshed.lemon-agent.dev/convert/yaml-jsonPOST
- Latest attempt
- 2026-09-04 12:09 UTC
- Result
- No record of the input vet402 sent
- Whose side
- not sorted: vet402 unproven
Decision API now: · the full answerWhat we saw: This purchase is from before vet402 recorded the body and the query it sent on each paid request (the query on Base since 2026-09-27 23:27 UTC), so it cannot show that it sent the input the listing declares. This page does not count the row as the seller's fault.Last result about the seller: none among the attempts shown. The latest attempt is not sorted; there has been no attempt since.The 402 terms vet402 signed: exact · 0.002 USDC · payTo 0x0adc…9f9e. Input sent: body not recorded, query not recorded. The listing's maxTimeoutSeconds is 60; vet402 waits 20 seconds for the paid answer.Signed payment: scheme exact · 0.002 USDC · payTo 0x0adc…9f9e · nonce 0x4264…1c93 · validBefore not recorded.Answer to the paid request: HTTP 503 · Content-Type application/json; charset=utf-8 · no PAYMENT-RESPONSE recorded.What to fix: This page does not count it as the seller's fault.Not shown for this row: vet402 has no record of the input it sent.Recorded (L1 attempt; vet402 signed a payment, not settled on-chain):settle_failed(vet402 signed a payment and got no settlement receipt back) · HTTP 503 · no txIn export.csv?days=26: the row withattempted_at2026-09-04T12:09:55Z andresource_keytoolshed.lemon-agent.dev/convert/yaml-json.After a fixNext purchase by vet402: The regular sweep can pick this listing again since 2026-09-10 12:09 UTC (a listing is bought at most once every 6 days). When it does depends on the daily budget and the order of demand, so there is no booked date.Email me when this result changesDispute this purchase - toolshed.lemon-agent.dev/convert/csv-yamlPOST
- Latest attempt
- not tried yet
- Result
- —
- Whose side
- —
vet402 has not tried to buy this listing yet.After a fixEmail me when this result changes - toolshed.lemon-agent.dev/convert/html-textPOST
- Latest attempt
- not tried yet
- Result
- —
- Whose side
- —
vet402 has not tried to buy this listing yet.After a fixEmail me when this result changes - toolshed.lemon-agent.dev/convert/json-csvPOST
- Latest attempt
- not tried yet
- Result
- —
- Whose side
- —
vet402 has not tried to buy this listing yet.After a fixEmail me when this result changes - toolshed.lemon-agent.dev/convert/json-ndjsonPOST
- Latest attempt
- not tried yet
- Result
- —
- Whose side
- —
vet402 has not tried to buy this listing yet.After a fixEmail me when this result changes - toolshed.lemon-agent.dev/convert/markdown-jsonPOST
- Latest attempt
- not tried yet
- Result
- —
- Whose side
- —
vet402 has not tried to buy this listing yet.After a fixEmail me when this result changes - toolshed.lemon-agent.dev/convert/ndjson-jsonPOST
- Latest attempt
- not tried yet
- Result
- —
- Whose side
- —
vet402 has not tried to buy this listing yet.After a fixEmail me when this result changes - toolshed.lemon-agent.dev/convert/srt-vttPOST
- Latest attempt
- not tried yet
- Result
- —
- Whose side
- —
vet402 has not tried to buy this listing yet.After a fixEmail me when this result changes - toolshed.lemon-agent.dev/convert/toml-jsonPOST
- Latest attempt
- not tried yet
- Result
- —
- Whose side
- —
vet402 has not tried to buy this listing yet.After a fixEmail me when this result changes - toolshed.lemon-agent.dev/convert/vtt-srtPOST
- Latest attempt
- not tried yet
- Result
- —
- Whose side
- —
vet402 has not tried to buy this listing yet.After a fixEmail me when this result changes - toolshed.lemon-agent.dev/convert/xml-jsonPOST
- Latest attempt
- not tried yet
- Result
- —
- Whose side
- —
vet402 has not tried to buy this listing yet.After a fixEmail me when this result changes - toolshed.lemon-agent.dev/convert/yaml-csvPOST
- Latest attempt
- not tried yet
- Result
- —
- Whose side
- —
vet402 has not tried to buy this listing yet.After a fixEmail me when this result changes
2.How to read this
Each listing shows its latest attempt on Base and up to four earlier ones. A row where vet402 signed a payment and sent the paid request is an L1 result: “Recorded (L1 paid purchase)” when the payment settled on-chain, and “signed, not settled on-chain” when it did not. A row where vet402 did not sign is marked “not bought” and is not an L1 result. The listing's record page also shows the L0 state (“Published state”), which checks that an unpaid request gets a valid 402, so a listing can pass L0 and still fail here. Whose side puts a failure on the seller's side when the row shows vet402 was not at fault: it signed on the listing's terms, its wallet held the price, it sent the declared input, and the seller answered explicitly or had its declared time. Even then, one such failure is “not sorted: one failure so far”: a failure goes on the seller's side only when the same listing has one on two different days (UTC), and those rows are marked “under re-check” while we re-check them. A row that cannot show all of that is “not sorted”, and so is a held row (held_reason in the export), a failure where no payment was taken (“no charge”), and a payment that settled before the seller refused an input vet402 had not sent. “Signed payment” and “Answer to the paid request” show what the row recorded, and nothing else: the answer's body and header values are not published. The maxTimeoutSeconds on a row is the listing's value today; a declared price or address on a not-bought row is the value recorded at the time of the attempt. The transaction link opens the settlement on Basescan. “Decision API now” is what the decision API (GET /api/v1/resources/{id}/decision?role=payer, no key) answers for the listing when you open this page; your browser asks it for the first 2 listings, and for the others when you ask. Where no money moved, it counts a failure only when this page puts it on the seller's side, and then only toward a WARN. Where money moved, it is cautious for the payer: a paid attempt that took payment and did not deliver counts even when this page leaves it not sorted, and two of them since the last delivery are the only way a failed purchase makes it BLOCK. So it can say WARN or BLOCK for a listing whose failures this page leaves not sorted. The codes that decided the answer come first, each with one sentence on what it means for that listing (reason codes). “After a fix” gives the earliest date vet402's regular sweep can buy the listing again, where the rules let it be worked out, and the links to be told of a change or to dispute a row. Listings removed from the Bazaar, and listings whose catalog network is not Base, are not on this page. The fix-first page groups the same results across sellers (methodology).
3.Think a row is wrong?
Use “Dispute this purchase” on the row: it opens Dispute this record on the listing's record page with the purchase time filled in. Say what you saw instead. The row is not deleted on dispute; a correction is published with the same weight.