x402 census · stall-row-production.up.railway.app · 0912e2d146cd · JSON
POST /v1/page-to-markdown
method-gated
Fetch one web page and return its main content as clean Markdown with title and word count, extracted server-side. Private and loopback targets are refused. Use this when an agent needs to read a page inside a workflow without a browser and without wading through navigation and boilerplate.
Verdict: not verified by an unpaid GET. 405/400: the 402 sits behind the declared method. This says nothing about whether the route works when called as declared.
Facts from the catalogs
| Field | Value |
|---|---|
| URL | http://stall-row-production.up.railway.app/v1/page-to-markdown |
| Method | POST |
| Price | $0.01 USDC = 10000 atomic units of 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 |
| Network | eip155:8453 (base) |
| payTo | 0x097f9685D1e0752bF8B02d61E5Ce9be7eA0FBA7F |
| Seller | stall-row-production.up.railway.app |
| Catalogs | payai (row updated 2026-10-23) |
| Listed since (lower bound) | 2026-10-23 (earliest catalog timestamp; catalogs report last-update times only) |
| Last catalog update | 2026-10-23 |
| CDP quality counters | not in the CDP catalog |
| Category (keyword rule) | scrape/browser |
| Templated path | no |
| x402Version in catalog | 2 |
| Service name / tags | stall-row · fetch, markdown, web, reading, agents |
Unpaid probe (census of 2026-10-25)
| Field | Value |
|---|---|
| Probed at | 2026-10-25T21:14:13.637Z |
| HEAD | 405 |
| GET | 405 |
| Verdict | method-gated 405/400: the 402 sits behind the declared method |
| 402 carried in | n/a |
| x402Version in the 402 | n/a |
| accepts[0] | none |
| Live amount equals catalog price | not comparable |
| Live payTo equals catalog payTo | not comparable |
| extensions.bazaar in the 402 | no |
| PAYMENT-REQUIRED header | no |
| WWW-Authenticate offer | none |
| Content type / server / CORS | application/json / railway-hikari / none |
| Latency | 177 ms |
| Error | none |
| Redirected to | https://stall-row-production.up.railway.app/v1/page-to-markdown |
No hourly re-probe has reached this resource yet; the cron covers a rotating slice of 150 per hour.
On-chain facts for the payTo (public address)
| Field | Value |
|---|---|
| Settlement history | unresolved: payTo not seen in the payer forensics (180 wallets' outbound history) or the Blockscout sample |
Declared input and output (extensions.bazaar)
{
"input": {
"body": {
"url": "https://www.x402.org/"
},
"type": "http",
"method": "POST",
"bodyType": "json"
},
"output": {
"type": "json",
"example": {
"url": "https://www.x402.org/",
"title": "x402 — internet-native payments",
"markdown": "# x402\n\nAn open standard for internet-native payments.",
"final_url": "https://www.x402.org/",
"word_count": 8
}
}
}
Try it (unpaid: shows the 402)
curl -si -X POST 'http://stall-row-production.up.railway.app/v1/page-to-markdown' -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/0912e2d146cd/probe.json re-runs this probe right now for $0.01 and writes the result here. POST https://bazaar.agentexchange.work/featured with {"id":"0912e2d146cd"} 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: PayAI listing status · this record as JSON · all resources on stall-row-production.up.railway.app.