{"generatedAt":"2026-05-09T09:38:44.217Z","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","assetSymbol":"USDC","payTo":"0xDa2F35d283c42dd60B965322394bc658a5c1769F","count":10,"resources":[{"name":"echo","method":"POST","url":"https://app.heinrichstech.com/v1/cdp/echo","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","assetSymbol":"USDC","payTo":"0xDa2F35d283c42dd60B965322394bc658a5c1769F","priceAtomic":"1000","priceUsdc":0.001,"summary":"Smallest possible paid endpoint. Pay 0.001 USDC, get a JSON echo back. Reference implementation of the x402 + CDP Facilitator + Bazaar discovery loop.","schemaUrl":"https://app.heinrichstech.com/bazaar.json#echo","docsAnchor":"https://github.com/heinrichstech/bitbooth/blob/main/docs/BAZAAR_RESOURCES.md#echo"},{"name":"json-repair","method":"POST","url":"https://app.heinrichstech.com/v1/cdp/json-repair","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","assetSymbol":"USDC","payTo":"0xDa2F35d283c42dd60B965322394bc658a5c1769F","priceAtomic":"1000","priceUsdc":0.001,"summary":"Take any almost-JSON string (LLM tool output, broken API response, etc.), fix common errors (trailing commas, single quotes, unquoted keys, missing brackets), and optionally validate against a JSON Schema. Built for AI agents that wrap every tool call in defensive parsing.","schemaUrl":"https://app.heinrichstech.com/bazaar.json#json-repair","docsAnchor":"https://github.com/heinrichstech/bitbooth/blob/main/docs/BAZAAR_RESOURCES.md#json-repair"},{"name":"faker","method":"POST","url":"https://app.heinrichstech.com/v1/cdp/faker","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","assetSymbol":"USDC","payTo":"0xDa2F35d283c42dd60B965322394bc658a5c1769F","priceAtomic":"1000","priceUsdc":0.001,"summary":"Structured synthetic data on demand. Pass a template like { name: \"person.fullName\", email: \"internet.email\" } and a count, receive an array of records ready to seed forms, populate test databases, or feed mock data into prompt examples.","schemaUrl":"https://app.heinrichstech.com/bazaar.json#faker","docsAnchor":"https://github.com/heinrichstech/bitbooth/blob/main/docs/BAZAAR_RESOURCES.md#faker"},{"name":"approval-safety","method":"POST","url":"https://app.heinrichstech.com/v1/cdp/approval-safety","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","assetSymbol":"USDC","payTo":"0xDa2F35d283c42dd60B965322394bc658a5c1769F","priceAtomic":"50000","priceUsdc":0.05,"summary":"Structured risk assessment of an ERC-20 approve(spender, amount) before signing. Catches unlimited approvals to fresh contracts, EOA spenders, copycat tokens, and known-malicious contracts. Built for AI agents that handle wallets and need a programmatic gate before any token approval.","schemaUrl":"https://app.heinrichstech.com/bazaar.json#approval-safety","docsAnchor":"https://github.com/heinrichstech/bitbooth/blob/main/docs/BAZAAR_RESOURCES.md#approval-safety"},{"name":"render-pro","method":"POST","url":"https://app.heinrichstech.com/v1/cdp/render-pro","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","assetSymbol":"USDC","payTo":"0xDa2F35d283c42dd60B965322394bc658a5c1769F","priceAtomic":"50000","priceUsdc":0.05,"summary":"Full Playwright JS rendering + Readability extraction. Pay 0.05 USDC, get clean markdown back from any URL including SPAs and JS-heavy sites that naive fetch cannot crawl.","schemaUrl":"https://app.heinrichstech.com/bazaar.json#render-pro","docsAnchor":"https://github.com/heinrichstech/bitbooth/blob/main/docs/BAZAAR_RESOURCES.md#render-pro"},{"name":"web-diff","method":"POST","url":"https://app.heinrichstech.com/v1/cdp/web-diff","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","assetSymbol":"USDC","payTo":"0xDa2F35d283c42dd60B965322394bc658a5c1769F","priceAtomic":"50000","priceUsdc":0.05,"summary":"Render any URL with full Playwright JS rendering, then return both the current markdown snapshot AND a structured diff against the previous markdown you supply. Built for monitoring agents tracking competitor sites, docs pages, pricing changes, or any change-detection workflow.","schemaUrl":"https://app.heinrichstech.com/bazaar.json#web-diff","docsAnchor":"https://github.com/heinrichstech/bitbooth/blob/main/docs/BAZAAR_RESOURCES.md#web-diff"},{"name":"llm-tool-validate","method":"POST","url":"https://app.heinrichstech.com/v1/cdp/llm-tool-validate","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","assetSymbol":"USDC","payTo":"0xDa2F35d283c42dd60B965322394bc658a5c1769F","priceAtomic":"1000","priceUsdc":0.001,"summary":"JSON Schema validation + optional auto-coercion + a confidence score for any LLM tool-call payload. Pair with /v1/cdp/json-repair to fix malformed JSON first, then validate against your tool schema. Built for agents that need a programmatic gate between the model and downstream system calls.","schemaUrl":"https://app.heinrichstech.com/bazaar.json#llm-tool-validate","docsAnchor":"https://github.com/heinrichstech/bitbooth/blob/main/docs/BAZAAR_RESOURCES.md#llm-tool-validate"},{"name":"x402-discover","method":"POST","url":"https://app.heinrichstech.com/v1/cdp/x402-discover","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","assetSymbol":"USDC","payTo":"0xDa2F35d283c42dd60B965322394bc658a5c1769F","priceAtomic":"5000","priceUsdc":0.005,"summary":"Agent pre-flight: pay 0.005 USDC, get a normalized report of every paid x402 endpoint a target URL exposes — direct 402 challenges, HTML discovery hints (<meta name=\"x402\">, <link rel=\"x402\">, anchor tags pointing at /bazaar.json or /.well-known/x402), and bazaar.json catalogs all collapsed into a single shape.","schemaUrl":"https://app.heinrichstech.com/bazaar.json#x402-discover","docsAnchor":"https://github.com/heinrichstech/bitbooth/blob/main/docs/BAZAAR_RESOURCES.md#x402-discover"},{"name":"agent-credit-score","method":"POST","url":"https://app.heinrichstech.com/v1/cdp/agent-credit-score","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","assetSymbol":"USDC","payTo":"0xDa2F35d283c42dd60B965322394bc658a5c1769F","priceAtomic":"5000","priceUsdc":0.005,"summary":"Buyer-side pre-flight: pay 0.005 USDC, hand in a counterparty EVM wallet, get back a 0-100 trustworthiness score plus the raw signals (settlement count, unique recipients, total USDC paid, first/last seen, wallet age) it was derived from. The score every agent should consult before accepting a payment from an unknown wallet.","schemaUrl":"https://app.heinrichstech.com/bazaar.json#agent-credit-score","docsAnchor":"https://github.com/heinrichstech/bitbooth/blob/main/docs/BAZAAR_RESOURCES.md#agent-credit-score"},{"name":"wallet-doctor","method":"POST","url":"https://app.heinrichstech.com/v1/cdp/wallet-doctor","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","assetSymbol":"USDC","payTo":"0xDa2F35d283c42dd60B965322394bc658a5c1769F","priceAtomic":"5000","priceUsdc":0.005,"summary":"Pre-flight wallet hygiene: pay 0.005 USDC, hand in an EVM wallet, get back a go/no-go diagnosis on Base mainnet — native ETH balance for gas, USDC balance for payments, plus derived flags (lowGas, usdcDust, usdcEmpty, ready) and a recommendations list. The hygiene check every agent should run BEFORE kicking off a flow with a wallet.","schemaUrl":"https://app.heinrichstech.com/bazaar.json#wallet-doctor","docsAnchor":"https://github.com/heinrichstech/bitbooth/blob/main/docs/BAZAAR_RESOURCES.md#wallet-doctor"}]}