Skip to main content
Independent MeasurementEndpoint record (L0 · L1)Published state: passLast probed: 2026-09-28 · 1 day ago

api.exa.ai/search

1.Catalog declaration

Catalog declaration for this endpoint
Resource URLhttps://api.exa.ai/search
Sourcecdp_bazaar
Declared methodPOST
Networkeip155:8453
Receiving address0x6d6e695b09861467c7d462f5aaf31cf3540b9192
Declared price (base units)7000
Catalog statusactive
First seen / last seen2026-08-14 08:39 UTC / 2026-09-29 01:02 UTC
Catalog-reported calls / payers (30d)6,624 / 89

2.Probe history

2026-09-092026-09-28
Figure 1. Probe timeline, last 30 probes for this endpoint (UTC). Filled = pass, crossed = fail, dashed = unverified. Same-day probes overlap. Marks closer than one mark width are stepped down one lane.
L0 probe history, newest first
Probed atMethodVerdictHTTPLatencyReason
2026-09-28 22:40 UTCPOSTpass402415 ms—
2026-09-28 04:40 UTCPOSTpass402431 ms—
2026-09-27 13:40 UTCPOSTpass402560 ms—
2026-09-26 22:40 UTCPOSTpass402408 ms—
2026-09-26 04:40 UTCPOSTpass402153 ms—
2026-09-25 13:40 UTCPOSTpass402324 ms—
2026-09-24 16:40 UTCPOSTpass402200 ms—
2026-09-23 22:40 UTCPOSTpass402267 ms—
2026-09-23 04:40 UTCPOSTpass402472 ms—
2026-09-22 13:40 UTCPOSTpass402177 ms—
2026-09-21 16:40 UTCPOSTpass402294 ms—
2026-09-20 22:40 UTCPOSTpass402251 ms—
2026-09-20 04:40 UTCPOSTpass402560 ms—
2026-09-19 13:40 UTCPOSTpass402295 ms—
2026-09-18 22:40 UTCPOSTpass402404 ms—
2026-09-18 04:40 UTCPOSTpass402222 ms—
2026-09-17 13:40 UTCPOSTpass402322 ms—
2026-09-16 16:40 UTCPOSTpass402302 ms—
2026-09-15 22:40 UTCPOSTpass402443 ms—
2026-09-15 04:40 UTCPOSTpass402142 ms—
2026-09-14 16:40 UTCPOSTpass402275 ms—
2026-09-13 22:40 UTCPOSTpass402206 ms—
2026-09-13 13:40 UTCPOSTpass4022156 ms—
2026-09-12 16:40 UTCPOSTpass402274 ms—
2026-09-12 04:40 UTCPOSTpass402384 ms—
2026-09-11 16:40 UTCPOSTpass402338 ms—
2026-09-10 23:40 UTCPOSTpass4022123 ms—
2026-09-10 14:40 UTCPOSTpass402157 ms—
2026-09-09 23:40 UTCPOSTpass402170 ms—
2026-09-09 05:40 UTCPOSTpass402105 ms—

3.L1 — real purchases

25 of 27 paid attempts settled with a receipt, and 10 of those also returned a 2xx response (delivered). Each settled row carries its on-chain transaction hash — the receipt is the evidence. 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.

17 of those paid attempts are held as inconclusive rather than counted against this seller (15 settled and answered 4xx, 0 answered 4xx with no settlement receipt, 2 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).

