x402hub
← Utilities & Convert

x402.dopamint.ai · seedream

x402.dopamint.ai · https://x402.dopamint.ai/api/ai/generations/images/seedream
💵 $5.00 USDC per call 🌐 Base newly listed · no usage data yet

Generate image using bytedance/seedream/v4/text-to-image

This endpoint speaks x402: an unpaid request returns HTTP 402 with machine-readable payment terms, your agent pays the $5.00 USDC in USDC on-chain, and retries automatically. Pays to 0x5054acbbdd6aed95231cbe833f7bf1db7c248bff.

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 $5.00 USDC automatically on the 402, then returns the real response:
const res = await fetchWithPay("https://x402.dopamint.ai/api/ai/generations/images/seedream", { 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 ($5.00 USDC) -> retry automatically
        r = await client.get("https://x402.dopamint.ai/api/ai/generations/images/seedream")
        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.dopamint.ai/api/ai/generations/images/seedream" \
  -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"}, "enhance_prompt_mode": {"default": "standard", "description": "The mode to use for enhancing prompt enhancement. Standard mode provides higher quality results but takes longer to generate. Fast mode provides average quality results but takes less time to generate.", "enum": ["standard", "fast"], "required": false, "type": "\"standard\" | \"fast\""}, "image_size": {"default": {"height": 2048, "width": 2048}, "description": "The size of the generated image. The minimum total image area is 921600 pixels. Failing this, the image size will be adjusted to by scaling it up, while maintaining the aspect ratio.", "example": {"height": 2160, "width": 3840}, "required": false, "type": "ImageSize | \"square_hd\" | \"square\" | \"portrait_4_3\" | \"portrait_16_9\" | \"landscape_4_3\" | \"landscape_16_9\" | \"auto\" | \"auto_2K\" | \"auto_4K\""}, "max_images": {"default": 1, "description": "If set to a number greater than one, enables multi-image generation. The model will potentially return up to `max_images` images every generation, and in total, `num_images` generations will be carried out. In total, the number of images generated will be between `num_images` and `max_images*num_images`.", "maximum": 6, "minimum": 1, "required": false, "type": "integer"}, "num_images": {"default": 1, "description": "Number of separate model generations to be run with the prompt.", "enum": ["1"], "required": false, "type": "integer"}, "prompt": {"description": "The text prompt used to generate the image", "example": "A young woman is sitting on a couch in a room filled with blooming dahlias. She is wearing a purple dress, and her hair is styled in an updo. She is smiling and looking up. The room has a white couch, a white chair, and a white table. There are also several vases of flowers in the room, including a vase of purple flowers on the table and a vase of white flowers on the floor. The walls are white, and there are several paintings on the walls.", "required": true, "type": "string"}, "seed": {"description": "Random seed to control the stochasticity of image generation.", "required": false, "type": "integer"}, "sync_mode": {"default": false, "description": "If `True`, the media will be returned as a data URI and the output data won't be available in the request history.", "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.