x402 census · graphadvocate.com · a9a4b6f68162 · JSON
POST /kalshi-polymarket/spread
402-malformed
Cross-source arbitrage spread between Kalshi and Polymarket on a topic. POST {topic, limit?}. Pulls matching markets from both venues (Politics + Elections overlap heavily), computes price mid-spread + arbitrage direction. JOIN that single-source passthrough APIs (incl. Pinax Token API) structurally can't return — this is what survives Pinax shipping Kalshi support later.
Verdict: not verified by an unpaid GET. 402 without a usable accepts list. This says nothing about whether the route works when called as declared.
Facts from the catalogs
| Field | Value |
|---|---|
| URL | https://graphadvocate.com/kalshi-polymarket/spread |
| Method | POST |
| Price | $0.05 USDC = 50000 atomic units of 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 |
| Network | eip155:8453 (base) |
| payTo | 0x0FF5A6ecef783BBA35463ec2F8403B9B5e9e7C86 |
| Seller | graphadvocate.com |
| Catalogs | cdp (row updated 2026-09-02) |
| Listed since (lower bound) | 2026-09-02 (earliest catalog timestamp; catalogs report last-update times only) |
| Last catalog update | 2026-09-02 |
| CDP quality counters | 1 calls and 1 unique payers in 30 days, last call 2026-09-02 (catalog-reported, not verified on chain) |
| Category (keyword rule) | trading-signals |
| Templated path | no |
| x402Version in catalog | 2 |
| Service name / tags | none |
Unpaid probe (census of )
| Field | Value |
|---|---|
| Probe | not probed in this build |
Latest re-probe
| Field | Value |
|---|---|
| Re-probed at | 2026-10-01T00:13:18.000Z (cron) |
| Verdict now | 402-malformed changed from unprobed |
| HEAD / GET | 402 / 402 |
| accepts[0] | none |
| Live amount equals catalog price | not comparable |
| Latency | 978 ms |
| Error | none |
On-chain facts for the payTo (public address)
| Field | Value |
|---|---|
| Distinct payers | 5 |
| Payments | 14 |
| USDC volume | $0.45 |
| Median payment | $0.04 |
| First / last payment | 2026-07-11 / 2026-09-12 |
| Sampler-shaped share of payments | 100.0% |
| Payers that are not samplers | 0 |
| Source | forensics-2026-09-30 |
| Address | 0x0FF5A6ecef783BBA35463ec2F8403B9B5e9e7C86 (contract: SafeL2) |
Declared input and output (extensions.bazaar)
{
"input": {
"body": {
"limit": 5,
"topic": "fed rate"
},
"bodyType": "json",
"method": "POST",
"type": "http"
},
"output": {
"type": "json",
"example": {
"kalshi_candidates": 3,
"pairs": [
{
"arbitrage_direction": "long-poly-short-kalshi",
"kalshi_ticker": "KXFED-25DEC-CUT25",
"kalshi_yes_mid": 0.62,
"polymarket_market_slug": "fed-rate-cut-december",
"polymarket_yes_mid": 0.58,
"spread_bps": 400,
"spread_yes_kalshi_minus_poly": 0.04
}
],
"polymarket_candidates": 2,
"topic_keyword": "fed rate"
}
}
}
Try it (unpaid: shows the 402)
curl -si -X POST 'https://graphadvocate.com/kalshi-polymarket/spread' -H 'accept: application/json' -H 'content-type: application/json' --data '{}'
The catalog declares POST. A 402 answer carries the payment requirements in the JSON body and, for x402 v2, base64 in the PAYMENT-REQUIRED header. This page never sends a payment.
Paid checks (x402, USDC on Base)
GET https://bazaar.agentexchange.work/r/a9a4b6f68162/probe.json re-runs this probe right now for $0.01 and writes the result here. POST https://bazaar.agentexchange.work/featured with {"id":"a9a4b6f68162"} places this resource at the top of the report and search pages for 30 days for $1.00, labelled. Unpaid requests answer 402 with the terms. Pricing.
Catalog references: agentic.market (CDP Bazaar front end) · this record as JSON · all resources on graphadvocate.com.