{"openapi":"3.1.0","info":{"title":"Bloxpad","version":"1.0.0","description":"Bloxpad block generation for agents: mint-ready Roblox-style blocky PFP portraits on Robinhood Chain, 0.1 USDG per generation. The generate endpoint is x402-native and settles through the Monex Protocol facilitator: POST here (or directly at bloxpad.fun/api/agents/generate) with a template and subject, answer the 402 challenge with the same USDG permit2 flow this marketplace uses, and payment goes straight to Bloxpad. The finished block belongs to the paying wallet and can be minted on bloxpad.fun.","contact":{"email":"contact@meshgateway.co"},"x-guidance":"Every path is payable per request over HTTP 402 in USDG on eip155:4663. GET or POST without credentials to receive the challenge (WWW-Authenticate Payment header, plus the x402 payment-required header). Sign PermitWitnessTransferFrom for the advertised offer (spender is the canonical x402ExactPermit2Proxy) and retry with the payment-signature header. Buyers only need USDG: a one-time sponsored Permit2 approval is available at POST /api/gas/sponsor {\"address\"}."},"x-service-info":{"description":"Bloxpad block generation for agents: mint-ready Roblox-style blocky PFP portraits on Robinhood Chain, 0.1 USDG per generation. The generate endpoint is x402-native and settles through the Monex Protocol facilitator: POST here (or directly at bloxpad.fun/api/agents/generate) with a template and subject, answer the 402 challenge with the same USDG permit2 flow this marketplace uses, and payment goes straight to Bloxpad. The finished block belongs to the paying wallet and can be minted on bloxpad.fun."},"paths":{"/blocks":{"get":{"summary":"The minted Bloxpad collection: token ids, templates, subjects, owners, and image URLs. Pass ?minter=0x... to narrow to one wallet.","responses":{"200":{"description":"Successful response"},"402":{"description":"Payment Required"}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.005000"},"protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168"}},{"x402":{}}],"amount":"5000","currency":"0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168","description":"Bloxpad: Minted blocks","intent":"charge","method":"evm","recipient":"0x92aEF8f501AEaA2837E6E5C6F145f067c4B4B686","scheme":"exact","network":"eip155:4663","extra":{"assetTransferMethod":"permit2","spender":"0x402085c248EeA27D92E8b30b2C58ed07f9E20001","name":"USDG"}}}},"/generate":{"get":{"summary":"Generate one Bloxpad block: POST {\"template\":\"og\",\"subject\":\"a cyberpunk samurai\"} — templates are og, chrome, noir, ice, gold, toxic, ghost, magma — or pass \"image\" as a png/jpeg/webp data URL under 256KB to recreate a reference. Returns { id, statusUrl, imageUrl, txHash }; poll status until done. GET returns the machine-readable offer. Charged by Bloxpad over x402 v2 (0.1 USDG, permit2, Robinhood Chain).","responses":{"200":{"description":"Successful response"},"402":{"description":"Payment Required"}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.100000"},"protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168"}},{"x402":{}}],"amount":"100000","currency":"0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168","description":"Bloxpad: Generate a block","intent":"charge","method":"evm","recipient":"0x92aEF8f501AEaA2837E6E5C6F145f067c4B4B686","scheme":"exact","network":"eip155:4663","extra":{"assetTransferMethod":"permit2","spender":"0x402085c248EeA27D92E8b30b2C58ed07f9E20001","name":"USDG"}}},"post":{"summary":"Generate one Bloxpad block: POST {\"template\":\"og\",\"subject\":\"a cyberpunk samurai\"} — templates are og, chrome, noir, ice, gold, toxic, ghost, magma — or pass \"image\" as a png/jpeg/webp data URL under 256KB to recreate a reference. Returns { id, statusUrl, imageUrl, txHash }; poll status until done. GET returns the machine-readable offer. Charged by Bloxpad over x402 v2 (0.1 USDG, permit2, Robinhood Chain).","requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"description":"Forwarded to the upstream API verbatim"}}}},"responses":{"200":{"description":"Successful response"},"402":{"description":"Payment Required"}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.100000"},"protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168"}},{"x402":{}}],"amount":"100000","currency":"0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168","description":"Bloxpad: Generate a block","intent":"charge","method":"evm","recipient":"0x92aEF8f501AEaA2837E6E5C6F145f067c4B4B686","scheme":"exact","network":"eip155:4663","extra":{"assetTransferMethod":"permit2","spender":"0x402085c248EeA27D92E8b30b2C58ed07f9E20001","name":"USDG"}}}},"/image":{"get":{"summary":"Fetch a finished block image (webp). Append the generation id to the path, e.g. image/42. Immutable once written.","responses":{"200":{"description":"Successful response"},"402":{"description":"Payment Required"}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.005000"},"protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168"}},{"x402":{}}],"amount":"5000","currency":"0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168","description":"Bloxpad: Block image","intent":"charge","method":"evm","recipient":"0x92aEF8f501AEaA2837E6E5C6F145f067c4B4B686","scheme":"exact","network":"eip155:4663","extra":{"assetTransferMethod":"permit2","spender":"0x402085c248EeA27D92E8b30b2C58ed07f9E20001","name":"USDG"}}}},"/status":{"get":{"summary":"Poll a running generation. Pass ?id= from the generate response; returns status (running, done, failed) and the image URL once finished.","responses":{"200":{"description":"Successful response"},"402":{"description":"Payment Required"}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.005000"},"protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168"}},{"x402":{}}],"amount":"5000","currency":"0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168","description":"Bloxpad: Generation status","intent":"charge","method":"evm","recipient":"0x92aEF8f501AEaA2837E6E5C6F145f067c4B4B686","scheme":"exact","network":"eip155:4663","extra":{"assetTransferMethod":"permit2","spender":"0x402085c248EeA27D92E8b30b2C58ed07f9E20001","name":"USDG"}}}}}}