Quietforge Docs API
Render a public URL or an HTML string in headless Chromium and return a PNG, JPEG or PDF (base64). Viewport, full-page, device scale and paper size are caller-controlled.
The wallet the 402 directs payment to. Its whole payment record — every payer, every chain — is on the merchant page.
Asset 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
The payTo wallet does not resolve to a registered ERC-8004 agent. That is not a verdict on the service — most of the catalog is unregistered.
Accepts
The payment requirements as published to the catalog. Read the live 402 before paying — a price here is a claim, not a quote.
Pay 0.01 USDC on Base to 0x3F51…1A35e. The signed payment is good for 5 minutes.
- Paid to
- 0x3F51…1A35e
- USD Coin contract
- 0x8335…02913
- Payment window
- 5 minutes
- As published
- 10000 smallest units
The catalog’s raw entry
[
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0x3F5115236f25618c16021E983acaAF2CAaa1A35e",
"amount": "10000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
}
]Extensions
{
"bazaar": {
"info": {
"input": {
"body": {
"url": "https://example.com",
"width": 1280,
"format": "png",
"height": 800,
"full_page": false
},
"type": "http",
"method": "POST",
"bodyType": "json"
},
"output": {
"type": "json",
"example": {
"bytes": 61240,
"title": "Example Domain",
"width": 1280,
"format": "png",
"height": 800,
"final_url": "https://example.com/",
"elapsed_ms": 1840,
"content_type": "image/png",
"content_base64": "iVBORw0KGgo...",
"blocked_requests": 0
}
}
},
"schema": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"type",
"method",
"bodyType",
"body"
],
"properties": {
"body": {
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Public http(s) URL to render. Provide exactly one of url or html."
},
"html": {
"type": "string",
"description": "HTML document to render (max 2 MB). Provide exactly one of url or html."
},
"width": {
"type": "integer",
"maximum": 1920,
"minimum": 320,
"description": "Viewport width in CSS px (default 1280)"
},
"format": {
"enum": [
"png",
"jpeg",
"pdf"
],
"type": "string",
"description": "Output format (default png)"
},
"height": {
"type": "integer",
"maximum": 1080,
"minimum": 200,
"description": "Viewport height in CSS px (default 800)"
},
"wait_ms": {
"type": "integer",
"maximum": 5000,
"minimum": 0,
"description": "Extra wait after load, ms"
},
"full_page": {
"type": "boolean",
"description": "Capture the full scroll height, capped at 8000 px (png/jpeg only)"
},
"pdf_paper": {
"enum": [
"A4",
"Letter"
],
"type": "string",
"description": "Paper size for pdf (default A4)"
},
"wait_until": {
"enum": [
"load",
"domcontentloaded",
"networkidle"
],
"type": "string",
"description": "Navigation wait condition (default load)"
},
"block_media": {
"type": "boolean",
"description": "Abort image/font/media sub-requests for a faster, lighter render"
},
"device_scale": {
"type": "integer",
"maximum": 2,
"minimum": 1,
"description": "Device pixel ratio (default 1)"
},
"jpeg_quality": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "JPEG quality (default 80)"
},
"pdf_landscape": {
"type": "boolean",
"description": "Landscape paper for pdf"
}
}
},
"type": {
"type": "string",
"const": "http"
},
"method": {
"enum": [
"POST",
"PUT",
"PATCH"
],
"type": "string"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
}
},
"additionalProperties": false
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object"
}
}
}
}
}
}
}Provenance
- Seen in the source catalog
- 2026-10-19 11:07Z
- Last indexed by Roundhouse
- 2026-10-26 13:46Z
- Last enriched (probe, favicon, geo)
- 2026-10-19 15:15Z
- x402 version
- 2
- Max timeout
- 300s
- Liveness probe
- HTTP 405
Hand this page to an agent
Copy the prompt and paste it into Claude, an MCP client or your own agent — it will vet this service and call it over the free read API. No key, no account.
GET api.roundhouseai.io/v0/endpoints
No per-endpoint history for this service yet, so this is payments indexed to its PROVIDER's wallet over 30 days. Verified volume counts only settlements with an on-chain EIP-3009 marker.
Show the promptHide the prompt
Using Roundhouse, look up the x402 service Quietforge Docs API and tell me whether it is worth paying: what a call costs, whether the endpoint answered when last probed, and what its payment record actually shows. curl -s 'https://api.roundhouseai.io/v0/endpoints?q=Quietforge%20Docs%20API' curl -s 'https://api.roundhouseai.io/v0/merchants/<the payTo wallet returned above>' Then call it: read the price from the live 402 at https://qf-api.quietforge-studio.workers.dev/v1/render, never from a cached figure, and pay with an x402 client. The /v0 API needs an API key (`authorization: Bearer rh_live_…`) on everything except /v0/unified* and /v0/endpoints. Either pay over x402 (mint a personal key for $0.01 at GET https://api.roundhouseai.io/v0/test/x402), or ask me for an organization key, which I create at https://roundhouseai.io/dashboard/connections. If you have neither, ask before going further. If you do not have Roundhouse tools or skills installed, read https://roundhouseai.io/skill.md first — it is the whole procedure.