weather.payapi.market/current
1.Catalog declaration
| Resource URL | https://weather.payapi.market/current |
| Source | cdp_bazaar |
| Declared method | POST |
| Network | eip155:8453 |
| Receiving address | 0xffc458db291b4abce020fe3de4f91f2770e537b1 |
| Declared price (base units) | 1000 |
| Catalog status | delisted (since 2026-09-17 01:03 UTC) |
| First seen / last seen | 2026-08-14 08:39 UTC / 2026-09-16 01:03 UTC |
| Catalog-reported calls / payers (30d) | 67 / 33 |
2.Probe history
| Probed at | Method | Verdict | HTTP | Latency | Reason |
|---|---|---|---|---|---|
| 2026-09-16 13:40 UTC | POST | unverified | — | 127 ms | tlsThe TLS handshake failed; vet402 cannot tell its own side from the seller's, so nothing is published against the seller. |
| 2026-09-15 16:40 UTC | POST | pass | 402 | 246 ms | — |
| 2026-09-14 22:40 UTC | POST | pass | 402 | 142 ms | — |
| 2026-09-14 04:40 UTC | POST | pass | 402 | 169 ms | — |
| 2026-09-13 16:40 UTC | POST | pass | 402 | 148 ms | — |
| 2026-09-13 04:40 UTC | POST | pass | 402 | 338 ms | — |
| 2026-09-12 13:40 UTC | POST | pass | 402 | 115 ms | — |
| 2026-09-11 22:40 UTC | POST | pass | 402 | 233 ms | — |
| 2026-09-11 04:40 UTC | POST | pass | 402 | 235 ms | — |
| 2026-09-10 17:40 UTC | POST | pass | 402 | 173 ms | — |
| 2026-09-10 05:40 UTC | POST | pass | 402 | 305 ms | — |
| 2026-09-09 17:40 UTC | POST | pass | 402 | 294 ms | — |
| 2026-09-08 23:40 UTC | POST | pass | 402 | 138 ms | — |
| 2026-09-08 14:40 UTC | POST | pass | 402 | 286 ms | — |
| 2026-09-07 23:40 UTC | POST | pass | 402 | 2102 ms | — |
| 2026-09-07 14:40 UTC | POST | pass | 402 | 231 ms | — |
| 2026-09-06 23:40 UTC | POST | pass | 402 | 177 ms | — |
| 2026-09-06 14:40 UTC | POST | pass | 402 | 143 ms | — |
| 2026-09-05 23:40 UTC | POST | pass | 402 | 176 ms | — |
| 2026-09-05 14:40 UTC | POST | pass | 402 | 270 ms | — |
| 2026-09-04 23:40 UTC | POST | pass | 402 | 176 ms | — |
| 2026-09-04 14:40 UTC | POST | pass | 402 | 282 ms | — |
| 2026-08-14 08:52 UTC | POST | pass | 402 | 168 ms | — |
3.L1 — real purchases
2 of 5 paid attempts settled on-chain, and 0 of those also returned a 2xx response (delivered). Each settled row carries its on-chain transaction hash, and that transaction is the evidence. On this page a receipt means the seller's own settlement receipt (PAYMENT-RESPONSE); a settled row can have none (see “tx from our index”). A settled row reads as nonce-bound when the on-chain re-read also matched the one-time signature nonce we generated for that purchase, and amount + payee when it matched amount, payee, asset and chain with no nonce on record — the binding shipped on 2026-09-04, so earlier rows carry the weaker evidence and keep their label rather than being demoted (methodology). settled is the transfer we confirmed on-chain; delivered is the response arriving. A settled row whose paid request answered 5xx counts as settled and not as delivered — definitions.
A row marked tx from our index came back with no settlement receipt from the seller. Our own index of on-chain settlements found the transfer afterwards — our payer, this endpoint's payee, the exact amount, inside the time window — and the row goes through the same on-chain re-read as any other before it reads settled. The seller did not name that transaction; we did (methodology).
5 of those paid attempts are held as inconclusive rather than counted against this seller (2 settled and answered 4xx, 2 answered 4xx with no settlement receipt, 1 answered 402 or 5xx while our own payer wallet was out of USDC, 2026-09-13 00:00 to 2026-09-15 23:49 UTC). A 4xx says the request was not one the server would accept, and we cannot rule out that the request was ours to get wrong: vet402 buys with no API key of the seller's, and sends a POST body only when the seller declares one. This is the same principle the methodology already applied to path_template URLs, applied to the body and the authentication header as well. The rows are not deleted and not hidden — they are below, with their status and HTTP code, and they are out of the denominator for delivered (corrections).
3 of the paid attempts failed on vet402's side (for example our wallet was out of USDC, or we did not send the input the listing declares). The rows stay in the table; the embeddable badge below leaves them out of its count and names them as “vet402 side”.
Terms in this table
settle_failed- vet402 signed a payment and got no settlement receipt back.
settled (nonce-bound)- vet402 confirmed the USDC transfer on-chain, and the on-chain re-read also matched the one-time nonce vet402 signed for that purchase.
settled (amount + payee)- vet402 confirmed the USDC transfer on-chain; the on-chain re-read matched amount, payee, asset and chain; no nonce was on record (rows before 2026-09-04).
payer_unfunded- held_reason in the export: a 402 or 5xx while vet402's Base wallet was out of USDC (2026-09-13 to 2026-09-15).
settled_4xx- held_reason in the export: the payment settled, then the paid request got a 4xx.
unsettled_4xx- held_reason in the export: the paid request got a 4xx with no settlement receipt and no transaction.
L2 not_checked- not checked: the paid request did not answer 200, so there was no response to check against the listing's output schema.
Whose side- the same words as the seller page: seller's side only after failures on two different days (UTC), marked “under re-check”; vet402's side; or not sorted (the rules).
| Attempted at | Result | HTTP | On-chain tx | Latency |
|---|---|---|---|---|
| 09-15 06:002026-09-15 06:00 UTC | settle_failed | 402 | — | 611 ms |
| 1000 units (≈ $0.001 USDC) · L2 not_checkedWhose side: vet402's side | ||||
| 09-08 19:002026-09-08 19:00 UTC | settled (nonce-bound)tx from our index | 422 | 0x30fd385b…2bd1 | 1677 ms |
| 1000 units (≈ $0.001 USDC) · L2 not_checkedWhose side: not sorted: charged, then rejected an input vet402 had not sent | ||||
| 08-27 12:302026-08-27 12:30 UTC | settled (amount + payee)tx from our index | 422 | 0xedc86bfb…68e3 | 1301 ms |
| 1000 units (≈ $0.001 USDC) · L2 not_checkedWhose side: not sorted: charged, then rejected an input vet402 had not sent | ||||
| 08-20 12:542026-08-20 12:54 UTC | settle_failed | 422 | — | 1285 ms |
| 1000 units (≈ $0.001 USDC) · L2 not_checkedWhose side: vet402's side | ||||
| 08-14 09:542026-08-14 09:54 UTC | settle_failed | 422 | — | 1815 ms |
| 1000 units (≈ $0.001 USDC) · L2 not_checkedWhose side: vet402's side | ||||
Embed this record
Run this endpoint? Show the settle-through record vet402 measured — the badge reads 2/2 settled · 0 delivered · 2 inconclusive · vet402 side 3 and updates as the record grows. It carries the host it is about and the date it was last measured, so a saved copy cannot pass itself off as current. It states a measurement, not a rating.
[](https://vet402.com/observatory/e/e25e7ae3-01d0-4e99-bf7b-2401718925ff)4.Catalog listing events
| Detected on | Event | Before | After |
|---|---|---|---|
| 2026-09-17 | delisted | {"status":"active"} | {"status":"delisted"} |
unverified is not a failure; a fail is published only after two consecutive failing probes. Definitions: methodology.
5.Dispute this record
Think a measurement above is wrong? Say which probe or purchase and what you observed instead. One person reads it and replies. The record is never deleted on dispute: if it was wrong, the correction is published with the same weight; if it was right, it stands. Operators who control the receiving address can also sign a dispute via POST /api/v1/observatory/disputes (API reference), which re-measures through the normal publication gate.