Authentication: This endpoint accepts either a Bearer API key or a SIGN-IN-WITH-X header for x402 wallet-based authentication. The legacy X-Sign-In-With-X header is also accepted during migration. When using x402, a 402 Payment Required response indicates insufficient balance and includes top-up instructions. A 401 response with code X402_USER_NOT_ALLOWED means the wallet’s Venice account is banned or deleted, or the wallet’s x402 credit account belongs to a different user.
{
"error": "This API key is restricted to configured IP addresses, and this request's source IP is not allowed"
}
{
"error": "<string>"
}
{
"error": "<string>",
"suggested_prompt": "A watercolor painting of a lighthouse on a rocky coast at sunset.",
"recommended_model": "chroma",
"retryable": true
}
{
"error": "<string>"
}
{
"error": "<string>"
}
{
"error": "<string>"
}
Sizing Options
Image models use model-specific sizing parameters:
Pixel-based models accept width and height, for example venice-sd35.
Aspect-ratio models accept aspect_ratio, for example qwen-image-2. The Qwen Image family — qwen-image, qwen-image-3, qwen-image-3-pro, qwen-image-2-1-turbo, and qwen-image-2-1-pro — rejectswidth and height with a 400; use aspect_ratio for those.
Resolution-tier models accept both aspect_ratio and resolution.
For example, gpt-image-2, nano-banana-2, and nano-banana-pro support resolution values of 1K, 2K, and 4K:
{ "model": "gpt-image-2", "prompt": "a cinematic wide shot of Venice at sunset", "aspect_ratio": "16:9", "resolution": "4K", "format": "png"}
The same resolution-tier sizing pattern also applies to Nano Banana models:
{ "model": "nano-banana-pro", "prompt": "a serene canal in venice at sunset", "aspect_ratio": "16:9", "resolution": "2K"}
For models that accept aspect ratio but do not expose resolution tiers, send aspect_ratio without resolution:
{ "model": "qwen-image-2", "prompt": "a serene canal in venice at sunset", "aspect_ratio": "16:9"}
For models that use direct pixel dimensions, send width and height instead:
{ "model": "venice-sd35", "prompt": "a serene canal in venice at sunset", "width": 1024, "height": 1024}
Check Image Models or the Models endpoint for each model’s supported sizing options before mixing sizing fields across models.
Quality Tiers
Some models accept an optional quality parameter (low, medium, high) that trades visual fidelity for cost. Models that list qualities in model_spec.constraints from GET /models?type=image accept only those values, and some support only a subset such as low and medium. Other models ignore the parameter.
{ "model": "gpt-image-2", "prompt": "a cinematic wide shot of Venice at sunset", "aspect_ratio": "16:9", "resolution": "2K", "quality": "medium"}
When you omit quality, the model uses its default tier (high for gpt-image-2). Pricing depends on the combination of resolution and quality — the per-tier prices for gpt-image-2 (1K/2K/4K × low/medium/high) are exposed under model_spec.pricing.quality in the Models endpoint and listed on the GPT Image 2 page.
Quality-aware pricing is the default for all API and SDK callers — no opt-in header required. Requests that omit quality are billed at the model’s default tier (high for gpt-image-2).
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
Accept-Encoding
string
Supported compression encodings (gzip, br). Only applied when return_binary is false.
Example:
"gzip, br"
Body
application/json
model
string
required
The model to use for image generation.
Example:
"grok-imagine-image"
prompt
string
required
The description for the image. Character limit is model specific and is listed in the promptCharacterLimit setting in the model list endpoint.
Required string length: 1 - 7500
Example:
"A beautiful sunset over a mountain range"
anon_user_id
string
Optional identifier for the API customer's end user. Combined with the Venice user id when attributing the request to upstream providers. Distinct from the discarded OpenAI user field. Must be printable ASCII and must not contain ||.
Required string length: 1 - 128
Pattern: ^[\x20-\x7E]+$
Example:
"end-user-123"
cfg_scale
number
CFG scale parameter. Higher values lead to more adherence to the prompt.
Required range: 0 < x <= 20
Example:
7.5
embed_exif_metadata
boolean
default:false
Embed prompt generation information into the image's EXIF metadata.
Example:
false
format
enum<string>
default:webp
The image format to return. WebP are smaller and optimized for web use. PNG are higher quality but larger in file size.
Available options:
jpeg,
png,
webp
Example:
"webp"
height
integer
default:1024
Height of the generated image.
Required range: 0 < x <= 1280
Example:
1024
hide_watermark
boolean
default:false
Whether to hide the Venice watermark. Venice may ignore this parameter for certain generated content.
Example:
false
inpaint
any | null
deprecated
This feature is deprecated and was disabled on May 19th, 2025. A revised in-painting API will be launched in the near future.
lora_strength
integer
Lora strength for the model. Only applies if the model uses additional Loras.
Required range: 0 <= x <= 100
Example:
50
negative_prompt
string
A description of what should not be in the image. Character limit is model specific and is listed in the promptCharacterLimit constraint in the model list endpoint.
Maximum string length: 7500
Example:
"Clouds, Rain, Snow"
return_binary
boolean
default:false
Whether to return binary image data instead of base64.
Example:
false
variants
integer
Number of images to generate (1–4). Only supported when return_binary is false. Variants the model provider explicitly rejects under its content policy are omitted from a successful partial response. Other moderation outcomes can still return blacked-out images; check x-venice-is-content-violation.
Required range: 1 <= x <= 4
Example:
3
safe_mode
boolean
default:true
Whether to blur images classified as adult content. Defaults to true. Set to false to receive unblurred output. No Pro subscription is required, and the mature filter setting in the Venice app does not affect this. The x-venice-is-blurred response header reports whether the returned image was blurred.
Example:
false
seed
integer
default:0
Random seed for generation. If not provided, a random seed will be used.
Required range: -999999999 <= x <= 999999999
Example:
123456789
steps
integer
default:8
Number of inference steps. This model does not support steps - this field is ignored.
Aspect ratio (utilized by certain image models including Nano Banana). Examples: "1:1", "16:9".
Example:
"1:1"
resolution
string
Resolution (utilized by certain image models including Nano Banana). Examples: "1K", "2K", "4K".
Example:
"1K"
quality
enum<string>
Output quality for supported models (e.g. GPT Image 2 / GPT Image 2 Edit). Higher values can increase the final request charge. See the model list for supported options.
Available options:
low,
medium,
high
Example:
"high"
transparent_background
boolean
Return the image with a transparent background (alpha channel). Only supported by models with supportsTransparentBackground: true in their constraints (see GET /api/v1/models), and requires format png or webp; otherwise the request is rejected. Omit or set to false to keep the model default background.
Example:
false
enable_web_search
boolean
Enable web search for the image generation task. This will allow the model to use the latest information from the web to generate the image. Only supported by certain models. If web search is used, additional credits are getting charged.
Example:
false
disable_prompt_optimization_thinking
boolean
Skip the model's prompt-optimization thinking step for faster generation. Only supported by models with supportsOptimizePromptThinking; ignored by others. Omit to use the model default.
Example:
false
enhance_prompt
boolean
Rewrite the prompt before generation to add clarifying visual detail. Additional credits are charged when a rewrite is generated. Adds up to ~30 seconds before generation starts. When enhancement is applied, the final prompt is returned URL-encoded in the x-venice-enhanced-prompt response header. Defaults to false.
Example:
false
width
integer
default:1024
Width of the generated image.
Required range: 0 < x <= 1280
Example:
1024
style_references
object[]
Style reference images that guide the aesthetic of the generated image. Only supported by models with supportsStyleReferences: true (see GET /api/v1/models for the per-model maxStyleReferences limit).
Base64 encoded image data. A partial response can contain fewer entries than requested.
timing
object
required
Show child attributes
content_policy_violation_count
integer
Number of requested variants omitted because the model provider explicitly rejected them under its content policy. Other moderation outcomes can still return blacked-out images flagged by x-venice-is-content-violation.
{
"error": "This API key is restricted to configured IP addresses, and this request's source IP is not allowed"
}
{
"error": "<string>"
}
{
"error": "<string>",
"suggested_prompt": "A watercolor painting of a lighthouse on a rocky coast at sunset.",
"recommended_model": "chroma",
"retryable": true
}
{
"error": "<string>"
}
{
"error": "<string>"
}
{
"error": "<string>"
}
{"docsConfig":{"theme":"luma","$schema":"https://mintlify.com/docs.json","name":"Venice API Docs","colors":{"primary":"#125DA3","light":"#4898E6","dark":"#125DA3"},"logo":{"light":"https://mintcdn.com/veniceai/gFXvp87w4B810n0Y/logo/light.svg?fit=max\u0026auto=format\u0026n=gFXvp87w4B810n0Y\u0026q=85\u0026s=121558c3bff1e4e012fcd34bdc50555c","dark":"https://mintcdn.com/veniceai/0vNwudF9KfvWPUSs/logo/dark.svg?fit=max\u0026auto=format\u0026n=0vNwudF9KfvWPUSs\u0026q=85\u0026s=79383337fb486ba06afb95cb7d0b4bf7","href":"https://venice.ai/?utm_source=venice-api-documentation"},"favicon":"https://mintcdn.com/veniceai/wJjdz14nrhedln0s/favicon.png?fit=max\u0026auto=format\u0026n=wJjdz14nrhedln0s\u0026q=85\u0026s=171a8dd0d43182f3b386c25e13152d92","api":{"openapi":"swagger.yaml","playground":{"proxy":false},"mdx":{"auth":{"method":"bearer"},"server":"https://api.venice.ai/api/v1"}},"appearance":{"default":"dark"},"background":{"color":{"light":"#FFFFFF","dark":"#0E1217"}},"navbar":{"links":[],"primary":{"type":"button","label":"Try Venice","href":"https://venice.ai/chat?utm_source=venice-api-documentation"}},"footer":{"socials":{"x":"https://x.com/AskVenice","discord":"https://discord.gg/askvenice","github":"https://github.com/veniceai","linkedin":"https://www.linkedin.com/company/venice-ai"}},"seo":{"metatags":{"og:site_name":"Venice API Docs","og:locale":"en_US","og:logo":"/logo/light.svg","article:publisher":"Venice AI","twitter:site":"@AskVenice"},"indexing":"navigable"},"icons":{"library":"tabler"},"styling":{"codeblocks":"system","latex":true},"integrations":{"gtm":{"tagId":"GTM-KFP6HX49"},"plausible":{"domain":"docs.venice.ai"}},"contextual":{"options":["copy","view","chatgpt","claude","mcp","cursor","vscode","download-spec"],"display":"header"},"markdown":{"instructions":["The Venice API is OpenAI-compatible: use any OpenAI SDK with the base URL `https://api.venice.ai/api/v1` and a Venice API key, or pay per request from a USDC wallet through x402 with no account.","Read model IDs from `GET /models` or `GET /models/traits` at runtime instead of hardcoding them from memory or from these pages. Models are added and retired often.","Every model's price is in https://docs.venice.ai/pricing.md. Quote video and audio jobs with `POST /video/quote` or `POST /audio/quote` before you queue them.","Search these docs from an MCP client at https://docs.venice.ai/mcp. The full agent guide is https://docs.venice.ai/agents.md."]},"navigation":{"languages":[{"language":"en","default":true,"href":"overview/about-venice"},{"language":"pt-BR","href":"pt-BR/overview/about-venice"},{"language":"ar","href":"ar/overview/about-venice"},{"language":"it","href":"it/overview/about-venice"},{"language":"de","href":"de/overview/about-venice"},{"language":"es","href":"es/overview/about-venice"},{"language":"fr","href":"fr/overview/about-venice"},{"language":"zh","href":"zh/overview/about-venice"},{"language":"ko","href":"ko/overview/about-venice"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"veniceai","hasAudioNarration":false,"actualSubdomain":"veniceai","customDomains":["docs.venice.ai"],"gitSource":{"type":"github","owner":"veniceai","repo":"api-docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"feedback":{"edits":true,"issues":true,"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af8fda1dc14d847bbc4e409","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"en","tag":"Models","count":576},{"language":"ar","tag":"النماذج","count":568},{"language":"de","tag":"Modelle","count":568},{"language":"es","tag":"Modelos","count":568},{"language":"fr","tag":"Modèles","count":568},{"language":"it","tag":"Modelli","count":568},{"language":"ko","tag":"모델","count":568},{"language":"pt-BR","tag":"Modelos","count":568},{"language":"zh","tag":"模型","count":568},{"language":"en","tag":"Docs","count":78},{"language":"ar","tag":"التوثيق","count":78},{"language":"de","tag":"Dokumentation","count":78},{"language":"es","tag":"Documentación","count":78},{"language":"fr","tag":"Documentation","count":78},{"language":"it","tag":"Documentazione","count":78},{"language":"ko","tag":"문서","count":78},{"language":"pt-BR","tag":"Documentação","count":78},{"language":"zh","tag":"文档","count":78},{"language":"en","tag":"API Reference","count":58},{"language":"en","tag":"Venice APIs","count":58},{"language":"ar","tag":"مرجع الـ API","count":58},{"language":"ar","tag":"Venice APIs","count":58},{"language":"de","tag":"API-Referenz","count":58},{"language":"de","tag":"Venice APIs","count":58},{"language":"es","tag":"Referencia de la API","count":58},{"language":"es","tag":"Venice APIs","count":58},{"language":"fr","tag":"Référence de l'API","count":58},{"language":"fr","tag":"Venice APIs","count":58},{"language":"it","tag":"Riferimento API","count":58},{"language":"it","tag":"Venice APIs","count":58},{"language":"ko","tag":"API 레퍼런스","count":58},{"language":"ko","tag":"Venice APIs","count":58},{"language":"pt-BR","tag":"Referência da API","count":58},{"language":"pt-BR","tag":"Venice APIs","count":58},{"language":"zh","tag":"API 参考","count":58},{"language":"zh","tag":"Venice APIs","count":58},{"language":"en","tag":"Learn","count":22},{"language":"ar","tag":"تعلّم","count":20},{"language":"de","tag":"Lernen","count":20},{"language":"es","tag":"Aprender","count":20},{"language":"fr","tag":"Apprendre","count":20},{"language":"it","tag":"Impara","count":20},{"language":"ko","tag":"학습","count":20},{"language":"pt-BR","tag":"Aprender","count":20},{"language":"zh","tag":"学习","count":20},{"language":"en","tag":"Audio","count":18},{"language":"ar","tag":"الصوت","count":18},{"language":"de","tag":"Audio","count":18},{"language":"es","tag":"Audio","count":18},{"language":"fr","tag":"Audio","count":18},{"language":"it","tag":"Audio","count":18},{"language":"ko","tag":"오디오","count":18},{"language":"pt-BR","tag":"Áudio","count":18},{"language":"zh","tag":"音频","count":18},{"language":"it","tag":"Immagini","count":12},{"language":"ko","tag":"이미지","count":12},{"language":"zh","tag":"图像","count":12},{"language":"en","tag":"Text \u0026 Chat","count":11},{"language":"ar","tag":"النص والدردشة","count":11},{"language":"de","tag":"Text \u0026 Chat","count":11},{"language":"es","tag":"Texto y chat","count":11},{"language":"fr","tag":"Texte et chat","count":11},{"language":"it","tag":"Testo e chat","count":11},{"language":"ko","tag":"텍스트 및 채팅","count":11},{"language":"pt-BR","tag":"Texto e chat","count":11},{"language":"zh","tag":"文本与聊天","count":11},{"language":"en","tag":"Agents \u0026 Integrations","count":10},{"language":"ar","tag":"الوكلاء والتكاملات","count":10},{"language":"de","tag":"Agenten \u0026 Integrationen","count":10},{"language":"es","tag":"Agentes e integraciones","count":10},{"language":"fr","tag":"Agents et intégrations","count":10},{"language":"it","tag":"Agenti e integrazioni","count":10},{"language":"ko","tag":"에이전트 및 통합","count":10},{"language":"pt-BR","tag":"Agentes e integrações","count":10},{"language":"zh","tag":"智能体与集成","count":10},{"language":"en","tag":"Video","count":9},{"language":"ar","tag":"الفيديو","count":9},{"language":"de","tag":"Video","count":9},{"language":"es","tag":"Vídeo","count":9},{"language":"fr","tag":"Vidéo","count":9},{"language":"it","tag":"Video","count":9},{"language":"ko","tag":"비디오","count":9},{"language":"pt-BR","tag":"Vídeo","count":9},{"language":"zh","tag":"视频","count":9},{"language":"en","tag":"Coding Tools","count":8},{"language":"ar","tag":"أدوات البرمجة","count":8},{"language":"de","tag":"Coding-Tools","count":8},{"language":"es","tag":"Herramientas de código","count":8},{"language":"fr","tag":"Outils de code","count":8},{"language":"pt-BR","tag":"Ferramentas de código","count":8}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","href":"/_mintlify/custom/veniceai/34931d66f610faa9/style.css"},{"filePath":"model-hub.css","href":"/_mintlify/custom/veniceai/53cdfa5dceec9078/model-hub.css"}],"page":{"pagePath":"api-reference/endpoint/image/generate","slug":"/api-reference/endpoint/image/generate","pageMetadata":{"title":"Generate Images","openapi":"POST /image/generate","og:title":"Image Generate | Venice API Docs","og:description":"Documentation covering Venice's image generation API.","description":"Generate an image based on input parameters\n\n**Authentication:** This endpoint accepts either a Bearer API key or a `SIGN-IN-WITH-X` header for x402 wallet-based authentication. The legacy `X-Sign-In-With-X` header is also accepted during migration. When using x402, a `402 Payment Required` response indicates insufficient balance and includes top-up instructions. A `401` response with code `X402_USER_NOT_ALLOWED` means the wallet's Venice account is banned or deleted, or the wallet's x402 credit account belongs to a different user.","href":"/api-reference/endpoint/image/generate"},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n strong: \"strong\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Generate an image based on input parameters\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Authentication:\"\n }), \" This endpoint accepts either a Bearer API key or a \", _jsx(_components.code, {\n children: \"SIGN-IN-WITH-X\"\n }), \" header for x402 wallet-based authentication. The legacy \", _jsx(_components.code, {\n children: \"X-Sign-In-With-X\"\n }), \" header is also accepted during migration. When using x402, a \", _jsx(_components.code, {\n children: \"402 Payment Required\"\n }), \" response indicates insufficient balance and includes top-up instructions. A \", _jsx(_components.code, {\n children: \"401\"\n }), \" response with code \", _jsx(_components.code, {\n children: \"X402_USER_NOT_ALLOWED\"\n }), \" means the wallet’s Venice account is banned or deleted, or the wallet’s x402 credit account belongs to a different user.\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,hr:`hr`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Info}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`sizing-options`,children:`Sizing Options`}),`\n`,_jsx(_components.p,{children:`Image models use model-specific sizing parameters:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Pixel-based models accept `,_jsx(_components.code,{children:`width`}),` and `,_jsx(_components.code,{children:`height`}),`, for example `,_jsx(_components.code,{children:`venice-sd35`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Aspect-ratio models accept `,_jsx(_components.code,{children:`aspect_ratio`}),`, for example `,_jsx(_components.code,{children:`qwen-image-2`}),`. The Qwen Image family — `,_jsx(_components.code,{children:`qwen-image`}),`, `,_jsx(_components.code,{children:`qwen-image-3`}),`, `,_jsx(_components.code,{children:`qwen-image-3-pro`}),`, `,_jsx(_components.code,{children:`qwen-image-2-1-turbo`}),`, and `,_jsx(_components.code,{children:`qwen-image-2-1-pro`}),` — `,_jsx(_components.strong,{children:`rejects`}),` `,_jsx(_components.code,{children:`width`}),` and `,_jsx(_components.code,{children:`height`}),` with a `,_jsx(_components.code,{children:`400`}),`; use `,_jsx(_components.code,{children:`aspect_ratio`}),` for those.`]}),`\n`,_jsxs(_components.li,{children:[`Resolution-tier models accept both `,_jsx(_components.code,{children:`aspect_ratio`}),` and `,_jsx(_components.code,{children:`resolution`}),`.`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`For example, `,_jsx(_components.code,{children:`gpt-image-2`}),`, `,_jsx(_components.code,{children:`nano-banana-2`}),`, and `,_jsx(_components.code,{children:`nano-banana-pro`}),` support `,_jsx(_components.code,{children:`resolution`}),` values of `,_jsx(_components.code,{children:`1K`}),`, `,_jsx(_components.code,{children:`2K`}),`, and `,_jsx(_components.code,{children:`4K`}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`7`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`7`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"model\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"gpt-image-2\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"prompt\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"a cinematic wide shot of Venice at sunset\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"aspect_ratio\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"16:9\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"resolution\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"4K\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"format\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"png\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`The same resolution-tier sizing pattern also applies to Nano Banana models:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`6`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`6`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"model\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"nano-banana-pro\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"prompt\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"a serene canal in venice at sunset\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"aspect_ratio\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"16:9\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"resolution\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2K\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`For models that accept aspect ratio but do not expose resolution tiers, send `,_jsx(_components.code,{children:`aspect_ratio`}),` without `,_jsx(_components.code,{children:`resolution`}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`5`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`5`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"model\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"qwen-image-2\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"prompt\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"a serene canal in venice at sunset\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"aspect_ratio\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"16:9\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`For models that use direct pixel dimensions, send `,_jsx(_components.code,{children:`width`}),` and `,_jsx(_components.code,{children:`height`}),` instead:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`6`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`6`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"model\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"venice-sd35\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"prompt\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"a serene canal in venice at sunset\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"width\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1024`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"height\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1024`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Check `,_jsx(_components.a,{href:`/models/image`,children:`Image Models`}),` or the `,_jsx(_components.a,{href:`/api-reference/endpoint/models/list`,children:`Models endpoint`}),` for each model’s supported sizing options before mixing sizing fields across models.`]}),`\n`,_jsx(Heading,{level:`2`,id:`quality-tiers`,children:`Quality Tiers`}),`\n`,_jsxs(_components.p,{children:[`Some models accept an optional `,_jsx(_components.code,{children:`quality`}),` parameter (`,_jsx(_components.code,{children:`low`}),`, `,_jsx(_components.code,{children:`medium`}),`, `,_jsx(_components.code,{children:`high`}),`) that trades visual fidelity for cost. Models that list `,_jsx(_components.code,{children:`qualities`}),` in `,_jsx(_components.code,{children:`model_spec.constraints`}),` from `,_jsx(_components.a,{href:`/api-reference/endpoint/models/list`,children:_jsx(_components.code,{children:`GET /models?type=image`})}),` accept only those values, and some support only a subset such as `,_jsx(_components.code,{children:`low`}),` and `,_jsx(_components.code,{children:`medium`}),`. Other models ignore the parameter.`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`7`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`7`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"model\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"gpt-image-2\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"prompt\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"a cinematic wide shot of Venice at sunset\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"aspect_ratio\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"16:9\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"resolution\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2K\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"quality\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"medium\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`When you omit `,_jsx(_components.code,{children:`quality`}),`, the model uses its default tier (`,_jsx(_components.code,{children:`high`}),` for `,_jsx(_components.code,{children:`gpt-image-2`}),`). Pricing depends on the combination of `,_jsx(_components.code,{children:`resolution`}),` and `,_jsx(_components.code,{children:`quality`}),` — the per-tier prices for `,_jsx(_components.code,{children:`gpt-image-2`}),` (1K/2K/4K × low/medium/high) are exposed under `,_jsx(_components.code,{children:`model_spec.pricing.quality`}),` in the `,_jsx(_components.a,{href:`/api-reference/endpoint/models/list`,children:`Models endpoint`}),` and listed on the `,_jsx(_components.a,{href:`/models/gpt-image-2`,children:`GPT Image 2 page`}),`.`]}),`\n`,_jsx(Info,{children:_jsxs(_components.p,{children:[`Quality-aware pricing is the default for all API and SDK callers — no opt-in header required. Requests that omit `,_jsx(_components.code,{children:`quality`}),` are billed at the model’s default tier (`,_jsx(_components.code,{children:`high`}),` for `,_jsx(_components.code,{children:`gpt-image-2`}),`).`]})}),`\n`,_jsx(Heading,{level:`2`,id:`postman-collection`,children:`Postman Collection`}),`\n`,_jsxs(_components.p,{children:[`For additional examples, please see this `,_jsx(_components.a,{href:`https://www.postman.com/veniceai/workspace/venice-ai-workspace/folder/38652128-0adc004d-2edf-4b88-a3bb-0f868c791c9c?action=share\u0026source=copy-link\u0026creator=38652128\u0026ctx=documentation`,children:`Postman Collection`}),`.`]}),`\n`,_jsx(_components.hr,{})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"codeStyling":"system","config":{},"pageMetadata":{"title":"Generate Images","openapi":"POST /image/generate","og:title":"Image Generate | Venice API Docs","og:description":"Documentation covering Venice's image generation API.","description":"Generate an image based on input parameters\n\n**Authentication:** This endpoint accepts either a Bearer API key or a `SIGN-IN-WITH-X` header for x402 wallet-based authentication. The legacy `X-Sign-In-With-X` header is also accepted during migration. When using x402, a `402 Payment Required` response indicates insufficient balance and includes top-up instructions. A `401` response with code `X402_USER_NOT_ALLOWED` means the wallet's Venice account is banned or deleted, or the wallet's x402 credit account belongs to a different user.","href":"/api-reference/endpoint/image/generate"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Sizing Options","slug":"sizing-options","depth":2,"children":[]},{"title":"Quality Tiers","slug":"quality-tiers","depth":2,"children":[]},{"title":"Postman Collection","slug":"postman-collection","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/veniceai/b3555a1bd66b36d0/model-search.js"],"openApiReferenceData":{"operation":{"description":"Generate an image based on input parameters\n\n**Authentication:** This endpoint accepts either a Bearer API key or a `SIGN-IN-WITH-X` header for x402 wallet-based authentication. The legacy `X-Sign-In-With-X` header is also accepted during migration. When using x402, a `402 Payment Required` response indicates insufficient balance and includes top-up instructions. A `401` response with code `X402_USER_NOT_ALLOWED` means the wallet's Venice account is banned or deleted, or the wallet's x402 credit account belongs to a different user.","operationId":"generateImage","parameters":["339a2fde-61be-4079-89a0-a8cbfb3857b0"],"security":["58fc17c6-67ee-4ad7-b1d8-890c5a81fcdf","5a84fd45-8e92-45d7-97c4-bb8817d38160"],"x-payment-info":{"price":{"mode":"dynamic","currency":"USD","min":"0.001","max":"10.00"},"protocols":[{"x402":{}}]},"summary":"/api/v1/image/generate","tags":["Image"],"requestBody":"066895d3-6ebb-41ca-b458-3da18ed841e3","responses":{"200":"a4e990a3-ca1f-452b-9491-9894bee07b04","400":"47c4a521-6678-4c49-bfa1-be5a762bcc40","401":"a712d421-8834-447c-8af1-5a06035572f8","402":"86cec85b-0d60-43ee-8a7f-041a2851cb2e","403":"b59142b2-9929-4402-8fcb-47f3809abf15","415":"a1ebbfbf-bcd2-48b3-ace0-97c4f8d3521e","422":"2e7ce55d-bb4e-4468-b722-cad7e9f8cb4b","429":"a0d06f5e-1023-4ef7-a887-acb9f9ec069d","500":"8f456df9-d214-4090-bf20-059812efe96c","503":"148a71d3-d64c-4ac9-812c-b1f50bcf82bb"},"method":"post","type":"path","servers":["c43d494a-43cb-4832-b632-5c080e36da4c"],"path":"/image/generate","baseUrlOptions":["https://api.venice.ai/api/v1"],"title":"/api/v1/image/generate","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated","disableProxy":true},"dependencies":{"parameters":{"339a2fde-61be-4079-89a0-a8cbfb3857b0":{"description":"Supported compression encodings (gzip, br). Only applied when return_binary is false.","in":"header","name":"Accept-Encoding","required":false,"schema":{"example":"gzip, br","type":"string","isRequired":false,"description":"Supported compression encodings (gzip, br). Only applied when return_binary is false.","uniqueKey":"","typeLabel":"string"}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"model":{"type":"string","description":"The model to use for image generation.","example":"grok-imagine-image","isRequired":true,"uniqueKey":"model","typeLabel":"string"},"prompt":{"type":"string","minLength":1,"maxLength":7500,"description":"The description for the image. Character limit is model specific and is listed in the promptCharacterLimit setting in the model list endpoint.","example":"A beautiful sunset over a mountain range","isRequired":true,"uniqueKey":"prompt","typeLabel":"string"},"anon_user_id":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[\\x20-\\x7E]+$","description":"Optional identifier for the API customer's end user. Combined with the Venice user id when attributing the request to upstream providers. Distinct from the discarded OpenAI `user` field. Must be printable ASCII and must not contain `||`.","example":"end-user-123","uniqueKey":"anon_user_id","typeLabel":"string"},"cfg_scale":{"type":"number","minimum":0,"exclusiveMinimum":true,"maximum":20,"description":"CFG scale parameter. Higher values lead to more adherence to the prompt.","example":7.5,"uniqueKey":"cfg_scale","typeLabel":"number"},"embed_exif_metadata":{"type":"boolean","default":false,"description":"Embed prompt generation information into the image's EXIF metadata.","example":false,"uniqueKey":"embed_exif_metadata","typeLabel":"boolean"},"format":{"type":"string","enum":["jpeg","png","webp"],"default":"webp","description":"The image format to return. WebP are smaller and optimized for web use. PNG are higher quality but larger in file size. ","example":"webp","uniqueKey":"format","typeLabel":"enum\u003cstring>"},"height":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":1280,"default":1024,"description":"Height of the generated image.","example":1024,"uniqueKey":"height","typeLabel":"integer"},"hide_watermark":{"type":"boolean","default":false,"description":"Whether to hide the Venice watermark. Venice may ignore this parameter for certain generated content.","example":false,"uniqueKey":"hide_watermark","typeLabel":"boolean"},"inpaint":{"oneOf":[{"description":"This feature is deprecated and was disabled on May 19th, 2025. A revised in-painting API will be launched in the near future.","deprecated":true,"uniqueKey":"inpaint.oneOf.0","typeLabel":"any"},{"description":"This feature is deprecated and was disabled on May 19th, 2025. A revised in-painting API will be launched in the near future.","deprecated":true,"type":"null","uniqueKey":"inpaint.oneOf.1","typeLabel":"null"}],"uniqueKey":"inpaint","typeLabel":"any | null"},"lora_strength":{"type":"integer","minimum":0,"maximum":100,"description":"Lora strength for the model. Only applies if the model uses additional Loras.","example":50,"uniqueKey":"lora_strength","typeLabel":"integer"},"negative_prompt":{"type":"string","maxLength":7500,"description":"A description of what should not be in the image. Character limit is model specific and is listed in the promptCharacterLimit constraint in the model list endpoint.","example":"Clouds, Rain, Snow","uniqueKey":"negative_prompt","typeLabel":"string"},"return_binary":{"type":"boolean","default":false,"description":"Whether to return binary image data instead of base64.","example":false,"uniqueKey":"return_binary","typeLabel":"boolean"},"variants":{"type":"integer","minimum":1,"maximum":4,"description":"Number of images to generate (1–4). Only supported when return_binary is false. Variants the model provider explicitly rejects under its content policy are omitted from a successful partial response. Other moderation outcomes can still return blacked-out images; check `x-venice-is-content-violation`.","example":3,"uniqueKey":"variants","typeLabel":"integer"},"safe_mode":{"type":"boolean","default":true,"description":"Whether to blur images classified as adult content. Defaults to true. Set to false to receive unblurred output. No Pro subscription is required, and the mature filter setting in the Venice app does not affect this. The x-venice-is-blurred response header reports whether the returned image was blurred.","example":false,"uniqueKey":"safe_mode","typeLabel":"boolean"},"seed":{"type":"integer","minimum":-999999999,"maximum":999999999,"default":0,"description":"Random seed for generation. If not provided, a random seed will be used.","example":123456789,"uniqueKey":"seed","typeLabel":"integer"},"steps":{"type":"integer","default":8,"description":"Number of inference steps. This model does not support steps - this field is ignored.","example":8,"uniqueKey":"steps","typeLabel":"integer"},"style_preset":{"type":"string","description":"An image style to apply to the image. Visit https://docs.venice.ai/api-reference/endpoint/image/styles for more details.","example":"3D Model","uniqueKey":"style_preset","typeLabel":"string"},"aspect_ratio":{"type":"string","description":"Aspect ratio (utilized by certain image models including Nano Banana). Examples: \"1:1\", \"16:9\".","example":"1:1","uniqueKey":"aspect_ratio","typeLabel":"string"},"resolution":{"type":"string","description":"Resolution (utilized by certain image models including Nano Banana). Examples: \"1K\", \"2K\", \"4K\".","example":"1K","uniqueKey":"resolution","typeLabel":"string"},"quality":{"type":"string","enum":["low","medium","high"],"description":"Output quality for supported models (e.g. GPT Image 2 / GPT Image 2 Edit). Higher values can increase the final request charge. See the model list for supported options.","example":"high","uniqueKey":"quality","typeLabel":"enum\u003cstring>"},"transparent_background":{"type":"boolean","description":"Return the image with a transparent background (alpha channel). Only supported by models with `supportsTransparentBackground: true` in their constraints (see GET /api/v1/models), and requires `format` png or webp; otherwise the request is rejected. Omit or set to false to keep the model default background.","example":false,"uniqueKey":"transparent_background","typeLabel":"boolean"},"enable_web_search":{"type":"boolean","description":"Enable web search for the image generation task. This will allow the model to use the latest information from the web to generate the image. Only supported by certain models. If web search is used, additional credits are getting charged.","example":false,"uniqueKey":"enable_web_search","typeLabel":"boolean"},"disable_prompt_optimization_thinking":{"type":"boolean","description":"Skip the model's prompt-optimization thinking step for faster generation. Only supported by models with `supportsOptimizePromptThinking`; ignored by others. Omit to use the model default.","example":false,"uniqueKey":"disable_prompt_optimization_thinking","typeLabel":"boolean"},"enhance_prompt":{"type":"boolean","description":"Rewrite the prompt before generation to add clarifying visual detail. Additional credits are charged when a rewrite is generated. Adds up to ~30 seconds before generation starts. When enhancement is applied, the final prompt is returned URL-encoded in the `x-venice-enhanced-prompt` response header. Defaults to false.","example":false,"uniqueKey":"enhance_prompt","typeLabel":"boolean"},"width":{"type":"integer","minimum":0,"exclusiveMinimum":true,"maximum":1280,"default":1024,"description":"Width of the generated image.","example":1024,"uniqueKey":"width","typeLabel":"integer"},"style_references":{"type":"array","items":{"type":"object","properties":{"image":{"oneOf":[{"type":"string","description":"A style reference image as a base64-encoded string (raw or data URI) or a URL starting with http:// or https://. Must be less than 8MB.","example":"https://example.com/style-reference.png","isRequired":true,"uniqueKey":"style_references.items.[INDEX].image.oneOf.0","typeLabel":"string"},{"type":"string","description":"A style reference image as a base64-encoded string (raw or data URI) or a URL starting with http:// or https://. Must be less than 8MB.","format":"uri","example":"https://example.com/style-reference.png","isRequired":true,"uniqueKey":"style_references.items.[INDEX].image.oneOf.1","typeLabel":"string\u003curi>"}],"isRequired":true,"uniqueKey":"style_references.items.[INDEX].image","typeLabel":"string | string\u003curi>"},"strength":{"type":"number","minimum":0.1,"maximum":1,"description":"How strongly the reference guides the output (0.1–1). Defaults to 0.5. Ignored by models where supportsStyleReferenceStrength is false.","example":0.5,"uniqueKey":"style_references.items.[INDEX].strength","typeLabel":"number"}},"required":["image"],"additionalProperties":false,"uniqueKey":"style_references.items.[INDEX]","typeLabel":"object"},"description":"Style reference images that guide the aesthetic of the generated image. Only supported by models with `supportsStyleReferences: true` (see GET /api/v1/models for the per-model `maxStyleReferences` limit).","example":[{"image":"https://example.com/style-reference.png","strength":0.5}],"uniqueKey":"style_references","typeLabel":"object[]"}},"required":["model","prompt"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"model":"grok-imagine-image","prompt":"A beautiful sunset over a mountain range","anon_user_id":"end-user-123","cfg_scale":7.5,"embed_exif_metadata":false,"format":"webp","height":1024,"hide_watermark":false,"inpaint":"\u003cunknown>","lora_strength":50,"negative_prompt":"Clouds, Rain, Snow","return_binary":false,"variants":3,"safe_mode":false,"seed":123456789,"steps":8,"style_preset":"3D Model","aspect_ratio":"1:1","resolution":"1K","quality":"high","transparent_background":false,"enable_web_search":false,"disable_prompt_optimization_thinking":false,"enhance_prompt":false,"width":1024,"style_references":[{"image":"https://example.com/style-reference.png","strength":0.5}]}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"a4e990a3-ca1f-452b-9491-9894bee07b04":{"description":"Successfully generated image","headers":{"X-Balance-Remaining":{"description":"Remaining x402 credit balance in USD after this request (only present for x402 auth).","required":false,"schema":{"type":"string","example":"4.230000"}},"Content-Encoding":{"description":"The encoding used to compress the response","schema":{"enum":["gzip","br"],"type":"string"}},"x-venice-is-blurred":{"description":"Indicates if the generated image is blurred. When Safe Venice is enabled, adult material will be returned blurred.","required":false,"schema":{"type":"boolean"}},"x-venice-is-content-violation":{"description":"Indicates if the generated image does not meet Venice terms of service.","required":false,"schema":{"type":"boolean"}},"x-venice-content-violation-count":{"description":"Number of requested variants omitted because the model provider explicitly rejected them under its content policy. Other moderation outcomes can still return blacked-out images flagged by `x-venice-is-content-violation`.","required":false,"schema":{"minimum":1,"type":"integer"}},"x-venice-model-deprecation-warning":{"description":"A warning that the model is scheduled for deprecation","required":false,"schema":{"type":"string"}},"x-venice-model-deprecation-date":{"description":"The date the model is scheduled for deprecation","required":false,"schema":{"type":"string","format":"date-time"}},"x-venice-deprecated":{"description":"Present and set to \"true\" when the model is deprecated. Absent otherwise.","required":false,"schema":{"type":"string","enum":["true"]}},"x-venice-deprecated-replacement":{"description":"Public API model ID clients should migrate to. Only present when a replacement is published.","required":false,"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"The ID of the request.","example":"generate-image-1234567890","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"images":{"type":"array","items":{"type":"string","uniqueKey":"images.items.[INDEX]","typeLabel":"string"},"description":"Base64 encoded image data. A partial response can contain fewer entries than requested.","isRequired":true,"uniqueKey":"images","typeLabel":"string[]"},"timing":{"type":"object","properties":{"inferenceDuration":{"type":"number","description":"Duration of inference in milliseconds","isRequired":true,"uniqueKey":"timing.inferenceDuration","typeLabel":"number"},"inferencePreprocessingTime":{"type":"number","description":"Duration of preprocessing in milliseconds","isRequired":true,"uniqueKey":"timing.inferencePreprocessingTime","typeLabel":"number"},"inferenceQueueTime":{"type":"number","description":"Duration of queueing in milliseconds","isRequired":true,"uniqueKey":"timing.inferenceQueueTime","typeLabel":"number"},"total":{"type":"number","description":"Total duration of the request in milliseconds","isRequired":true,"uniqueKey":"timing.total","typeLabel":"number"}},"required":["inferenceDuration","inferencePreprocessingTime","inferenceQueueTime","total"],"isRequired":true,"uniqueKey":"timing","typeLabel":"object"},"content_policy_violation_count":{"type":"integer","minimum":1,"description":"Number of requested variants omitted because the model provider explicitly rejected them under its content policy. Other moderation outcomes can still return blacked-out images flagged by `x-venice-is-content-violation`.","example":1,"uniqueKey":"content_policy_violation_count","typeLabel":"integer"},"request":{"oneOf":[{"description":"The original request data sent to the API.","uniqueKey":"request.oneOf.0","typeLabel":"any"},{"description":"The original request data sent to the API.","type":"null","uniqueKey":"request.oneOf.1","typeLabel":"null"}],"uniqueKey":"request","typeLabel":"any | null"}},"required":["id","images","timing"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"generate-image-1234567890","images":["\u003cstring>"],"timing":{"inferenceDuration":123,"inferencePreprocessingTime":123,"inferenceQueueTime":123,"total":123},"content_policy_violation_count":1,"request":"\u003cunknown>"}}},"exampleType":"generated"},"image/jpeg":{"schema":{"description":"Raw image data when return_binary is true and format is jpeg","format":"binary","type":"string","uniqueKey":"","typeLabel":"file"},"examples":{"Example":{"title":"Example","value":"\u003cstring>"}},"exampleType":"generated"},"image/png":{"schema":{"description":"Raw image data when return_binary is true and format is png","format":"binary","type":"string","uniqueKey":"","typeLabel":"file"},"examples":{"Example":{"title":"Example","value":"\u003cstring>"}},"exampleType":"generated"},"image/webp":{"schema":{"description":"Raw image data when return_binary is true and format is webp","format":"binary","type":"string","uniqueKey":"","typeLabel":"file"},"examples":{"Example":{"title":"Example","value":"\u003cstring>"}},"exampleType":"generated"}},"exampleType":"generated"},"47c4a521-6678-4c49-bfa1-be5a762bcc40":{"description":"Invalid request parameters","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"A description of the error","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"details":{"type":"object","properties":{},"description":"Details about the incorrect input","example":{"_errors":[],"field":{"_errors":["Field is required"]}},"uniqueKey":"details","typeLabel":"object"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","details":{"_errors":[],"field":{"_errors":["Field is required"]}}}}},"exampleType":"generated"}},"exampleType":"generated"},"a712d421-8834-447c-8af1-5a06035572f8":{"description":"- Authentication failed\n- This model is only available to Pro users","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"A description of the error","isRequired":true,"uniqueKey":"error","typeLabel":"string"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"86cec85b-0d60-43ee-8a7f-041a2851cb2e":{"description":"Payment or balance required. Response varies by authentication state:\n\n**API Key users:** Standard error response with `INSUFFICIENT_BALANCE` code. Top up your Venice balance at venice.ai.\n\n**Unauthenticated x402 discovery:** Structured x402 response with `x402Version`, `resource`, `accepts`, and `extensions[\"sign-in-with-x\"]`. The `accepts` array advertises Base and Solana payment requirements.\n\n**Authenticated x402 wallet users with insufficient credit:** Structured response with `PAYMENT_REQUIRED` code containing:\n- `topUpInstructions`: Step-by-step guide to top up via x402 protocol\n- `supportedTokens` / `supportedChains`: Accepted payment methods\n- `siwxChallenge`: Fresh Sign-In-With-X challenge metadata\n\nA wallet that has never completed a top-up has no Venice account yet and receives this response with a balance of `0`. The first successful top-up creates the account.\n\nThe `PAYMENT-REQUIRED` header also contains a base64-encoded x402 protocol object with the payment requirements for programmatic discovery.","headers":{"PAYMENT-REQUIRED":{"description":"Base64-encoded JSON with x402 payment requirements. Present on x402 middleware 402 responses. Decode to choose and sign one accepted payment requirement programmatically.","required":false,"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"A description of the error","isRequired":true,"uniqueKey":"oneOf.0.error","typeLabel":"string"}},"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","description":"Returned when an inference request has no API key or wallet authentication. The JSON body includes x402 discovery requirements and authentication options.","required":["x402Version","resource","accepts","authOptions"],"properties":{"x402Version":{"type":"number","description":"x402 protocol version.","example":2,"isRequired":true,"uniqueKey":"oneOf.1.x402Version","typeLabel":"number"},"resource":{"type":"object","properties":{"url":{"type":"string","description":"Protected resource URL.","example":"https://api.venice.ai/api/v1/chat/completions","isRequired":true,"uniqueKey":"oneOf.1.resource.url","typeLabel":"string"},"description":{"type":"string","description":"Human-readable resource description.","example":"Venice API","isRequired":true,"uniqueKey":"oneOf.1.resource.description","typeLabel":"string"},"mimeType":{"type":"string","description":"Resource MIME type.","example":"application/json","isRequired":true,"uniqueKey":"oneOf.1.resource.mimeType","typeLabel":"string"}},"required":["url","description","mimeType"],"additionalProperties":false,"isRequired":true,"uniqueKey":"oneOf.1.resource","typeLabel":"object"},"accepts":{"type":"array","items":{"type":"object","properties":{"scheme":{"type":"string","enum":["exact"],"description":"x402 payment scheme.","example":"exact","isRequired":true,"uniqueKey":"oneOf.1.accepts.items.[INDEX].scheme","typeLabel":"enum\u003cstring>"},"network":{"type":"string","description":"Payment network for this requirement in CAIP-2 form (e.g. `eip155:8453` for Base, `solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp` for Solana mainnet).","example":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","isRequired":true,"uniqueKey":"oneOf.1.accepts.items.[INDEX].network","typeLabel":"string"},"asset":{"type":"string","description":"USDC token address or mint for the selected network.","example":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","isRequired":true,"uniqueKey":"oneOf.1.accepts.items.[INDEX].asset","typeLabel":"string"},"amount":{"type":"string","description":"Required payment amount in base units (USDC has 6 decimals).","example":"10000000","isRequired":true,"uniqueKey":"oneOf.1.accepts.items.[INDEX].amount","typeLabel":"string"},"payTo":{"type":"string","description":"Receiver wallet address for the selected network.","example":"8qUL23aSj7mDWdoLMXGHFvnVCT9wd7jXcysiekroADEL","isRequired":true,"uniqueKey":"oneOf.1.accepts.items.[INDEX].payTo","typeLabel":"string"},"maxTimeoutSeconds":{"type":"number","description":"Maximum time allowed for payment settlement.","example":300,"isRequired":true,"uniqueKey":"oneOf.1.accepts.items.[INDEX].maxTimeoutSeconds","typeLabel":"number"},"extra":{"type":"object","properties":{},"description":"Network-specific x402 metadata. Solana requirements include a feePayer.","example":{"name":"USD Coin","version":"2","feePayer":"BFK9TLC3edb13K6v4YyH3DwPb5DSUpkWvb7XnqCL9b4F"},"isRequired":true,"uniqueKey":"oneOf.1.accepts.items.[INDEX].extra","typeLabel":"object"}},"required":["scheme","network","asset","amount","payTo","maxTimeoutSeconds","extra"],"additionalProperties":false,"uniqueKey":"oneOf.1.accepts.items.[INDEX]","typeLabel":"object"},"description":"Protocol payment requirements. Clients should choose one entry, such as Base or Solana, and sign exactly that requirement.","isRequired":true,"uniqueKey":"oneOf.1.accepts","typeLabel":"object[]"},"authOptions":{"type":"object","properties":{"apiKey":{"type":"object","properties":{"header":{"type":"string","description":"API key authentication header format.","example":"Authorization: Bearer YOUR_API_KEY","isRequired":true,"uniqueKey":"oneOf.1.authOptions.apiKey.header","typeLabel":"string"},"getKey":{"type":"string","description":"Where to create or manage API keys.","example":"https://venice.ai/settings/api","isRequired":true,"uniqueKey":"oneOf.1.authOptions.apiKey.getKey","typeLabel":"string"},"docs":{"type":"string","description":"API key documentation URL.","example":"https://docs.venice.ai/api-reference","isRequired":true,"uniqueKey":"oneOf.1.authOptions.apiKey.docs","typeLabel":"string"}},"required":["header","getKey","docs"],"additionalProperties":false,"isRequired":true,"uniqueKey":"oneOf.1.authOptions.apiKey","typeLabel":"object"},"x402Wallet":{"type":"object","properties":{"header":{"type":"string","description":"Header used for Sign-In-With-X wallet authentication.","example":"SIGN-IN-WITH-X","isRequired":true,"uniqueKey":"oneOf.1.authOptions.x402Wallet.header","typeLabel":"string"},"legacyHeader":{"type":"string","description":"Legacy Sign-In-With-X header accepted during migration.","example":"X-Sign-In-With-X","isRequired":true,"uniqueKey":"oneOf.1.authOptions.x402Wallet.legacyHeader","typeLabel":"string"},"topUp":{"type":"string","description":"Endpoint used to discover and submit x402 top-up payments.","example":"POST /api/v1/x402/top-up","isRequired":true,"uniqueKey":"oneOf.1.authOptions.x402Wallet.topUp","typeLabel":"string"},"docs":{"type":"string","description":"x402 top-up API documentation URL.","example":"https://docs.venice.ai/api-reference/endpoint/x402/top-up","isRequired":true,"uniqueKey":"oneOf.1.authOptions.x402Wallet.docs","typeLabel":"string"}},"required":["header","legacyHeader","topUp","docs"],"additionalProperties":false,"isRequired":true,"uniqueKey":"oneOf.1.authOptions.x402Wallet","typeLabel":"object"}},"required":["apiKey","x402Wallet"],"additionalProperties":false,"isRequired":true,"uniqueKey":"oneOf.1.authOptions","typeLabel":"object"},"error":{"type":"string","description":"Human-readable payment requirement message.","example":"Payment required","uniqueKey":"oneOf.1.error","typeLabel":"string"},"extensions":{"type":"object","properties":{},"description":"Protocol extensions. Inference 402 responses include `sign-in-with-x` with a SIWX challenge for wallet-credit authentication.","uniqueKey":"oneOf.1.extensions","typeLabel":"object"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","required":["error","code","reason","suggestedTopUpUsd","minimumTopUpUsd","supportedTokens","supportedChains","topUpInstructions","siwxChallenge"],"properties":{"error":{"type":"string","enum":["Payment required"],"description":"Error message indicating payment is required.","isRequired":true,"uniqueKey":"oneOf.2.error","typeLabel":"enum\u003cstring>"},"code":{"type":"string","enum":["PAYMENT_REQUIRED"],"description":"Machine-readable error code.","isRequired":true,"uniqueKey":"oneOf.2.code","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","enum":["insufficient_balance"],"description":"Reason the x402-authenticated request could not proceed.","isRequired":true,"uniqueKey":"oneOf.2.reason","typeLabel":"enum\u003cstring>"},"suggestedTopUpUsd":{"type":"number","description":"Suggested amount to top up in USD.","example":10,"isRequired":true,"uniqueKey":"oneOf.2.suggestedTopUpUsd","typeLabel":"number"},"minimumTopUpUsd":{"type":"number","description":"Minimum allowed top-up amount in USD.","example":5,"isRequired":true,"uniqueKey":"oneOf.2.minimumTopUpUsd","typeLabel":"number"},"supportedTokens":{"type":"array","items":{"type":"string","uniqueKey":"oneOf.2.supportedTokens.items.[INDEX]","typeLabel":"string"},"description":"List of supported token symbols for payment.","example":["USDC"],"isRequired":true,"uniqueKey":"oneOf.2.supportedTokens","typeLabel":"string[]"},"supportedChains":{"type":"array","items":{"type":"string","uniqueKey":"oneOf.2.supportedChains.items.[INDEX]","typeLabel":"string"},"description":"List of supported top-up rails.","example":["base","solana"],"isRequired":true,"uniqueKey":"oneOf.2.supportedChains","typeLabel":"string[]"},"topUpInstructions":{"type":"object","properties":{"step1":{"type":"string","description":"First step: get payment requirements.","example":"POST /api/v1/x402/top-up with no payment header to get payment requirements","isRequired":true,"uniqueKey":"oneOf.2.topUpInstructions.step1","typeLabel":"string"},"step2":{"type":"string","description":"Second step: sign the payment.","example":"Choose a payment option from accepts and sign a USDC transfer authorization using the x402 SDK (createPaymentHeader)","isRequired":true,"uniqueKey":"oneOf.2.topUpInstructions.step2","typeLabel":"string"},"step3":{"type":"string","description":"Third step: submit the payment.","example":"POST /api/v1/x402/top-up with the signed PAYMENT-SIGNATURE header","isRequired":true,"uniqueKey":"oneOf.2.topUpInstructions.step3","typeLabel":"string"},"receiverWallet":{"type":"string","description":"Legacy Base receiver wallet address. Prefer the selected accepts entry from /x402/top-up for network-specific payTo values.","example":"\u003cRECEIVER_WALLET_ADDRESS>","isRequired":true,"uniqueKey":"oneOf.2.topUpInstructions.receiverWallet","typeLabel":"string"},"tokenAddress":{"type":"string","description":"Legacy Base USDC token address. Prefer the selected accepts entry from /x402/top-up for network-specific assets.","example":"\u003cUSDC_TOKEN_ADDRESS>","isRequired":true,"uniqueKey":"oneOf.2.topUpInstructions.tokenAddress","typeLabel":"string"},"tokenDecimals":{"type":"number","description":"Token decimal places.","example":6,"isRequired":true,"uniqueKey":"oneOf.2.topUpInstructions.tokenDecimals","typeLabel":"number"},"network":{"type":"string","description":"Legacy Base target network. Prefer the selected accepts entry from /x402/top-up for network-specific values.","example":"eip155:8453","isRequired":true,"uniqueKey":"oneOf.2.topUpInstructions.network","typeLabel":"string"},"minimumAmountUsd":{"type":"number","description":"Minimum top-up amount in USD.","example":5,"isRequired":true,"uniqueKey":"oneOf.2.topUpInstructions.minimumAmountUsd","typeLabel":"number"}},"required":["step1","step2","step3","receiverWallet","tokenAddress","tokenDecimals","network","minimumAmountUsd"],"additionalProperties":false,"isRequired":true,"uniqueKey":"oneOf.2.topUpInstructions","typeLabel":"object"},"siwxChallenge":{"type":"object","properties":{"info":{"type":"object","properties":{"domain":{"type":"string","description":"Domain for the SIWX challenge.","example":"api.venice.ai","isRequired":true,"uniqueKey":"oneOf.2.siwxChallenge.info.domain","typeLabel":"string"},"uri":{"type":"string","description":"Resource URI for the challenge.","example":"https://api.venice.ai/api/v1/chat/completions","isRequired":true,"uniqueKey":"oneOf.2.siwxChallenge.info.uri","typeLabel":"string"},"version":{"type":"string","description":"SIWX version.","example":"1","isRequired":true,"uniqueKey":"oneOf.2.siwxChallenge.info.version","typeLabel":"string"},"nonce":{"type":"string","description":"Server-generated nonce for replay protection: 32 hex characters.","example":"a1b2c3d4e5f67890a1b2c3d4e5f67890","isRequired":true,"uniqueKey":"oneOf.2.siwxChallenge.info.nonce","typeLabel":"string"},"issuedAt":{"type":"string","description":"ISO timestamp when the challenge was issued.","example":"2026-04-09T12:00:00.000Z","isRequired":true,"uniqueKey":"oneOf.2.siwxChallenge.info.issuedAt","typeLabel":"string"},"expirationTime":{"type":"string","description":"ISO timestamp when the challenge expires.","example":"2026-04-09T12:05:00.000Z","isRequired":true,"uniqueKey":"oneOf.2.siwxChallenge.info.expirationTime","typeLabel":"string"},"statement":{"type":"string","description":"Human-readable statement for the signature.","example":"Sign in to Venice AI","isRequired":true,"uniqueKey":"oneOf.2.siwxChallenge.info.statement","typeLabel":"string"}},"required":["domain","uri","version","nonce","issuedAt","expirationTime","statement"],"additionalProperties":false,"isRequired":true,"uniqueKey":"oneOf.2.siwxChallenge.info","typeLabel":"object"},"supportedChains":{"type":"array","items":{"type":"object","properties":{"chainId":{"type":"string","description":"Supported chain identity.","example":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","isRequired":true,"uniqueKey":"oneOf.2.siwxChallenge.supportedChains.items.[INDEX].chainId","typeLabel":"string"},"type":{"type":"string","enum":["eip191","ed25519"],"description":"Signature algorithm: `eip191` for EVM wallets (EOAs and smart contract wallets), `ed25519` for Solana.","example":"ed25519","isRequired":true,"uniqueKey":"oneOf.2.siwxChallenge.supportedChains.items.[INDEX].type","typeLabel":"enum\u003cstring>"}},"required":["chainId","type"],"additionalProperties":false,"uniqueKey":"oneOf.2.siwxChallenge.supportedChains.items.[INDEX]","typeLabel":"object"},"description":"Supported SIWX chains and signature types.","isRequired":true,"uniqueKey":"oneOf.2.siwxChallenge.supportedChains","typeLabel":"object[]"},"schema":{"type":"object","properties":{},"description":"JSON Schema of the proof the client sends in the `SIGN-IN-WITH-X` header.","isRequired":true,"uniqueKey":"oneOf.2.siwxChallenge.schema","typeLabel":"object"}},"required":["info","supportedChains","schema"],"additionalProperties":false,"isRequired":true,"uniqueKey":"oneOf.2.siwxChallenge","typeLabel":"object"},"message":{"type":"string","description":"Human-readable context about the payment requirement.","example":"Insufficient x402 balance","uniqueKey":"oneOf.2.message","typeLabel":"string"},"currentBalanceUsd":{"type":"number","description":"Current x402 credit balance for the wallet.","example":0.01,"uniqueKey":"oneOf.2.currentBalanceUsd","typeLabel":"number"},"minimumBalanceUsd":{"type":"number","description":"Minimum x402 credit balance required before the request can run.","example":0.1,"uniqueKey":"oneOf.2.minimumBalanceUsd","typeLabel":"number"},"description":{"type":"string","description":"Protected resource description.","example":"Venice API","uniqueKey":"oneOf.2.description","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.2","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"b59142b2-9929-4402-8fcb-47f3809abf15":{"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","enum":["This API key is restricted to configured IP addresses, and this request's source IP is not allowed"],"description":"A description of the error","example":"This API key is restricted to configured IP addresses, and this request's source IP is not allowed","isRequired":true,"uniqueKey":"error","typeLabel":"enum\u003cstring>"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"This API key is restricted to configured IP addresses, and this request's source IP is not allowed"}}},"exampleType":"generated"}},"description":"This API key is restricted to configured IP addresses, and this request's source IP is not allowed","exampleType":"generated"},"a1ebbfbf-bcd2-48b3-ace0-97c4f8d3521e":{"description":"Invalid request content-type","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"A description of the error","isRequired":true,"uniqueKey":"error","typeLabel":"string"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"2e7ce55d-bb4e-4468-b722-cad7e9f8cb4b":{"description":"The prompt violates the content policy of Venice.ai or the model provider, or a style reference image exceeds the pixel limit.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"A description of the error","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"suggested_prompt":{"type":"string","description":"An optional provider-suggested replacement prompt that complies with content policy.","example":"A watercolor painting of a lighthouse on a rocky coast at sunset.","uniqueKey":"suggested_prompt","typeLabel":"string"},"recommended_model":{"type":"string","description":"A model ID that can be used as an alternative when a recommendation is available.","example":"chroma","uniqueKey":"recommended_model","typeLabel":"string"},"retryable":{"type":"boolean","description":"Present on every content-policy rejection: whether retrying the same request may succeed. True when the selected model's provider moderation is nondeterministic; false when the same request would be rejected again. Absent on other 422 errors, such as an input image that exceeds the pixel limit.","example":true,"uniqueKey":"retryable","typeLabel":"boolean"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","suggested_prompt":"A watercolor painting of a lighthouse on a rocky coast at sunset.","recommended_model":"chroma","retryable":true}}},"exampleType":"generated"}},"exampleType":"generated"},"a0d06f5e-1023-4ef7-a887-acb9f9ec069d":{"description":"Rate limit exceeded","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"A description of the error","isRequired":true,"uniqueKey":"error","typeLabel":"string"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"8f456df9-d214-4090-bf20-059812efe96c":{"description":"Inference processing failed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"A description of the error","isRequired":true,"uniqueKey":"error","typeLabel":"string"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"148a71d3-d64c-4ac9-812c-b1f50bcf82bb":{"description":"The model is at capacity. Please try again later.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"A description of the error","isRequired":true,"uniqueKey":"error","typeLabel":"string"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"58fc17c6-67ee-4ad7-b1d8-890c5a81fcdf":{"BearerAuth":{"bearerFormat":"JWT","scheme":"bearer","type":"http","scopes":[],"schemeName":"BearerAuth"}},"5a84fd45-8e92-45d7-97c4-bb8817d38160":{"siwx":{"description":"Wallet-based authentication using the x402 sign-in-with-x extension. Supports EVM wallets on Base (EIP-4361 SIWE, including EIP-1271 smart contract wallets) and Ed25519 wallets on Solana mainnet.\n\n**Header format:** Base64-encoded JSON proof with these fields:\n- `domain` — `api.venice.ai`\n- `address` — EVM or Solana wallet address\n- `uri` — URL of the requested resource\n- `version` — `\"1\"`\n- `chainId` — `\"eip155:8453\"` for Base or `\"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp\"` for Solana\n- `type` — `\"eip191\"` for EVM wallets or `\"ed25519\"` for Solana\n- `nonce` — the `nonce` from the latest 402 challenge (`extensions[\"sign-in-with-x\"].info.nonce`), or 32 random hex characters. Each nonce works once.\n- `issuedAt` — ISO 8601 time the proof was signed. Proofs older than 5 minutes are rejected.\n- `expirationTime`, `notBefore`, `statement`, `resources` — optional\n- `signature` — signature over the message built from these fields: an EIP-4361 SIWE message for EVM (hex) or the Solana sign-in message (base58)\n\nVenice rebuilds the signed message from these fields, with the bare reference on its `Chain ID` line (`8453`, `5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp`). Proofs from older clients that send the signed `message` itself are still accepted.\n\n**Example (TypeScript, viem):**\n```\nimport { privateKeyToAccount } from 'viem/accounts'\nimport { createSiweMessage } from 'viem/siwe'\n\nconst account = privateKeyToAccount(PRIVATE_KEY)\nconst fields = { domain: 'api.venice.ai', address: account.address, uri: 'https://api.venice.ai/api/v1/chat/completions', version: '1' as const, nonce: crypto.randomUUID().replace(/-/g, ''), issuedAt: new Date().toISOString(), statement: 'Sign in to Venice AI' }\nconst message = createSiweMessage({ ...fields, chainId: 8453, issuedAt: new Date(fields.issuedAt) })\nconst signature = await account.signMessage({ message })\nconst header = btoa(JSON.stringify({ ...fields, chainId: 'eip155:8453', type: 'eip191', signature }))\n// Set header: SIGN-IN-WITH-X: \u003cheader>\n```\n\n**SDK:** `npm install venice-x402-client` provides `VeniceClient` and `createAuthFetch` which handle this automatically.\n\n**Billing:** x402 users pay from a prepaid x402 credit balance. Top up via `POST /x402/top-up`. When balance is insufficient, endpoints return `402` with structured top-up instructions.","in":"header","name":"SIGN-IN-WITH-X","type":"apiKey","scopes":[],"schemeName":"siwx"}}},"servers":{"c43d494a-43cb-4832-b632-5c080e36da4c":{"url":"https://api.venice.ai/api/v1"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"bearerFormat":"JWT","scheme":"bearer","type":"http","scopes":[],"schemeName":"BearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"BearerAuth","name":"Authorization"}],"title":"BearerAuth"},{"schemes":[{"scheme":{"description":"Wallet-based authentication using the x402 sign-in-with-x extension. Supports EVM wallets on Base (EIP-4361 SIWE, including EIP-1271 smart contract wallets) and Ed25519 wallets on Solana mainnet.\n\n**Header format:** Base64-encoded JSON proof with these fields:\n- `domain` — `api.venice.ai`\n- `address` — EVM or Solana wallet address\n- `uri` — URL of the requested resource\n- `version` — `\"1\"`\n- `chainId` — `\"eip155:8453\"` for Base or `\"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp\"` for Solana\n- `type` — `\"eip191\"` for EVM wallets or `\"ed25519\"` for Solana\n- `nonce` — the `nonce` from the latest 402 challenge (`extensions[\"sign-in-with-x\"].info.nonce`), or 32 random hex characters. Each nonce works once.\n- `issuedAt` — ISO 8601 time the proof was signed. Proofs older than 5 minutes are rejected.\n- `expirationTime`, `notBefore`, `statement`, `resources` — optional\n- `signature` — signature over the message built from these fields: an EIP-4361 SIWE message for EVM (hex) or the Solana sign-in message (base58)\n\nVenice rebuilds the signed message from these fields, with the bare reference on its `Chain ID` line (`8453`, `5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp`). Proofs from older clients that send the signed `message` itself are still accepted.\n\n**Example (TypeScript, viem):**\n```\nimport { privateKeyToAccount } from 'viem/accounts'\nimport { createSiweMessage } from 'viem/siwe'\n\nconst account = privateKeyToAccount(PRIVATE_KEY)\nconst fields = { domain: 'api.venice.ai', address: account.address, uri: 'https://api.venice.ai/api/v1/chat/completions', version: '1' as const, nonce: crypto.randomUUID().replace(/-/g, ''), issuedAt: new Date().toISOString(), statement: 'Sign in to Venice AI' }\nconst message = createSiweMessage({ ...fields, chainId: 8453, issuedAt: new Date(fields.issuedAt) })\nconst signature = await account.signMessage({ message })\nconst header = btoa(JSON.stringify({ ...fields, chainId: 'eip155:8453', type: 'eip191', signature }))\n// Set header: SIGN-IN-WITH-X: \u003cheader>\n```\n\n**SDK:** `npm install venice-x402-client` provides `VeniceClient` and `createAuthFetch` which handle this automatically.\n\n**Billing:** x402 users pay from a prepaid x402 credit balance. Top up via `POST /x402/top-up`. When balance is insufficient, endpoints return `402` with structured top-up instructions.","in":"header","name":"SIGN-IN-WITH-X","type":"apiKey","scopes":[],"schemeName":"siwx"},"schema":{"title":"SIGN-IN-WITH-X","type":"string","description":"Wallet-based authentication using the x402 sign-in-with-x extension. Supports EVM wallets on Base (EIP-4361 SIWE, including EIP-1271 smart contract wallets) and Ed25519 wallets on Solana mainnet.\n\n**Header format:** Base64-encoded JSON proof with these fields:\n- `domain` — `api.venice.ai`\n- `address` — EVM or Solana wallet address\n- `uri` — URL of the requested resource\n- `version` — `\"1\"`\n- `chainId` — `\"eip155:8453\"` for Base or `\"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp\"` for Solana\n- `type` — `\"eip191\"` for EVM wallets or `\"ed25519\"` for Solana\n- `nonce` — the `nonce` from the latest 402 challenge (`extensions[\"sign-in-with-x\"].info.nonce`), or 32 random hex characters. Each nonce works once.\n- `issuedAt` — ISO 8601 time the proof was signed. Proofs older than 5 minutes are rejected.\n- `expirationTime`, `notBefore`, `statement`, `resources` — optional\n- `signature` — signature over the message built from these fields: an EIP-4361 SIWE message for EVM (hex) or the Solana sign-in message (base58)\n\nVenice rebuilds the signed message from these fields, with the bare reference on its `Chain ID` line (`8453`, `5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp`). Proofs from older clients that send the signed `message` itself are still accepted.\n\n**Example (TypeScript, viem):**\n```\nimport { privateKeyToAccount } from 'viem/accounts'\nimport { createSiweMessage } from 'viem/siwe'\n\nconst account = privateKeyToAccount(PRIVATE_KEY)\nconst fields = { domain: 'api.venice.ai', address: account.address, uri: 'https://api.venice.ai/api/v1/chat/completions', version: '1' as const, nonce: crypto.randomUUID().replace(/-/g, ''), issuedAt: new Date().toISOString(), statement: 'Sign in to Venice AI' }\nconst message = createSiweMessage({ ...fields, chainId: 8453, issuedAt: new Date(fields.issuedAt) })\nconst signature = await account.signMessage({ message })\nconst header = btoa(JSON.stringify({ ...fields, chainId: 'eip155:8453', type: 'eip191', signature }))\n// Set header: SIGN-IN-WITH-X: \u003cheader>\n```\n\n**SDK:** `npm install venice-x402-client` provides `VeniceClient` and `createAuthFetch` which handle this automatically.\n\n**Billing:** x402 users pay from a prepaid x402 credit balance. Top up via `POST /x402/top-up`. When balance is insufficient, endpoints return `402` with structured top-up instructions.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"siwx","name":"SIGN-IN-WITH-X"}],"title":"siwx"}]},"originalFileLocation":"swagger.yaml"},"subdomain":"veniceai","siteName":"Venice API Docs","title":"Image Generate | Venice API Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/api-reference/endpoint/image/generate","matchLevel":0},"pt-BR":{"href":"/pt-BR/api-reference/endpoint/image/generate","matchLevel":1},"ar":{"href":"/ar/api-reference/endpoint/image/generate","matchLevel":1},"it":{"href":"/it/api-reference/endpoint/image/generate","matchLevel":1},"de":{"href":"/de/api-reference/endpoint/image/generate","matchLevel":1},"es":{"href":"/es/api-reference/endpoint/image/generate","matchLevel":1},"fr":{"href":"/fr/api-reference/endpoint/image/generate","matchLevel":1},"zh":{"href":"/zh/api-reference/endpoint/image/generate","matchLevel":1},"ko":{"href":"/ko/api-reference/endpoint/image/generate","matchLevel":1}}},"lastModified":"2026-11-13T19:30:56.600Z","originalFileLocation":"api-reference/endpoint/image/generate.mdx","locale":"en"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Generate an image based on input parameters Authentication: This endpoint accepts either a Bearer API key or a SIGN-IN-WITH-X header for x402 wallet-based authentication. The legacy X-Sign-In-With-X header is also accepted during migration. When using x402, a 402 Payment Required response indicates insufficient balance and includes top-up instructions. A 401 response with code X402_USER_NOT_ALLOWED means the wallet\u0026#x27;s Venice account is banned or deleted, or the wallet\u0026#x27;s x402 credit account belongs to a different user.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Venice API Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/veniceai/bx2bxRtmLEf0wvnq/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/veniceai/bx2bxRtmLEf0wvnq/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/veniceai/bx2bxRtmLEf0wvnq/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/veniceai/bx2bxRtmLEf0wvnq/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/veniceai/bx2bxRtmLEf0wvnq/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/veniceai/bx2bxRtmLEf0wvnq/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/veniceai/bx2bxRtmLEf0wvnq/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/veniceai/bx2bxRtmLEf0wvnq/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/veniceai/bx2bxRtmLEf0wvnq/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Image Generate | Venice API Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Documentation covering Venice\u0026#x27;s image generation API.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Venice API Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.venice.ai/api-reference/endpoint/image/generate\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://veniceai.mintlify.site/_mintlify/api/og/v2?division=Images\u0026amp;title=Generate+Images\u0026amp;description=Generate+an+image+based+on+input+parameters%0A%0A**Authentication%3A**+This+endpoint+accepts+either+a+Bearer+API+key+or+a+%60SIGN-IN-WITH-X%60+header+for+x402+wallet-base\u0026amp;theme=e3e98313d1ad7eff1b456df0\u0026amp;signature=1afaeabd6cdd396e2450165b7d95299c980ef84192b5ec127f46baf04b577d87\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Image Generate | Venice API Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Documentation covering Venice\u0026#x27;s image generation API.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://veniceai.mintlify.site/_mintlify/api/og/v2?division=Images\u0026amp;title=Generate+Images\u0026amp;description=Generate+an+image+based+on+input+parameters%0A%0A**Authentication%3A**+This+endpoint+accepts+either+a+Bearer+API+key+or+a+%60SIGN-IN-WITH-X%60+header+for+x402+wallet-base\u0026amp;theme=e3e98313d1ad7eff1b456df0\u0026amp;signature=1afaeabd6cdd396e2450165b7d95299c980ef84192b5ec127f46baf04b577d87\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/veniceai/bx2bxRtmLEf0wvnq/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Venice API Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#125DA3\">\u003cmeta data-mint-head name=\"og:locale\" content=\"en_US\">\u003cmeta data-mint-head name=\"og:logo\" content=\"/logo/light.svg\">\u003cmeta data-mint-head name=\"article:publisher\" content=\"Venice AI\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.venice.ai/api-reference/endpoint/image/generate\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/endpoint/image/generate.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.venice.ai/api-reference/endpoint/image/generate\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt-BR\" href=\"https://docs.venice.ai/pt-BR/api-reference/endpoint/image/generate\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ar\" href=\"https://docs.venice.ai/ar/api-reference/endpoint/image/generate\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"it\" href=\"https://docs.venice.ai/it/api-reference/endpoint/image/generate\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"de\" href=\"https://docs.venice.ai/de/api-reference/endpoint/image/generate\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"es\" href=\"https://docs.venice.ai/es/api-reference/endpoint/image/generate\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr\" href=\"https://docs.venice.ai/fr/api-reference/endpoint/image/generate\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh\" href=\"https://docs.venice.ai/zh/api-reference/endpoint/image/generate\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ko\" href=\"https://docs.venice.ai/ko/api-reference/endpoint/image/generate\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.venice.ai/api-reference/endpoint/image/generate\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.venice.ai/#organization\",\"name\":\"Venice API Docs\",\"url\":\"https://docs.venice.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/veniceai/gFXvp87w4B810n0Y/logo/light.svg?fit=max\u0026auto=format\u0026n=gFXvp87w4B810n0Y\u0026q=85\u0026s=121558c3bff1e4e012fcd34bdc50555c\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.venice.ai#website\",\"name\":\"Venice API Docs\",\"url\":\"https://docs.venice.ai\",\"publisher\":{\"@id\":\"https://docs.venice.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.venice.ai/api-reference/endpoint/image/generate#webpage\",\"url\":\"https://docs.venice.ai/api-reference/endpoint/image/generate\",\"name\":\"Generate Images\",\"description\":\"Generate an image based on input parameters Authentication: This endpoint accepts either a Bearer API key or a SIGN-IN-WITH-X header for x402 wallet-based authentication. The legacy X-Sign-In-With-X header is also accepted during migration. When using x402, a 402 Payment Required response indicates insufficient balance and includes top-up instructions. A 401 response with code X402_USER_NOT_ALLOWED means the wallet's Venice account is banned or deleted, or the wallet's x402 credit account belongs to a different user.\",\"dateModified\":\"2026-11-13T19:30:56.600Z\",\"isPartOf\":{\"@id\":\"https://docs.venice.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.venice.ai/api-reference/endpoint/image/generate#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.venice.ai/api-reference/endpoint/image/generate#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Venice APIs\",\"item\":\"https://docs.venice.ai/api-reference/api-spec\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Generate Images\",\"item\":\"https://docs.venice.ai/api-reference/endpoint/image/generate\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.venice.ai/api-reference/endpoint/image/generate#apireference\",\"headline\":\"Generate Images\",\"name\":\"Generate Images\",\"description\":\"Generate an image based on input parameters Authentication: This endpoint accepts either a Bearer API key or a SIGN-IN-WITH-X header for x402 wallet-based authentication. The legacy X-Sign-In-With-X header is also accepted during migration. When using x402, a 402 Payment Required response indicates insufficient balance and includes top-up instructions. A 401 response with code X402_USER_NOT_ALLOWED means the wallet's Venice account is banned or deleted, or the wallet's x402 credit account belongs to a different user.\",\"url\":\"https://docs.venice.ai/api-reference/endpoint/image/generate\",\"mainEntityOfPage\":{\"@id\":\"https://docs.venice.ai/api-reference/endpoint/image/generate#webpage\"},\"dateModified\":\"2026-11-13T19:30:56.600Z\",\"publisher\":{\"@id\":\"https://docs.venice.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.venice.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Venice API Docs\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Venice API Docs\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/endpoint/image/generate.md","siteName":"Venice API Docs","nav":{"global":null,"languages":[{"language":"en","default":true,"tabs":[{"tab":"Docs","icon":"book","pages":[{"title":"Docs","href":"/overview/about-venice"}]},{"tab":"Models","icon":"box","pages":[{"title":"Models","href":"/models/overview"}]},{"tab":"Learn","icon":"layout-grid","pages":[{"title":"Learn","href":"/learn"}]},{"tab":"API Reference","icon":"code","groups":[{"group":"Venice APIs","pages":[{"title":"Introduction","href":"/api-reference/api-spec"},{"title":"Rate Limits","href":"/api-reference/rate-limiting"},{"title":"Error Codes","href":"/api-reference/error-codes"},{"group":"Chat","expanded":false,"pages":[{"title":"Chat Completions","openapi":"POST /chat/completions","href":"/api-reference/endpoint/chat/completions"},{"title":"Responses","openapi":"POST /responses","href":"/api-reference/endpoint/responses/create"},{"title":"Model Feature Suffix","href":"/api-reference/endpoint/chat/model_feature_suffix"},{"title":"Create Decisions","openapi":"POST /decisions","href":"/api-reference/endpoint/decisions/create"},{"title":"System One Compatibility","openapi":"POST /systemone","description":"**Beta**: Alias of `POST /decisions` mirroring the upstream TypeSafe path, so TypeSafe SDKs work with a base URL swap (`TYPESAFE_BASE_URL=https://api.venice.ai/api`).","href":"/api-reference/endpoint/decisions/systemone"}]},{"group":"Images","expanded":false,"pages":[{"title":"Generate Images","openapi":"POST /image/generate","href":"/api-reference/endpoint/image/generate"},{"title":"Upscale and Enhance","openapi":"POST /image/upscale","description":"Upscale an image to a higher resolution. The image can be provided either as a multipart form-data file upload or as a base64-encoded string in a JSON request.\n\n**Authentication:** This endpoint accepts either a Bearer API key or a `SIGN-IN-WITH-X` header for x402 wallet-based authentication. The legacy `X-Sign-In-With-X` header is also accepted during migration. When using x402, a `402 Payment Required` response indicates insufficient balance and includes top-up instructions. A `401` response with code `X402_USER_NOT_ALLOWED` means the wallet's Venice account is banned or deleted, or the wallet's x402 credit account belongs to a different user.","href":"/api-reference/endpoint/image/upscale"},{"title":"Edit (aka Inpaint)","openapi":"POST /image/edit","href":"/api-reference/endpoint/image/edit"},{"title":"Multi-Edit Image","openapi":"POST /image/multi-edit","href":"/api-reference/endpoint/image/multi-edit"},{"title":"Background Remove","openapi":"POST /image/background-remove","href":"/api-reference/endpoint/image/background-remove"},{"title":"Image Styles","openapi":"GET /image/styles","href":"/api-reference/endpoint/image/styles"},{"title":"Generate Images (OpenAI Compatible API)","openapi":"POST /images/generations","href":"/api-reference/endpoint/image/generations"}]},{"group":"Audio","expanded":false,"pages":[{"title":"Speech API (Beta)","openapi":"POST /audio/speech","href":"/api-reference/endpoint/audio/speech"},{"title":"Clone Voice","openapi":"POST /audio/voices","href":"/api-reference/endpoint/audio/voices"},{"title":"Transcriptions API (Beta)","openapi":"POST /audio/transcriptions","href":"/api-reference/endpoint/audio/transcriptions"},{"title":"Queue Audio Generation","openapi":"POST /audio/queue","href":"/api-reference/endpoint/audio/queue"},{"title":"Retrieve Audio","openapi":"POST /audio/retrieve","href":"/api-reference/endpoint/audio/retrieve"},{"title":"Quote Audio Generation","openapi":"POST /audio/quote","href":"/api-reference/endpoint/audio/quote"},{"title":"Complete Audio","openapi":"POST /audio/complete","href":"/api-reference/endpoint/audio/complete"},{"title":"Queue Voice Changer","openapi":"POST /audio/voice-changer/queue","href":"/api-reference/endpoint/audio/voice-changer/queue"},{"title":"Retrieve Voice Changer","openapi":"POST /audio/voice-changer/retrieve","href":"/api-reference/endpoint/audio/voice-changer/retrieve"},{"title":"Quote Voice Changer","openapi":"POST /audio/voice-changer/quote","href":"/api-reference/endpoint/audio/voice-changer/quote"},{"title":"Complete Voice Changer","openapi":"POST /audio/voice-changer/complete","href":"/api-reference/endpoint/audio/voice-changer/complete"}]},{"group":"Video","expanded":false,"pages":[{"title":"Queue Video Generation","openapi":"POST /video/queue","href":"/api-reference/endpoint/video/queue"},{"title":"Retrieve Video","openapi":"POST /video/retrieve","href":"/api-reference/endpoint/video/retrieve"},{"title":"Quote Video Generation","openapi":"POST /video/quote","href":"/api-reference/endpoint/video/quote"},{"title":"Complete Video","openapi":"POST /video/complete","href":"/api-reference/endpoint/video/complete"}]},{"group":"Tools","expanded":false,"pages":[{"title":"Text Parser","openapi":"POST /augment/text-parser","href":"/api-reference/endpoint/augment/text-parser"},{"title":"Web Scrape","openapi":"POST /augment/scrape","href":"/api-reference/endpoint/augment/scrape"},{"title":"Web Search","openapi":"POST /augment/search","href":"/api-reference/endpoint/augment/search"},{"title":"Crypto Networks","openapi":"GET /crypto/rpc/networks","href":"/api-reference/endpoint/crypto/networks"},{"title":"Crypto RPC","openapi":"POST /crypto/rpc/{network}","href":"/api-reference/endpoint/crypto/rpc"}]},{"group":"Embeddings","expanded":false,"pages":[{"title":"Generate Embeddings","openapi":"POST /embeddings","href":"/api-reference/endpoint/embeddings/generate"}]},{"group":"Models","expanded":false,"pages":[{"title":"List Models","openapi":"GET /models","href":"/api-reference/endpoint/models/list"},{"title":"Compatibility Mapping","openapi":"GET /models/compatibility_mapping","href":"/api-reference/endpoint/models/compatibility_mapping"},{"title":"Traits","openapi":"GET /models/traits","href":"/api-reference/endpoint/models/traits"}]},{"group":"API Keys","expanded":false,"pages":[{"title":"List API Keys","openapi":"GET /api_keys","href":"/api-reference/endpoint/api_keys/list"},{"title":"Get API Key Details","openapi":"GET /api_keys/{id}","href":"/api-reference/endpoint/api_keys/get"},{"title":"Create API Key","openapi":"POST /api_keys","href":"/api-reference/endpoint/api_keys/create"},{"title":"Update API Key","openapi":"PATCH /api_keys","href":"/api-reference/endpoint/api_keys/update"},{"title":"Delete API Key","openapi":"DELETE /api_keys","href":"/api-reference/endpoint/api_keys/delete"},{"title":"Generate API Key with Web3 Wallet","openapi":"GET /api_keys/generate_web3_key","href":"/api-reference/endpoint/api_keys/generate_web3_key/get"},{"title":"Generate API Key with Web3 Wallet","openapi":"POST /api_keys/generate_web3_key","href":"/api-reference/endpoint/api_keys/generate_web3_key/post"}]},{"group":"API Key Rate Limits","expanded":false,"pages":[{"title":"Rate Limits and Balances","openapi":"GET /api_keys/rate_limits","href":"/api-reference/endpoint/api_keys/rate_limits"},{"title":"Rate Limit Logs","openapi":"GET /api_keys/rate_limits/log","href":"/api-reference/endpoint/api_keys/rate_limit_logs"}]},{"group":"Characters","expanded":false,"pages":[{"title":"Get Character","openapi":"GET /characters/{slug}","href":"/api-reference/endpoint/characters/get"},{"title":"List Characters","openapi":"GET /characters","href":"/api-reference/endpoint/characters/list"},{"title":"List Character Reviews","openapi":"GET /characters/{slug}/reviews","href":"/api-reference/endpoint/characters/reviews"}]},{"group":"Billing","expanded":false,"pages":[{"title":"Billing Balance","openapi":"GET /billing/balance","href":"/api-reference/endpoint/billing/balance"},{"title":"Billing Usage (removed)","openapi":"GET /billing/usage","href":"/api-reference/endpoint/billing/usage"},{"title":"Billing Usage Analytics (Beta)","openapi":"GET /billing/usage-analytics","href":"/api-reference/endpoint/billing/usage-analytics"},{"title":"Billing Usage History","openapi":"GET /billing/usage-history","href":"/api-reference/endpoint/billing/usage-history"}]},{"group":"X402","expanded":true,"pages":[{"title":"X402 Balance","openapi":"GET /x402/balance/{walletAddress}","href":"/api-reference/endpoint/x402/balance"},{"title":"X402 Top Up","openapi":"POST /x402/top-up","href":"/api-reference/endpoint/x402/top-up"},{"title":"X402 Transactions","openapi":"GET /x402/transactions/{walletAddress}","href":"/api-reference/endpoint/x402/transactions"}]}]}]},{"tab":"Changelog","icon":"history","href":"/changelog"},{"tab":"Status Page","icon":"activity","href":"https://veniceai-status.com"}]},{"language":"pt-BR","pages":[{"title":"pt-BR","href":"/pt-BR/api-reference/endpoint/image/generate"}]},{"language":"ar","pages":[{"title":"ar","href":"/ar/api-reference/endpoint/image/generate"}]},{"language":"it","pages":[{"title":"it","href":"/it/api-reference/endpoint/image/generate"}]},{"language":"de","pages":[{"title":"de","href":"/de/api-reference/endpoint/image/generate"}]},{"language":"es","pages":[{"title":"es","href":"/es/api-reference/endpoint/image/generate"}]},{"language":"fr","pages":[{"title":"fr","href":"/fr/api-reference/endpoint/image/generate"}]},{"language":"zh","pages":[{"title":"zh","href":"/zh/api-reference/endpoint/image/generate"}]},{"language":"ko","pages":[{"title":"ko","href":"/ko/api-reference/endpoint/image/generate"}]}]},"basePath":"","title":"Image Generate | Venice API Docs","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-DdEMm2kG.js","utils-BMo572L7.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-C-4m9KAx.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DPLK2Oq9.js","snippetPresets-BKjfJMC9.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","Page-BIYvYBgk.js","ApiExamples-DTsgtCEj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C8vmhyQM.js","shallow-r9w8LQGS.js","getApiPlaygroundDisplay-DjPI64HQ.js","CodeSnippet-C8Bvhl16.js","CodeSnippets-BtWUwcMy.js","getPastedJson-Dcm_3Pgl.js","icon-BXwrTpjc.js","MethodPill-CcjfVmmy.js","DuplicateIcon-BuKIbXAQ.js","createIcon-DaL9yXsO.js","DynamicMarkdown-Co5nikxh.js","SectionHeading-P4UNTsMZ.js","axios-vUo_bRtp.js","Markdown-CEfymfIH.js","clsx-Dq9TQuNi.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-D2J8knkn.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BgZ2ThuU.js"]}