x402-dev.dopamint.ai · stable-diffusion-v35-large
x402-dev.dopamint.ai · https://x402-dev.dopamint.ai/api/ai/generations/images/stable-diffusion-v35-large
Generate image using stable-diffusion-v35-large
This endpoint speaks x402: an unpaid request returns
HTTP 402 with machine-readable payment
terms, your agent pays the $0.0878 USDC in USDC on-chain, and retries automatically. Pays to 0x865260E7825C13fFB62E8127b1015Da670205502.Call it in 30 seconds
JavaScriptPythoncurl
// npm i x402-fetch viem
import { wrapFetchWithPayment } from "x402-fetch";
import { createWalletClient, http } from "viem";
import { privateKeyToAccount } from "viem/accounts";
import { base } from "viem/chains";
const account = privateKeyToAccount(process.env.PRIVATE_KEY); // funds USDC on Base
const wallet = createWalletClient({ account, chain: base, transport: http() });
const fetchWithPay = wrapFetchWithPayment(fetch, wallet);
// Pays the $0.0878 USDC automatically on the 402, then returns the real response:
const res = await fetchWithPay("https://x402-dev.dopamint.ai/api/ai/generations/images/stable-diffusion-v35-large", { method: "POST" });
console.log(await res.json());
# pip install x402 eth-account httpx
import os, asyncio
from eth_account import Account
from x402.clients.httpx import x402HttpxClient
account = Account.from_key(os.environ["PRIVATE_KEY"]) # funds USDC on Base
async def main():
async with x402HttpxClient(account=account) as client:
# x402 handles the 402 -> pay ($0.0878 USDC) -> retry automatically
r = await client.get("https://x402-dev.dopamint.ai/api/ai/generations/images/stable-diffusion-v35-large")
print((await r.aread()).decode())
asyncio.run(main())
# 1) An unpaid request returns HTTP 402 with the exact payment terms:
curl -i -X POST "https://x402-dev.dopamint.ai/api/ai/generations/images/stable-diffusion-v35-large" \
-H 'content-type: application/json' \
-d '{"enable_safety_checker": {"default": true, "description": "If set to true, the safety checker will be enabled.", "example": true, "required": false, "type": "boolean"}, "image_size": {"default": "landscape_16_9", "description": "The size of the generated image. You can choose between some presets or custom height and width that **must be multiples of 16**.", "enum": ["square_hd", "square", "portrait_4_3", "portrait_16_9", "landscape_4_3", "landscape_16_9"], "required": false, "type": "ImageSize | \"square_hd\" | \"square\" | \"portrait_4_3\" | \"portrait_16_9\" | \"landscape_4_3\" | \"landscape_16_9\""}, "num_images": {"default": 1, "description": "The number of images to generate.", "enum": ["1"], "required": false, "type": "integer"}, "prompt": {"description": "The prompt to generate an image from.", "example": "a tiny astronaut hatching from an egg on the moon", "required": true, "type": "string"}, "seed": {"description": "The same seed and the same prompt given to the same version of the model will output the same image every time.", "required": false, "type": "integer"}, "sync_mode": {"default": false, "description": " If set to true, the function will wait for the image to be generated and uploaded before returning the response. This will increase the latency of the function but it allows you to get the image directly in the response without going through the CDN.\n ", "required": false, "type": "boolean"}}'
# 2) Paying + retrying requires an x402 client that can sign the USDC
# authorization (curl alone cannot). See the JS / Python tabs below.
New to x402? Read the 5-minute quickstart →
ad slot · a crypto-native, no-tracking ad loads here in production
Query this registry programmatically. Every service here is searchable through the
x402hub API, an x402-payable endpoint your agents call and pay per request in USDC.
https://api-service-sandy.vercel.app · GET /api/search?q=... · $0.002 / call
Prefer to just support the project? Tip USDC on Base to
0x40BbeB1BEd1D4ba6f1d4C0eE0C9D93e2dA3347C6. This hub is free and ad-light.