blockrun.ai/api/v1/surf/market/etf
Withdrawn from the catalog. This route is absent from a complete fetch of the public discovery catalog, so it is left out of the public L0 fail count.
1.Catalog declaration
| Resource URL | https://blockrun.ai/api/v1/surf/market/etf |
| Source | cdp_bazaar |
| Declared method | GET |
| Catalog network | eip155:8453 |
| Receiving address | 0x058a5961fbe8cd8e4b47c69d3d82e159cb5d8f17 |
| Declared price (base units) | 8500 |
| Catalog status | delisted (since 2026-09-08 01:03 UTC) |
| First seen / last seen | 2026-08-21 01:57 UTC / 2026-09-07 01:03 UTC |
| Catalog-reported calls / payers (30d) | 4 / 1 |
2.Probe history
| Probed at | Method | Verdict | HTTP | Latency | Reason |
|---|---|---|---|---|---|
| 2026-09-07 17:40 UTC | GET | fail | 410 | 118 ms | no_402HTTP 410 instead of 402 to an unpaid GET. |
| 2026-09-07 05:40 UTC | GET | fail | 410 | 122 ms | no_402HTTP 410 instead of 402 to an unpaid GET. |
| 2026-09-06 17:40 UTC | GET | pass | 402 | 55 ms | — |
| 2026-09-06 05:40 UTC | GET | pass | 402 | 262 ms | — |
| 2026-09-05 17:40 UTC | GET | pass | 402 | 108 ms | — |
| 2026-09-05 05:40 UTC | GET | pass | 402 | 505 ms | — |
| 2026-09-04 17:40 UTC | GET | pass | 402 | 2024 ms | — |
| 2026-09-04 05:40 UTC | GET | pass | 402 | 222 ms | — |
| 2026-09-03 17:40 UTC | GET | pass | 402 | 363 ms | — |
| 2026-09-03 05:40 UTC | GET | pass | 402 | 196 ms | — |
| 2026-09-02 23:40 UTC | GET | pass | 402 | 175 ms | — |
| 2026-09-02 14:40 UTC | GET | pass | 402 | 321 ms | — |
3.L1 — real purchases
0 of 1 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 matched the one-time value stored for that purchase, so the transaction is the one for this purchase. Stellar is not in this count. The Stellar re-read checks payer, payee, amount and asset. A row reads as amount + payee when the re-read matched payer, payee, amount and asset and did not bind a one-time value. That tier holds rows from before 2026-09-04 and Stellar rows. They keep the settled label rather than being demoted (methodology). settled is the transfer vet402 confirmed on-chain. delivered is the response arriving. A settled row whose paid request answered 5xx counts as settled and not as delivered. definitions.
1 of those paid attempts are held as inconclusive rather than counted against this seller (0 settled and answered 4xx, 1 answered 4xx with no settlement receipt, 0 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).
Terms in this table
settle_failed- vet402 signed a payment and got no settlement receipt back.
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 “attribution under review”; vet402's side; or not sorted (the rules).
| Attempted at | Result | HTTP | On-chain tx | Payment chain | Latency |
|---|---|---|---|---|---|
| 09-05 07:012026-09-05 07:01 UTC | settle_failed (withdrawn from the catalog) | 400 | — | Base | 516 ms |
| 8500 units (≈ $0.0085 USDC) · L2 not_checkedWhose side: not sorted: no chargeLeft out of the public L0 fail count. | |||||
4.Catalog listing events
| Detected on | Event | Before | After |
|---|---|---|---|
| 2026-09-08 | 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
A dispute does not start a purchase. The signed dispute route runs one fresh L0 check, an unpaid request.
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. This listing is not active in the catalog, so a dispute filed on the record form does not put it on the re-probe list. The record stays on this page. The scheduled L0 run is at 10:30 UTC. This listing is not on that run. Send the dispute to support@vet402.com. Published corrections are listed at /corrections. Operators who control the receiving address can also sign a dispute via POST /api/v1/observatory/disputes (API reference). That route runs one fresh L0 check under the normal publication gate. A later purchase comes from the regular schedule.