2 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

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.
settle_failed
vet402 signed a payment and got no settlement receipt back.
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).
settled_4xx
held_reason in the export: the payment settled, then the paid request got a 4xx.
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).
L2 no_declaration
the listing declares no output schema to check the response against.
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).
25/27(20 cells, proportional)
Figure 2. Settle-through: one cell per paid attempt. Filled = settled with an on-chain receipt, crossed = signed, and not settled on-chain.
L1 purchase history, newest first
Attempted atResultHTTPReceipt (tx)Latency
09-29 00:00settled (nonce-bound)2000xcfd31f4d…30281334 ms
7000 units (≈ $0.007 USDC) · L2 no_declarationWhose side: no failure (delivered)
09-27 12:01settled (nonce-bound)2000xee6dc7aa…752a1936 ms
7000 units (≈ $0.007 USDC) · L2 no_declarationWhose side: no failure (delivered)
09-26 06:01settled (nonce-bound)2000x97a14859…c70d1609 ms
7000 units (≈ $0.007 USDC) · L2 no_declarationWhose side: no failure (delivered)
09-25 00:02settled (nonce-bound)2000x620dbd40…fdcd1915 ms
7000 units (≈ $0.007 USDC) · L2 no_declarationWhose side: no failure (delivered)
09-23 18:01settled (nonce-bound)2000xd4aa59e5…7d7b2128 ms
7000 units (≈ $0.007 USDC) · L2 no_declarationWhose side: no failure (delivered)
09-22 12:09settled (nonce-bound)2000xfcaa5f5c…09ae1490 ms
7000 units (≈ $0.007 USDC) · L2 no_declarationWhose side: no failure (delivered)
09-21 06:01settled (nonce-bound)2000x5503269c…06c41956 ms
7000 units (≈ $0.007 USDC) · L2 no_declarationWhose side: no failure (delivered)
09-20 00:00settled (nonce-bound)2000xf38fb996…62735421 ms
7000 units (≈ $0.007 USDC) · L2 no_declarationWhose side: no failure (delivered)
09-18 18:00settled (nonce-bound)2000xcf61550b…ac121724 ms
7000 units (≈ $0.007 USDC) · L2 no_declarationWhose side: no failure (delivered)
09-17 12:52settled (nonce-bound)2000x1c04fc33…e5711608 ms
7000 units (≈ $0.007 USDC) · L2 no_declarationWhose side: no failure (delivered)
09-16 12:08settled (nonce-bound)4000x3842503e…8a831306 ms
7000 units (≈ $0.007 USDC) · L2 not_checkedWhose side: not sorted: charged, then rejected an input vet402 had not sent
09-15 06:00settle_failed402—565 ms
7000 units (≈ $0.007 USDC) · L2 not_checkedWhose side: vet402's side
09-13 18:00settle_failed402—481 ms
7000 units (≈ $0.007 USDC) · L2 not_checkedWhose side: vet402's side
09-12 12:08settled (nonce-bound)4000xd0e5a539…c6211264 ms
7000 units (≈ $0.007 USDC) · L2 not_checkedWhose side: not sorted: charged, then rejected an input vet402 had not sent
09-11 06:02settled (nonce-bound)4000x86e9315c…060f1497 ms
7000 units (≈ $0.007 USDC) · L2 not_checkedWhose side: not sorted: charged, then rejected an input vet402 had not sent
09-10 01:00settled (nonce-bound)4000x60171552…e4b11453 ms
7000 units (≈ $0.007 USDC) · L2 not_checkedWhose side: not sorted: charged, then rejected an input vet402 had not sent
09-08 19:00settled (nonce-bound)4000x8609ab1f…21711517 ms
7000 units (≈ $0.007 USDC) · L2 not_checkedWhose side: not sorted: charged, then rejected an input vet402 had not sent
09-01 12:07settled (amount + payee)4000x2b59b5f7…ede11773 ms
7000 units (≈ $0.007 USDC) · L2 not_checkedWhose side: not sorted: charged, then rejected an input vet402 had not sent
08-30 12:07settled (amount + payee)4000x3810a2fb…67791283 ms
7000 units (≈ $0.007 USDC) · L2 not_checkedWhose side: not sorted: charged, then rejected an input vet402 had not sent
08-28 12:18settled (amount + payee)4000xa6e6d57f…d5571294 ms
7000 units (≈ $0.007 USDC) · L2 not_checkedWhose side: not sorted: charged, then rejected an input vet402 had not sent

Embed this record

Run this endpoint? Show the settle-through record vet402 measured — the badge reads 25/25 settled · 10 delivered · 15 inconclusive · vet402 side 2 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.

vet402: 25 of 25 paid attempts settled with an on-chain receipt, and 10 of those also returned a 2xx response. settled is the confirmed transfer; delivered is the response arriving. 15 paid attempts are held as inconclusive rather than counted against the seller: a paid request that answered 4xx, settled or not, can be our own request being malformed, because vet402 buys with no API key and sends a request body only when the seller declares one; and a 402 or 5xx from 2026-09-13 to 2026-09-15 came while vet402's own payer wallet was out of USDC. 2 further paid attempts failed on vet402's side (for example its wallet was out of USDC, or it did not send the input the listing declares) and are left out of these counts. A measurement of what happened when vet402 paid this endpoint, not a recommendation. (api.exa.ai · measured 2026-09-29)

[![vet402 receipt](https://vet402.com/api/badge/endpoint/521e929e-5f89-4603-a964-d1812caf118f.svg)](https://vet402.com/observatory/e/521e929e-5f89-4603-a964-d1812caf118f)

Get one email when this record's verdict changes. No digest, no marketing — one message per change, and only for this endpoint. We first send one confirmation email; nothing else goes out until you confirm.

4.Catalog listing events

No listing changes observed.

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.

About the purchase at 2026-09-25T00:02:17Z (UTC). The form starts with that time; add what you saw instead.

20–2,000 characters · 59 so far