x402 census · screenshot-api-production-fe7e.up.railway.app · c0651c48382c · JSON
POST /capture/pdf
live
Render an http(s) URL to a PDF (A4/A3/Letter/Legal/Tabloid) with print emulation; returns a JSON envelope with the PDF base64-encoded under pdf_base64, plus final_url, title, format, and size.
Verdict: live. The unpaid GET reached a valid 402 (confirmed by the re-probe of 2026-10-01).
Facts from the catalogs
| Field | Value |
|---|---|
| URL | https://screenshot-api-production-fe7e.up.railway.app/capture/pdf |
| Method | POST |
| Price | $0.002 USDC = 2000 atomic units of 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 |
| Network | eip155:8453 (base) |
| payTo | 0xFFc458dB291b4ABcE020fE3de4f91F2770E537b1 |
| Seller | screenshot-api-production-fe7e.up.railway.app |
| Catalogs | cdp (row updated 2026-09-14) |
| Listed since (lower bound) | 2026-09-14 (earliest catalog timestamp; catalogs report last-update times only) |
| Last catalog update | 2026-09-14 |
| CDP quality counters | 3 calls and 3 unique payers in 30 days, last call 2026-09-14 (catalog-reported, not verified on chain) |
| Category (keyword rule) | scrape/browser |
| 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-01T07:13:42.000Z (cron) |
| Verdict now | live changed from unprobed |
| HEAD / GET | 402 / 402 |
| accepts[0] | {"scheme":"exact","network":"eip155:8453","amount":"2000","payTo":"0xFFc458dB291b4ABcE020fE3de4f91F2770E537b1","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","maxTimeoutSeconds":300,"extra":{"name":"USD Coin","version":"2"}} |
| Live amount equals catalog price | yes |
| Latency | 756 ms |
| Error | none |
On-chain facts for the payTo (public address)
| Field | Value |
|---|---|
| Distinct payers | 78 |
| Payments | 327 |
| USDC volume | $0.49 |
| Median payment | $0.001 |
| First / last payment | 2026-06-11 / 2026-09-30 |
| Sampler-shaped share of payments | 100.0% |
| Payers that are not samplers | 0 |
| Source | forensics-2026-09-30 |
| Address | 0xFFc458dB291b4ABcE020fE3de4f91F2770E537b1 |
Declared input and output (extensions.bazaar)
{
"input": {
"body": {
"format": "A4",
"url": "https://example.com",
"wait_until": "networkidle"
},
"bodyType": "json",
"method": "POST",
"type": "http"
},
"output": {
"type": "json",
"example": {
"final_url": "https://example.com/",
"format": "A4",
"pdf_base64": "JVBERi0xLjQKJeLjz9MK... (base64-encoded PDF bytes, truncated)",
"size_bytes": 45678,
"title": "Example Domain",
"url": "https://example.com"
}
}
}
Try it (unpaid: shows the 402)
curl -si -X POST 'https://screenshot-api-production-fe7e.up.railway.app/capture/pdf' -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/c0651c48382c/probe.json re-runs this probe right now for $0.01 and writes the result here. POST https://bazaar.agentexchange.work/featured with {"id":"c0651c48382c"} 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 screenshot-api-production-fe7e.up.railway.app.