{"openapi":"3.1.0","jsonSchemaDialect":"https://json-schema.org/draft/2020-12/schema","info":{"title":"Doitong Models API","version":"2026-10-20","summary":"Image, video, audio and other AI models behind one REST interface, priced like the upstream in USD.","description":"One POST /run/{model} for every model (add ?wait= to get the result in the same call), one GET /requests/{id} for status, exact prices from POST /quote/{model}, output files on our storage (kept forever, paid per GB-month, or 7 days for free: the account setting or ?storage=) and signed webhooks. Model ids contain slashes; they are written as is in the path. Prices are API credits paid from the account's API balance: 1000 API credits = 1 USD, every price object carries the USD amount (add ?currency=rub for roubles). Typed per-model paths: this document carries the featured models by default; add ?category=<id>, ?model=<id> or ?models=all for others (the generic /run/{model_id} accepts every model of GET /models).","contact":{"name":"Doitong","url":"https://doitong.com/developers"}},"servers":[{"url":"https://api.doitong.com/v1","description":"Doitong API"}],"security":[{"bearerAuth":[]}],"tags":[{"name":"Models","description":"The model catalog."},{"name":"Run","description":"Quote and run models."},{"name":"Requests","description":"Status, results and cancellation of runs."},{"name":"Files","description":"Upload input files."},{"name":"Account","description":"API balance (API credits), key limits and file storage."},{"name":"MCP","description":"Model Context Protocol endpoint for AI agents."}],"paths":{"/models":{"get":{"operationId":"listModels","tags":["Models"],"summary":"List models","security":[],"parameters":[{"name":"q","in":"query","required":false,"description":"Words that must all appear in the id, name, maker or tags.","schema":{"type":"string"}},{"name":"category","in":"query","required":false,"description":"Category id.","schema":{"type":"string","enum":["text-to-image","image-to-image","text-to-video","image-to-video","reference-to-video","video-to-video","lipsync","upscale","background-removal","text-to-speech","speech-to-text","text-to-music","audio","video-to-audio","image-to-3d","text-to-3d","3d","training","llm","vision","other"]}},{"name":"lab","in":"query","required":false,"description":"Model maker, by name or slug (any case).","schema":{"type":"string"}},{"name":"family","in":"query","required":false,"description":"Variants group id (the family field of a model).","schema":{"type":"string"}},{"name":"mode","in":"query","required":false,"description":"Price mode.","schema":{"type":"string","enum":["exact","measured","estimate","metered"]}},{"$ref":"#/components/parameters/Limit"},{"name":"cursor","in":"query","required":false,"description":"next_cursor of the previous page.","schema":{"type":"string"}},{"$ref":"#/components/parameters/Currency"}],"responses":{"200":{"description":"A page of models.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModelList"}}}},"400":{"$ref":"#/components/responses/Error"}}}},"/models/{model_id}":{"get":{"operationId":"getModel","tags":["Models"],"summary":"Get a model","security":[],"parameters":[{"$ref":"#/components/parameters/ModelId"},{"$ref":"#/components/parameters/Currency"}],"responses":{"200":{"description":"The model.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModelDetail"}}}},"404":{"$ref":"#/components/responses/Error"}}}},"/categories":{"get":{"operationId":"listCategories","tags":["Models"],"summary":"List categories","security":[],"responses":{"200":{"description":"Categories that have models.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CategoryList"}}}}}}},"/quote/{model_id}":{"post":{"operationId":"quoteModel","tags":["Run"],"summary":"Quote a run of any model","description":"Same body as run; returns the exact API credits and USD. A key is optional; with one the answer also says whether the API balance and the key can pay.","security":[{},{"bearerAuth":[]}],"parameters":[{"$ref":"#/components/parameters/ModelId"},{"$ref":"#/components/parameters/Currency"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModelInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/{model_id}":{"post":{"operationId":"runModel","tags":["Run"],"summary":"Run any model","parameters":[{"$ref":"#/components/parameters/ModelId"},{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModelInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Request"}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Request"}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/requests":{"get":{"operationId":"listRequests","tags":["Requests"],"summary":"List this account's requests","parameters":[{"$ref":"#/components/parameters/Limit"},{"name":"status","in":"query","required":false,"description":"Only this status.","schema":{"$ref":"#/components/schemas/RequestStatus"}},{"name":"model","in":"query","required":false,"description":"Only this model id.","schema":{"type":"string"}},{"name":"cursor","in":"query","required":false,"description":"next_cursor of the previous page.","schema":{"type":"string"}}],"responses":{"200":{"description":"Newest first.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestList"}}}},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/requests/{request_id}":{"get":{"operationId":"getRequest","tags":["Requests"],"summary":"Get a request","parameters":[{"$ref":"#/components/parameters/RequestId"},{"$ref":"#/components/parameters/Wait"},{"name":"logs","in":"query","required":false,"description":"Set to 1 to include the latest log lines.","schema":{"type":"string","enum":["0","1"]}}],"responses":{"200":{"description":"The request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Request"}}}},"404":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/requests/{request_id}/cancel":{"post":{"operationId":"cancelRequest","tags":["Requests"],"summary":"Cancel a request","parameters":[{"$ref":"#/components/parameters/RequestId"}],"responses":{"200":{"description":"Canceled (refunded), or already canceled.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CancelResult"}}}},"202":{"description":"The model is already working; cancellation was requested.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CancelResult"}}}},"404":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/requests/{request_id}/files":{"delete":{"operationId":"deleteRequestFiles","tags":["Requests"],"summary":"Delete a request's output files","description":"Deletes our copies of the output files now and stops their storage charge. The request keeps its URLs with storage.expired = true. Idempotent; a request still running is a 409.","parameters":[{"$ref":"#/components/parameters/RequestId"}],"responses":{"200":{"description":"The request, files deleted.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Request"}}}},"404":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/files":{"post":{"operationId":"createUpload","tags":["Files"],"summary":"Create an upload URL","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadRequest"}}}},"responses":{"201":{"description":"Upload with PUT, then pass file_url as a model input.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Upload"}}}},"422":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/account":{"get":{"operationId":"getAccount","tags":["Account"],"summary":"API balance and key limits","parameters":[{"$ref":"#/components/parameters/Currency"}],"responses":{"200":{"description":"The account.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Account"}}}},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/account/storage":{"patch":{"operationId":"updateStorageSettings","tags":["Account"],"summary":"Set the default file storage","description":"permanent (default): output files are kept until you delete them, 100 API credits per GB per month from the API balance. temporary: free, deleted after 7 days. Applies to new requests; ?storage= on a run overrides it.","parameters":[{"$ref":"#/components/parameters/Currency"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StorageSettingsUpdate"}}}},"responses":{"200":{"description":"The storage settings.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StorageSettings"}}}},"400":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/mcp":{"post":{"operationId":"mcp","tags":["MCP"],"summary":"MCP endpoint (JSON-RPC 2.0, Streamable HTTP)","description":"Tools: search_models, get_model, quote, run, get_request, cancel_request, list_requests, create_upload, get_account.","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonRpcRequest"}}}},"responses":{"200":{"description":"JSON-RPC response.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonRpcResponse"}}}},"202":{"description":"Notification accepted (no body)."},"401":{"description":"No API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonRpcResponse"}}}}}}},"/run/flux/dev":{"post":{"operationId":"runFluxDev","tags":["Run"],"summary":"Run FLUX.1 [dev]","description":"The open-weights FLUX workhorse, sharper and more faithful to long prompts than schnell. Price: $0.025 / megapixel.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FluxDevInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/FluxDevOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/FluxDevOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/flux/dev":{"post":{"operationId":"quoteFluxDev","tags":["Run"],"summary":"Quote FLUX.1 [dev]","description":"Price: $0.025 / megapixel.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FluxDevInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/flux/schnell":{"post":{"operationId":"runFluxSchnell","tags":["Run"],"summary":"Run FLUX.1 [schnell]","description":"The fastest and cheapest FLUX model, a finished picture from a prompt in about a second. Price: $0.003 / megapixel.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FluxSchnellInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/FluxSchnellOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/FluxSchnellOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/flux/schnell":{"post":{"operationId":"quoteFluxSchnell","tags":["Run"],"summary":"Quote FLUX.1 [schnell]","description":"Price: $0.003 / megapixel.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FluxSchnellInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/flux-2":{"post":{"operationId":"runFlux2","tags":["Run"],"summary":"Run FLUX.2 [dev]","description":"Second-generation open FLUX model with better prompt following at a low per-megapixel price. Price: $0.012 / megapixel.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Flux2Input"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/Flux2Output"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/Flux2Output"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/flux-2":{"post":{"operationId":"quoteFlux2","tags":["Run"],"summary":"Quote FLUX.2 [dev]","description":"Price: $0.012 / megapixel.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Flux2Input"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/flux-2-pro":{"post":{"operationId":"runFlux2Pro","tags":["Run"],"summary":"Run FLUX.2 [pro]","description":"Black Forest Labs' production FLUX.2 model, tuned for polished, photorealistic results with no knobs to tune. Price: $0.015 / megapixel of output image.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Flux2ProInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/Flux2ProOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/Flux2ProOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/flux-2-pro":{"post":{"operationId":"quoteFlux2Pro","tags":["Run"],"summary":"Quote FLUX.2 [pro]","description":"Price: $0.015 / megapixel of output image.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Flux2ProInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/openai/gpt-image-2.5/flare/text-to-image":{"post":{"operationId":"runOpenaiGptImage25FlareTextToImage","tags":["Run"],"summary":"Run GPT Image 2.5 Text to Image","description":"OpenAI's image model with strong instruction following, clean text rendering and transparent backgrounds. Price: $0.04 / image.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OpenaiGptImage25FlareTextToImageInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/OpenaiGptImage25FlareTextToImageOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/OpenaiGptImage25FlareTextToImageOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/openai/gpt-image-2.5/flare/text-to-image":{"post":{"operationId":"quoteOpenaiGptImage25FlareTextToImage","tags":["Run"],"summary":"Quote GPT Image 2.5 Text to Image","description":"Price: $0.04 / image.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OpenaiGptImage25FlareTextToImageInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/ideogram/v4.5":{"post":{"operationId":"runIdeogramV45","tags":["Run"],"summary":"Run Ideogram V4.5","description":"Ideogram's typography specialist for logos, posters and signage, in three quality levels. Price: $0.06 / image.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdeogramV45Input"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/IdeogramV45Output"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/IdeogramV45Output"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/ideogram/v4.5":{"post":{"operationId":"quoteIdeogramV45","tags":["Run"],"summary":"Quote Ideogram V4.5","description":"Price: $0.06 / image.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdeogramV45Input"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/nano-banana-2":{"post":{"operationId":"runNanoBanana2","tags":["Run"],"summary":"Run Nano Banana 2","description":"Google's fast Gemini image model, from quick 0.5K drafts to 4K, with extreme aspect ratios and web grounding. Price: $0.08 / image.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NanoBanana2Input"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/NanoBanana2Output"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/NanoBanana2Output"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/nano-banana-2":{"post":{"operationId":"quoteNanoBanana2","tags":["Run"],"summary":"Quote Nano Banana 2","description":"Price: $0.08 / image.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NanoBanana2Input"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/nano-banana-pro":{"post":{"operationId":"runNanoBananaPro","tags":["Run"],"summary":"Run Nano Banana Pro","description":"Google's strongest image model, with reliable lettering, complex layouts and output up to 4K. Price: $0.15 / image.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NanoBananaProInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/NanoBananaProOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/NanoBananaProOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/nano-banana-pro":{"post":{"operationId":"quoteNanoBananaPro","tags":["Run"],"summary":"Quote Nano Banana Pro","description":"Price: $0.15 / image.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NanoBananaProInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/alibaba/qwen-image-3/text-to-image":{"post":{"operationId":"runAlibabaQwenImage3TextToImage","tags":["Run"],"summary":"Run Qwen Image 3 Text to Image","description":"Alibaba's image model with excellent bilingual lettering, at 1K or 2K. Price: $0.075 / image.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlibabaQwenImage3TextToImageInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/AlibabaQwenImage3TextToImageOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/AlibabaQwenImage3TextToImageOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/alibaba/qwen-image-3/text-to-image":{"post":{"operationId":"quoteAlibabaQwenImage3TextToImage","tags":["Run"],"summary":"Quote Qwen Image 3 Text to Image","description":"Price: $0.075 / image.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlibabaQwenImage3TextToImageInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/recraft/v4.1/text-to-image":{"post":{"operationId":"runRecraftV41TextToImage","tags":["Run"],"summary":"Run Recraft V4.1 Text to Image","description":"Designer-oriented image model with brand palettes and background color control. Price: $0.035 / image.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecraftV41TextToImageInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/RecraftV41TextToImageOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/RecraftV41TextToImageOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/recraft/v4.1/text-to-image":{"post":{"operationId":"quoteRecraftV41TextToImage","tags":["Run"],"summary":"Quote Recraft V4.1 Text to Image","description":"Price: $0.035 / image.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecraftV41TextToImageInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/bytedance/seedream/v5/pro/text-to-image":{"post":{"operationId":"runBytedanceSeedreamV5ProTextToImage","tags":["Run"],"summary":"Run Seedream 5.0 Pro Text to Image","description":"ByteDance's flagship image model for editorial-grade photos and posters at up to 2K. Price: $0.135 / run of output image.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BytedanceSeedreamV5ProTextToImageInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BytedanceSeedreamV5ProTextToImageOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BytedanceSeedreamV5ProTextToImageOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/bytedance/seedream/v5/pro/text-to-image":{"post":{"operationId":"quoteBytedanceSeedreamV5ProTextToImage","tags":["Run"],"summary":"Quote Seedream 5.0 Pro Text to Image","description":"Price: $0.135 / run of output image.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BytedanceSeedreamV5ProTextToImageInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/flux-pro/kontext":{"post":{"operationId":"runFluxProKontext","tags":["Run"],"summary":"Run FLUX.1 Kontext [pro]","description":"Precise local edits from one reference image, such as changing colors, adding objects or rewriting text. Price: $0.04 / image.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FluxProKontextInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/FluxProKontextOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/FluxProKontextOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/flux-pro/kontext":{"post":{"operationId":"quoteFluxProKontext","tags":["Run"],"summary":"Quote FLUX.1 Kontext [pro]","description":"Price: $0.04 / image.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FluxProKontextInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/nano-banana-2/edit":{"post":{"operationId":"runNanoBanana2Edit","tags":["Run"],"summary":"Run Nano Banana 2 Edit","description":"Fast instruction-based editing that can also read a video, audio clip or PDF as context. Price: $0.08 / image.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NanoBanana2EditInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/NanoBanana2EditOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/NanoBanana2EditOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/nano-banana-2/edit":{"post":{"operationId":"quoteNanoBanana2Edit","tags":["Run"],"summary":"Quote Nano Banana 2 Edit","description":"Price: $0.08 / image.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NanoBanana2EditInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/nano-banana-pro/edit":{"post":{"operationId":"runNanoBananaProEdit","tags":["Run"],"summary":"Run Nano Banana Pro Edit","description":"Edit or combine photos with plain-language instructions, keeping faces and products intact, up to 4K. Price: $0.15 / image.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NanoBananaProEditInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/NanoBananaProEditOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/NanoBananaProEditOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/nano-banana-pro/edit":{"post":{"operationId":"quoteNanoBananaProEdit","tags":["Run"],"summary":"Quote Nano Banana Pro Edit","description":"Price: $0.15 / image.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NanoBananaProEditInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/alibaba/qwen-image-3/edit":{"post":{"operationId":"runAlibabaQwenImage3Edit","tags":["Run"],"summary":"Run Qwen Image 3 Edit","description":"Edit with one to three reference images, strong at changing or adding text in a picture. Price: $0.075 / image.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlibabaQwenImage3EditInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/AlibabaQwenImage3EditOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/AlibabaQwenImage3EditOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/alibaba/qwen-image-3/edit":{"post":{"operationId":"quoteAlibabaQwenImage3Edit","tags":["Run"],"summary":"Quote Qwen Image 3 Edit","description":"Price: $0.075 / image.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlibabaQwenImage3EditInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/blackforestlabs/flux-3-max/text-to-video":{"post":{"operationId":"runBlackforestlabsFlux3MaxTextToVideo","tags":["Run"],"summary":"Run FLUX 3 Max Text to Video","description":"Black Forest Labs' video model, 5 to 20 second clips with sound at 720p or 1080p. Price: $0.0425 / second of output video.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlackforestlabsFlux3MaxTextToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BlackforestlabsFlux3MaxTextToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BlackforestlabsFlux3MaxTextToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/blackforestlabs/flux-3-max/text-to-video":{"post":{"operationId":"quoteBlackforestlabsFlux3MaxTextToVideo","tags":["Run"],"summary":"Quote FLUX 3 Max Text to Video","description":"Price: $0.0425 / second of output video.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlackforestlabsFlux3MaxTextToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/xai/grok-imagine-video/v1.5/text-to-video":{"post":{"operationId":"runXaiGrokImagineVideoV15TextToVideo","tags":["Run"],"summary":"Run Grok Imagine Video 1.5 Text to Video","description":"xAI's video model, any length from 1 to 15 seconds, 480p to 1080p. Price: $0.14 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/XaiGrokImagineVideoV15TextToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/XaiGrokImagineVideoV15TextToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/XaiGrokImagineVideoV15TextToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/xai/grok-imagine-video/v1.5/text-to-video":{"post":{"operationId":"quoteXaiGrokImagineVideoV15TextToVideo","tags":["Run"],"summary":"Quote Grok Imagine Video 1.5 Text to Video","description":"Price: $0.14 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/XaiGrokImagineVideoV15TextToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/kling-video/v3/pro/text-to-video":{"post":{"operationId":"runKlingVideoV3ProTextToVideo","tags":["Run"],"summary":"Run Kling 3.0 Pro Text to Video","description":"Cinematic 3 to 15 second clips from a prompt, with native sound and multi-shot storytelling. Price: $0.112 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KlingVideoV3ProTextToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/KlingVideoV3ProTextToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/KlingVideoV3ProTextToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/kling-video/v3/pro/text-to-video":{"post":{"operationId":"quoteKlingVideoV3ProTextToVideo","tags":["Run"],"summary":"Quote Kling 3.0 Pro Text to Video","description":"Price: $0.112 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KlingVideoV3ProTextToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/lightricks/ltx-2.5/text-to-video/pro":{"post":{"operationId":"runLightricksLtx25TextToVideoPro","tags":["Run"],"summary":"Run LTX 2.5 Pro Text to Video","description":"Lightricks' LTX 2.5 Pro, 6 to 10 second clips with audio and named camera moves at up to 1080p and 50 fps. Price: $0.17 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LightricksLtx25TextToVideoProInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/LightricksLtx25TextToVideoProOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/LightricksLtx25TextToVideoProOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/lightricks/ltx-2.5/text-to-video/pro":{"post":{"operationId":"quoteLightricksLtx25TextToVideoPro","tags":["Run"],"summary":"Quote LTX 2.5 Pro Text to Video","description":"Price: $0.17 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LightricksLtx25TextToVideoProInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/minimax/h3/text-to-video":{"post":{"operationId":"runMinimaxH3TextToVideo","tags":["Run"],"summary":"Run MiniMax H3 Text to Video","description":"MiniMax's (Hailuo) video model for lively motion, 5 to 15 seconds, up to 4K. Price: $0.13 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MinimaxH3TextToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/MinimaxH3TextToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/MinimaxH3TextToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/minimax/h3/text-to-video":{"post":{"operationId":"quoteMinimaxH3TextToVideo","tags":["Run"],"summary":"Quote MiniMax H3 Text to Video","description":"Price: $0.13 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MinimaxH3TextToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/bytedance/seedance-2.0/fast/text-to-video":{"post":{"operationId":"runBytedanceSeedance20FastTextToVideo","tags":["Run"],"summary":"Run Seedance 2.0 Fast Text to Video","description":"A quicker, cheaper Seedance 2.0 for 480p and 720p clips with sound. Price: $0.243 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BytedanceSeedance20FastTextToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BytedanceSeedance20FastTextToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BytedanceSeedance20FastTextToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/bytedance/seedance-2.0/fast/text-to-video":{"post":{"operationId":"quoteBytedanceSeedance20FastTextToVideo","tags":["Run"],"summary":"Quote Seedance 2.0 Fast Text to Video","description":"Price: $0.243 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BytedanceSeedance20FastTextToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/bytedance/seedance-2.0/text-to-video":{"post":{"operationId":"runBytedanceSeedance20TextToVideo","tags":["Run"],"summary":"Run Seedance 2.0 Text to Video","description":"ByteDance's top video model for multi-shot scenes with synchronized sound, from 480p to 4K. Price: $0.304 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BytedanceSeedance20TextToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BytedanceSeedance20TextToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BytedanceSeedance20TextToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/bytedance/seedance-2.0/text-to-video":{"post":{"operationId":"quoteBytedanceSeedance20TextToVideo","tags":["Run"],"summary":"Quote Seedance 2.0 Text to Video","description":"Price: $0.304 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BytedanceSeedance20TextToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/veo3.1":{"post":{"operationId":"runVeo31","tags":["Run"],"summary":"Run Veo 3.1","description":"Google's flagship video model, 4 to 8 second clips with dialogue and sound, up to 4K. Price: $0.20 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Veo31Input"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/Veo31Output"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/Veo31Output"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/veo3.1":{"post":{"operationId":"quoteVeo31","tags":["Run"],"summary":"Quote Veo 3.1","description":"Price: $0.20 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Veo31Input"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/veo3.1/fast":{"post":{"operationId":"runVeo31Fast","tags":["Run"],"summary":"Run Veo 3.1 Fast","description":"The faster, lower-cost Veo 3.1 for 4 to 8 second clips with sound. Price: $0.10 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Veo31FastInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/Veo31FastOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/Veo31FastOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/veo3.1/fast":{"post":{"operationId":"quoteVeo31Fast","tags":["Run"],"summary":"Quote Veo 3.1 Fast","description":"Price: $0.10 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Veo31FastInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/alibaba/wan-3.0/text-to-video":{"post":{"operationId":"runAlibabaWan30TextToVideo","tags":["Run"],"summary":"Run Wan 3.0 Text to Video","description":"Alibaba's Wan 3.0, clips of 2 to 30 seconds with generated audio at up to 1080p. Price: $0.20 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlibabaWan30TextToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/AlibabaWan30TextToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/AlibabaWan30TextToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/alibaba/wan-3.0/text-to-video":{"post":{"operationId":"quoteAlibabaWan30TextToVideo","tags":["Run"],"summary":"Quote Wan 3.0 Text to Video","description":"Price: $0.20 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlibabaWan30TextToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/blackforestlabs/flux-3-max/image-to-video":{"post":{"operationId":"runBlackforestlabsFlux3MaxImageToVideo","tags":["Run"],"summary":"Run FLUX 3 Max Image to Video","description":"Animates a start image, optionally toward an end image, into a 5 to 20 second FLUX 3 Max clip with sound. Price: $0.0425 / second of output video.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlackforestlabsFlux3MaxImageToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BlackforestlabsFlux3MaxImageToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BlackforestlabsFlux3MaxImageToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/blackforestlabs/flux-3-max/image-to-video":{"post":{"operationId":"quoteBlackforestlabsFlux3MaxImageToVideo","tags":["Run"],"summary":"Quote FLUX 3 Max Image to Video","description":"Price: $0.0425 / second of output video.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlackforestlabsFlux3MaxImageToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/xai/grok-imagine-video/v1.5/image-to-video":{"post":{"operationId":"runXaiGrokImagineVideoV15ImageToVideo","tags":["Run"],"summary":"Run Grok Imagine Video 1.5 Image to Video","description":"Animates an image into a 1 to 15 second Grok Imagine clip at 480p to 1080p. Price: $0.142 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/XaiGrokImagineVideoV15ImageToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/XaiGrokImagineVideoV15ImageToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/XaiGrokImagineVideoV15ImageToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/xai/grok-imagine-video/v1.5/image-to-video":{"post":{"operationId":"quoteXaiGrokImagineVideoV15ImageToVideo","tags":["Run"],"summary":"Quote Grok Imagine Video 1.5 Image to Video","description":"Price: $0.142 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/XaiGrokImagineVideoV15ImageToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/kling-video/v3/pro/image-to-video":{"post":{"operationId":"runKlingVideoV3ProImageToVideo","tags":["Run"],"summary":"Run Kling 3.0 Pro Image to Video","description":"Animates a still image into a 3 to 15 second clip with native sound, an optional last frame and multi-shot prompts. Price: $0.112 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KlingVideoV3ProImageToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/KlingVideoV3ProImageToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/KlingVideoV3ProImageToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/kling-video/v3/pro/image-to-video":{"post":{"operationId":"quoteKlingVideoV3ProImageToVideo","tags":["Run"],"summary":"Quote Kling 3.0 Pro Image to Video","description":"Price: $0.112 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KlingVideoV3ProImageToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/lightricks/ltx-2.5/image-to-video/pro":{"post":{"operationId":"runLightricksLtx25ImageToVideoPro","tags":["Run"],"summary":"Run LTX 2.5 Pro Image to Video","description":"Animates a start image, optionally toward an end image, into a 6 to 10 second LTX 2.5 Pro clip with audio. Price: $0.17 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LightricksLtx25ImageToVideoProInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/LightricksLtx25ImageToVideoProOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/LightricksLtx25ImageToVideoProOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/lightricks/ltx-2.5/image-to-video/pro":{"post":{"operationId":"quoteLightricksLtx25ImageToVideoPro","tags":["Run"],"summary":"Quote LTX 2.5 Pro Image to Video","description":"Price: $0.17 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LightricksLtx25ImageToVideoProInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/minimax/h3/image-to-video":{"post":{"operationId":"runMinimaxH3ImageToVideo","tags":["Run"],"summary":"Run MiniMax H3 Image to Video","description":"Animates a first frame, a last frame or both into a 5 to 15 second MiniMax H3 clip, up to 4K. Price: $0.13 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MinimaxH3ImageToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/MinimaxH3ImageToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/MinimaxH3ImageToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/minimax/h3/image-to-video":{"post":{"operationId":"quoteMinimaxH3ImageToVideo","tags":["Run"],"summary":"Quote MiniMax H3 Image to Video","description":"Price: $0.13 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MinimaxH3ImageToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/bytedance/seedance-2.0/fast/image-to-video":{"post":{"operationId":"runBytedanceSeedance20FastImageToVideo","tags":["Run"],"summary":"Run Seedance 2.0 Fast Image to Video","description":"The quicker, cheaper Seedance 2.0 image-to-video, at 480p or 720p with sound. Price: $0.243 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BytedanceSeedance20FastImageToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BytedanceSeedance20FastImageToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BytedanceSeedance20FastImageToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/bytedance/seedance-2.0/fast/image-to-video":{"post":{"operationId":"quoteBytedanceSeedance20FastImageToVideo","tags":["Run"],"summary":"Quote Seedance 2.0 Fast Image to Video","description":"Price: $0.243 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BytedanceSeedance20FastImageToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/bytedance/seedance-2.0/image-to-video":{"post":{"operationId":"runBytedanceSeedance20ImageToVideo","tags":["Run"],"summary":"Run Seedance 2.0 Image to Video","description":"Brings a start image (and optional end image) to life as a 4 to 15 second scene with sound, up to 4K. Price: $0.304 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BytedanceSeedance20ImageToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BytedanceSeedance20ImageToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BytedanceSeedance20ImageToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/bytedance/seedance-2.0/image-to-video":{"post":{"operationId":"quoteBytedanceSeedance20ImageToVideo","tags":["Run"],"summary":"Quote Seedance 2.0 Image to Video","description":"Price: $0.304 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BytedanceSeedance20ImageToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/veo3.1/fast/image-to-video":{"post":{"operationId":"runVeo31FastImageToVideo","tags":["Run"],"summary":"Run Veo 3.1 Fast Image to Video","description":"Animates an image into a 4 to 8 second clip with sound at Veo 3.1 Fast prices. Price: $0.10 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Veo31FastImageToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/Veo31FastImageToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/Veo31FastImageToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/veo3.1/fast/image-to-video":{"post":{"operationId":"quoteVeo31FastImageToVideo","tags":["Run"],"summary":"Quote Veo 3.1 Fast Image to Video","description":"Price: $0.10 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Veo31FastImageToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/veo3.1/image-to-video":{"post":{"operationId":"runVeo31ImageToVideo","tags":["Run"],"summary":"Run Veo 3.1 Image to Video","description":"Animates an image into a 4 to 8 second Veo 3.1 clip with dialogue and sound, up to 4K. Price: $0.20 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Veo31ImageToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/Veo31ImageToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/Veo31ImageToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/veo3.1/image-to-video":{"post":{"operationId":"quoteVeo31ImageToVideo","tags":["Run"],"summary":"Quote Veo 3.1 Image to Video","description":"Price: $0.20 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Veo31ImageToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/alibaba/wan-3.0/image-to-video":{"post":{"operationId":"runAlibabaWan30ImageToVideo","tags":["Run"],"summary":"Run Wan 3.0 Image to Video","description":"Animates a first frame, optionally toward a last frame, into a 2 to 30 second Wan 3.0 clip with audio. Price: $0.20 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlibabaWan30ImageToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/AlibabaWan30ImageToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/AlibabaWan30ImageToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/alibaba/wan-3.0/image-to-video":{"post":{"operationId":"quoteAlibabaWan30ImageToVideo","tags":["Run"],"summary":"Quote Wan 3.0 Image to Video","description":"Price: $0.20 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AlibabaWan30ImageToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/bytedance/seedance-2.0/fast/reference-to-video":{"post":{"operationId":"runBytedanceSeedance20FastReferenceToVideo","tags":["Run"],"summary":"Run Seedance 2.0 Fast Reference to Video","description":"The quicker, cheaper Seedance 2.0 multi-reference mode, 480p or 720p with sound. Price: $0.243 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BytedanceSeedance20FastReferenceToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BytedanceSeedance20FastReferenceToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BytedanceSeedance20FastReferenceToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/bytedance/seedance-2.0/fast/reference-to-video":{"post":{"operationId":"quoteBytedanceSeedance20FastReferenceToVideo","tags":["Run"],"summary":"Quote Seedance 2.0 Fast Reference to Video","description":"Price: $0.243 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BytedanceSeedance20FastReferenceToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/bytedance/seedance-2.0/reference-to-video":{"post":{"operationId":"runBytedanceSeedance20ReferenceToVideo","tags":["Run"],"summary":"Run Seedance 2.0 Reference to Video","description":"Directs a 4 to 15 second clip with sound from up to 9 images, 3 videos and 3 audio clips you reference by name. Price: $0.304 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BytedanceSeedance20ReferenceToVideoInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BytedanceSeedance20ReferenceToVideoOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BytedanceSeedance20ReferenceToVideoOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/bytedance/seedance-2.0/reference-to-video":{"post":{"operationId":"quoteBytedanceSeedance20ReferenceToVideo","tags":["Run"],"summary":"Quote Seedance 2.0 Reference to Video","description":"Price: $0.304 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BytedanceSeedance20ReferenceToVideoInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/kling-video/ai-avatar/v2/pro":{"post":{"operationId":"runKlingVideoAiAvatarV2Pro","tags":["Run"],"summary":"Run Kling AI Avatar 2.0 Pro","description":"Turns one portrait and a voice track into a talking, gesturing avatar video. Price: $0.115 / second of input audio.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KlingVideoAiAvatarV2ProInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/KlingVideoAiAvatarV2ProOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/KlingVideoAiAvatarV2ProOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/kling-video/ai-avatar/v2/pro":{"post":{"operationId":"quoteKlingVideoAiAvatarV2Pro","tags":["Run"],"summary":"Quote Kling AI Avatar 2.0 Pro","description":"Price: $0.115 / second of input audio.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KlingVideoAiAvatarV2ProInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/sync-lipsync/v3":{"post":{"operationId":"runSyncLipsyncV3","tags":["Run"],"summary":"Run Sync Lipsync 3","description":"Re-times the lips of any talking video to a new audio track. Price: $8.00 / minute of output video.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncLipsyncV3Input"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/SyncLipsyncV3Output"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/SyncLipsyncV3Output"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/sync-lipsync/v3":{"post":{"operationId":"quoteSyncLipsyncV3","tags":["Run"],"summary":"Quote Sync Lipsync 3","description":"Price: $8.00 / minute of output video.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SyncLipsyncV3Input"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/veed/fabric-1.0":{"post":{"operationId":"runVeedFabric10","tags":["Run"],"summary":"Run VEED Fabric 1.0","description":"Makes any image talk to an audio track, at 480p or 720p. Price: $0.15 / second of input audio.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VeedFabric10Input"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/VeedFabric10Output"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/VeedFabric10Output"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/veed/fabric-1.0":{"post":{"operationId":"quoteVeedFabric10","tags":["Run"],"summary":"Quote VEED Fabric 1.0","description":"Price: $0.15 / second of input audio.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VeedFabric10Input"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/topaz/upscale/image/precision":{"post":{"operationId":"runTopazUpscaleImagePrecision","tags":["Run"],"summary":"Run Topaz Image Upscale","description":"Topaz Labs' image upscaler with face recovery, denoise and sharpening, up to 4x. Price: $0.08 / 24 megapixels of output image.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TopazUpscaleImagePrecisionInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/TopazUpscaleImagePrecisionOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/TopazUpscaleImagePrecisionOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/topaz/upscale/image/precision":{"post":{"operationId":"quoteTopazUpscaleImagePrecision","tags":["Run"],"summary":"Quote Topaz Image Upscale","description":"Price: $0.08 / 24 megapixels of output image.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TopazUpscaleImagePrecisionInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/topaz/upscale/video/precision":{"post":{"operationId":"runTopazUpscaleVideoPrecision","tags":["Run"],"summary":"Run Topaz Video Upscale","description":"Topaz Labs' video upscaler and restorer, up to 4x with optional frame-rate conversion. Price: $0.0517 / second of input video.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TopazUpscaleVideoPrecisionInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/TopazUpscaleVideoPrecisionOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/TopazUpscaleVideoPrecisionOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/topaz/upscale/video/precision":{"post":{"operationId":"quoteTopazUpscaleVideoPrecision","tags":["Run"],"summary":"Quote Topaz Video Upscale","description":"Price: $0.0517 / second of input video.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TopazUpscaleVideoPrecisionInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/bria/background/remove":{"post":{"operationId":"runBriaBackgroundRemove","tags":["Run"],"summary":"Run Bria RMBG 2.0","description":"Clean, commercially safe background removal for products and people. Price: $0.018 / request.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BriaBackgroundRemoveInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BriaBackgroundRemoveOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/BriaBackgroundRemoveOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/bria/background/remove":{"post":{"operationId":"quoteBriaBackgroundRemove","tags":["Run"],"summary":"Quote Bria RMBG 2.0","description":"Price: $0.018 / request.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BriaBackgroundRemoveInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/elevenlabs/tts/eleven-v4":{"post":{"operationId":"runElevenlabsTtsElevenV4","tags":["Run"],"summary":"Run Eleven v4 Text to Speech","description":"ElevenLabs' most expressive voice model, with inline emotion tags and word timestamps. Price: $0.08 / 1000 characters.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ElevenlabsTtsElevenV4Input"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/ElevenlabsTtsElevenV4Output"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/ElevenlabsTtsElevenV4Output"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/elevenlabs/tts/eleven-v4":{"post":{"operationId":"quoteElevenlabsTtsElevenV4","tags":["Run"],"summary":"Quote Eleven v4 Text to Speech","description":"Price: $0.08 / 1000 characters.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ElevenlabsTtsElevenV4Input"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/minimax/speech-2.8-hd":{"post":{"operationId":"runMinimaxSpeech28Hd","tags":["Run"],"summary":"Run MiniMax Speech 2.8 HD","description":"MiniMax's high-definition text to speech in 30+ languages with pauses, emotion and pronunciation control. Price: $0.10 / 1000 characters.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MinimaxSpeech28HdInput"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/MinimaxSpeech28HdOutput"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/MinimaxSpeech28HdOutput"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/minimax/speech-2.8-hd":{"post":{"operationId":"quoteMinimaxSpeech28Hd","tags":["Run"],"summary":"Quote MiniMax Speech 2.8 HD","description":"Price: $0.10 / 1000 characters.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MinimaxSpeech28HdInput"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/minimax/music-3":{"post":{"operationId":"runMinimaxMusic3","tags":["Run"],"summary":"Run MiniMax Music 3","description":"Full songs with vocals from your lyrics and a style description, up to 5 minutes. Price: $0.002 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MinimaxMusic3Input"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/MinimaxMusic3Output"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/MinimaxMusic3Output"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/minimax/music-3":{"post":{"operationId":"quoteMinimaxMusic3","tags":["Run"],"summary":"Quote MiniMax Music 3","description":"Price: $0.002 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MinimaxMusic3Input"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}},"/run/mmaudio-v2":{"post":{"operationId":"runMmaudioV2","tags":["Run"],"summary":"Run MMAudio V2","description":"Adds synchronized sound effects and ambience to a silent video from a short text description. Price: $0.001 / second.","parameters":[{"$ref":"#/components/parameters/Wait"},{"name":"webhook_url","in":"query","required":false,"description":"https URL that receives a signed POST when the request finishes.","schema":{"type":"string","format":"uri"}},{"name":"storage","in":"query","required":false,"description":"Where the output files go: permanent (kept until deleted, paid per GB-month) or temporary (free, deleted after 7 days). Default: the account setting (GET /account → storage.mode).","schema":{"$ref":"#/components/schemas/StorageMode"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Same key + same body returns the same request instead of a second charge.","schema":{"type":"string","maxLength":255}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MmaudioV2Input"}}}},"responses":{"200":{"description":"Finished within wait, or an idempotent replay.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/MmaudioV2Output"},{"type":"null"}]}}}]}}}},"202":{"description":"Accepted; poll GET /requests/{id}.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"output":{"anyOf":[{"$ref":"#/components/schemas/MmaudioV2Output"},{"type":"null"}]}}}]}}}},"402":{"$ref":"#/components/responses/Error"},"409":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"},"429":{"$ref":"#/components/responses/Error"},"502":{"$ref":"#/components/responses/Error"},"401":{"$ref":"#/components/responses/Error"},"403":{"$ref":"#/components/responses/Error"}}}},"/quote/mmaudio-v2":{"post":{"operationId":"quoteMmaudioV2","tags":["Run"],"summary":"Quote MMAudio V2","description":"Price: $0.001 / second.","security":[{},{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MmaudioV2Input"}}}},"responses":{"200":{"description":"The exact price.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Quote"}}}},"404":{"$ref":"#/components/responses/Error"},"422":{"$ref":"#/components/responses/Error"}}}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"API key (doitong_…) as \"Authorization: Bearer <key>\". \"X-API-Key: <key>\" also works."}},"parameters":{"ModelId":{"name":"model_id","in":"path","required":true,"description":"Model id; may contain slashes (e.g. flux/schnell), written as is.","schema":{"type":"string"}},"RequestId":{"name":"request_id","in":"path","required":true,"schema":{"type":"string","pattern":"^req_[a-z0-9]+$"}},"Limit":{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}},"Currency":{"name":"currency","in":"query","required":false,"description":"rub adds rouble amounts (rate × 1.3) next to USD; usd leaves them out. Default: rub on api.doitong.ru and doitong.ru, usd elsewhere.","schema":{"type":"string","enum":["usd","rub"]}},"Wait":{"name":"wait","in":"query","required":false,"description":"Hold the call up to this many seconds (max 20) and return the finished request if it completes in time.","schema":{"type":"number","minimum":0,"maximum":20}}},"responses":{"Error":{"description":"Error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"schemas":{"ModelInput":{"type":"object","additionalProperties":true,"description":"The model's parameters. See GET /models/{model_id} for its input_schema."},"Error":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["type","code","message"],"properties":{"type":{"type":"string","enum":["invalid_request","authentication_error","permission_error","not_found","insufficient_credits","budget_exceeded","conflict","rate_limited","upstream_error","service_unavailable","internal_error"]},"code":{"type":"string"},"message":{"type":"string"},"param":{"type":["string","null"]},"details":{"type":"array","items":{"type":"object","properties":{"param":{"type":"string"},"message":{"type":"string"}}}},"request_id":{"type":["string","null"]},"doc_url":{"type":"string","format":"uri"}}}}},"Price":{"type":"object","description":"Unit price. 1000 API credits = 1 USD (the upstream price).","properties":{"credits":{"type":["number","null"],"description":"API credits per unit (exact prices may have decimals)."},"usd":{"type":["string","null"],"description":"USD per unit, e.g. \"0.112\"."},"rub":{"type":"string","description":"RUB per unit, only with currency=rub or on the RU hosts."},"unit":{"type":"string"},"from_credits":{"type":["integer","null"],"description":"Cheapest plausible single run, in API credits. For a metered model (charged by usage): the typical run, never above hold_credits; a run can settle lower."},"from_usd":{"type":["string","null"]},"from_rub":{"type":"string"},"display":{"type":["string","null"],"description":"e.g. \"$0.112 / second\"."},"credits_display":{"type":["string","null"],"description":"e.g. \"112 API credits / second\"."},"rub_display":{"type":"string","description":"e.g. \"≈ 14.56 ₽ / секунду\" (RU only)."},"mode":{"type":["string","null"],"enum":["exact","measured","estimate","metered",null],"description":"exact: the price is computed from the input; measured: from the length / size of the input files, read before the run; estimate: a flat price per run. All are what a run charges (POST /quote returns the exact amount). metered: charged by actual usage (tokens, seconds of generated speech, processing time) at this unit price — a run holds hold_credits at most and the rest is refunded after it."},"hold_credits":{"type":"integer","description":"metered only: the most a run with the default input can cost (POST /quote gives it for your input)."},"hold_usd":{"type":"string"},"typical_credits":{"type":"integer","description":"metered only: a typical run."},"typical_usd":{"type":"string"},"per":{"type":"string","description":"measured only: what the unit is counted on, e.g. input_video, input_audio, output_video, output_image."},"label":{"type":"string","description":"measured: e.g. \"Price per second of your input video\"; metered: \"Charged by usage\"."}}},"Model":{"type":"object","required":["id","name","category"],"properties":{"id":{"type":"string"},"name":{"type":"string"},"lab":{"type":"string"},"category":{"type":"string"},"summary":{"type":"string"},"tags":{"type":"array","items":{"type":"string"}},"output_kind":{"type":"string"},"thumbnail_url":{"type":["string","null"]},"price":{"$ref":"#/components/schemas/Price"},"docs_url":{"type":"string","format":"uri"},"family":{"type":["string","null"],"description":"Variants group (GET /models?family=)."}}},"ModelDetail":{"allOf":[{"$ref":"#/components/schemas/Model"},{"type":"object","properties":{"description":{"type":"string"},"family":{"type":["string","null"]},"input_schema":{"type":"object"},"output_schema":{"type":"object"},"required_params":{"type":"array","items":{"type":"string"}},"aliases":{"type":"object","additionalProperties":{"type":"string"}},"pricing":{"type":"object"},"example_input":{"type":"object"},"family_ids":{"type":"array","items":{"type":"string"}},"markdown_url":{"type":"string","format":"uri"}}}]},"ModelList":{"type":"object","required":["object","data"],"properties":{"object":{"const":"list"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Model"}},"has_more":{"type":"boolean"},"next_cursor":{"type":["string","null"]}}},"Category":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"count":{"type":"integer"}}},"CategoryList":{"type":"object","required":["object","data"],"properties":{"object":{"const":"list"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Category"}}}},"Quote":{"type":"object","required":["object","model","credits"],"properties":{"object":{"const":"quote"},"model":{"type":"string"},"credits":{"type":"integer","description":"API credits this run charges (1000 = 1 USD)."},"usd":{"type":"string","description":"The same amount in USD, e.g. \"0.56\"."},"rub":{"type":"string","description":"In roubles (rate × 1.3), only with currency=rub or on the RU hosts."},"unit":{"type":"string"},"quantity":{"type":"number"},"unit_credits":{"type":"number"},"mode":{"enum":["exact","measured","estimate","metered"],"description":"exact: priced from the input. measured: priced from the length / size of the input files, which were measured for this quote (see measurements; a run with the same files within an hour charges this). estimate: a flat price per run from the typical cost of this model. All are exactly what the run charges. metered: credits is the HOLD — the most this run can cost, debited when it starts; after the run it is settled to the actual usage and the rest is refunded automatically (see hold, typical, and the request's cost.settled)."},"hold":{"type":"object","description":"metered only: { credits, usd (, rub) } — the most the run can cost."},"typical":{"type":["object","null"],"description":"metered only: { credits, usd (, rub) } of a typical run."},"settlement":{"const":"usage","description":"metered only: the run is charged its actual usage."},"label":{"type":"string","description":"\"Price per run\", \"Estimated price per run\" or, measured, e.g. \"Price per second of your input video\"."},"measurements":{"type":"object","description":"measured only: per input param what was measured ({ seconds, width, height, fps, frames, kind })."},"display":{"type":["string","null"]},"breakdown":{"type":["string","null"]},"input":{"type":"object","description":"The normalized input that was priced."},"warnings":{"type":"array","items":{"type":"string"}},"balance_credits":{"type":"integer","description":"API balance in API credits. Only with an API key."},"balance_usd":{"type":"string","description":"Only with an API key."},"affordable":{"type":"boolean","description":"Only with an API key."},"key_budget_remaining":{"type":["integer","null"],"description":"Only with an API key; API credits; null when the key has no cap."},"top_up_url":{"type":"string","format":"uri","description":"Present when the API balance is too low."}}},"RequestStatus":{"type":"string","enum":["queued","running","succeeded","failed","canceled"]},"Output":{"type":"object","required":["type","url"],"properties":{"type":{"type":"string","enum":["image","video","audio","file","3d"]},"url":{"type":"string","format":"uri"},"content_type":{"type":["string","null"]},"file_size":{"type":["integer","null"]},"width":{"type":["integer","null"]},"height":{"type":["integer","null"]},"duration":{"type":["number","null"]},"stored":{"type":"boolean"},"expired":{"type":"boolean","description":"Present (true) once our copy was deleted; the URL no longer works."}}},"StorageMode":{"type":"string","enum":["permanent","temporary"]},"StorageSettingsUpdate":{"type":"object","required":["mode"],"additionalProperties":false,"properties":{"mode":{"$ref":"#/components/schemas/StorageMode"}}},"RequestStorage":{"type":"object","description":"Where the output files are kept (DESIGN.md §17).","properties":{"mode":{"$ref":"#/components/schemas/StorageMode"},"bytes":{"type":"integer","description":"Bytes of our copies of the output files."},"expires_at":{"type":["string","null"],"format":"date-time","description":"When the files are deleted (temporary); null when kept until you delete them."},"expired":{"type":"boolean","description":"true once the files were deleted."}}},"StorageSettings":{"type":"object","properties":{"object":{"type":"string","description":"\"storage_settings\" from PATCH /account/storage."},"mode":{"$ref":"#/components/schemas/StorageMode"},"price_credits_per_gb_month":{"type":"integer","description":"API credits per GB (1024^3 bytes) per month of permanent storage."},"price_usd_per_gb_month":{"type":"string"},"price_rub_per_gb_month":{"type":"string","description":"Only with currency=rub or on the RU hosts."},"temporary_retention_days":{"type":"integer"},"used_bytes":{"type":"integer","description":"Bytes kept permanently (billed)."},"used_gb":{"type":"string"},"expiring_bytes":{"type":"integer","description":"Bytes waiting to be deleted."},"monthly_estimate_credits":{"type":"integer"},"monthly_estimate_usd":{"type":"string"},"grace_started_at":{"type":["string","null"],"format":"date-time","description":"The API balance stopped covering storage at this time."},"grace_until":{"type":["string","null"],"format":"date-time","description":"Top up before this time, or the permanent files become temporary."}}},"Request":{"type":"object","required":["id","object","model","status"],"properties":{"id":{"type":"string"},"object":{"const":"request"},"model":{"type":"string"},"status":{"$ref":"#/components/schemas/RequestStatus"},"created_at":{"type":"string","format":"date-time"},"started_at":{"type":["string","null"],"format":"date-time"},"completed_at":{"type":["string","null"],"format":"date-time"},"queue_position":{"type":["integer","null"]},"cost":{"type":"object","description":"API credits (1000 = 1 USD).","properties":{"credits":{"type":"integer","description":"The quoted price (metered: the hold)."},"usd":{"type":"string","description":"The quoted price in USD."},"charged":{"type":"integer","description":"Debited from the API balance."},"refunded":{"type":"integer","description":"Given back (failure, cancel, or the unused part of a metered hold)."},"mode":{"const":"metered","description":"Only on metered requests."},"held":{"type":"integer","description":"metered only: the hold debited at the start."},"typical":{"type":"integer","description":"metered only: a typical run, API credits."},"settled":{"type":["object","null"],"description":"metered only, once the request succeeded: status settled (credits = what the usage cost = charged − refunded), pending, or no_usage (the model reported no usage: the hold stands).","properties":{"status":{"enum":["settled","pending","no_usage"]},"credits":{"type":"integer"},"usd":{"type":"string"},"quantity":{"type":"number","description":"Usage units billed."},"unit":{"type":"string","description":"e.g. 1000_tokens, audio_second, compute_second."},"unit_usd":{"type":"string"},"source":{"enum":["billed_usage","processing_time"]},"approximate":{"type":"boolean","description":"true when measured from the processing time."}}}}},"input":{"type":"object"},"output":{"type":["object","null"]},"outputs":{"type":"array","items":{"$ref":"#/components/schemas/Output"}},"error":{"anyOf":[{"type":"object","properties":{"type":{"type":"string"},"code":{"type":"string"},"message":{"type":"string"}}},{"type":"null"}]},"metrics":{"type":["object","null"]},"storage":{"$ref":"#/components/schemas/RequestStorage"},"logs":{"type":"array","items":{"type":"object"}},"urls":{"type":"object","properties":{"self":{"type":"string","format":"uri"},"cancel":{"type":"string","format":"uri"}}}}},"RequestList":{"type":"object","required":["object","data"],"properties":{"object":{"const":"list"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Request"}},"has_more":{"type":"boolean"},"next_cursor":{"type":["string","null"]}}},"CancelResult":{"allOf":[{"$ref":"#/components/schemas/Request"},{"type":"object","properties":{"cancel_requested":{"type":"boolean"}}}]},"UploadRequest":{"type":"object","required":["filename"],"properties":{"filename":{"type":"string","description":"The extension decides the type (jpg, png, webp, mp4, mov, webm)."},"content_type":{"type":"string"},"size":{"type":"integer","minimum":1,"description":"Bytes."}}},"Upload":{"type":"object","properties":{"object":{"const":"upload"},"upload_url":{"type":"string","format":"uri"},"file_url":{"type":"string","format":"uri"},"method":{"const":"PUT"},"headers":{"type":"object","additionalProperties":{"type":"string"}},"content_type":{"type":"string"},"expires_in":{"type":"integer"},"max_bytes":{"type":"integer"}}},"Account":{"type":"object","properties":{"object":{"const":"account"},"credits":{"type":"integer","description":"API balance in API credits (1000 = 1 USD). Separate from the Doitong app credits."},"balance":{"type":"object","properties":{"credits":{"type":"integer"},"usd":{"type":"string"},"rub":{"type":"string","description":"Only with currency=rub or on the RU hosts."}}},"top_up_url":{"type":"string","format":"uri"},"key":{"type":"object","properties":{"name":{"type":"string"},"prefix":{"type":"string"},"scopes":{"type":"array","items":{"type":"string"}},"budget_remaining":{"type":["integer","null"],"description":"API credits; null: no cap on the key, the API balance is the limit."},"rate_limit":{"type":"integer"},"rate_limit_remaining":{"type":"integer"}}},"webhook_signing_secret":{"type":"string","description":"HMAC-SHA256 secret of the Doitong-Signature header."},"storage":{"$ref":"#/components/schemas/StorageSettings"}}},"JsonRpcRequest":{"type":"object","required":["jsonrpc","method"],"properties":{"jsonrpc":{"const":"2.0"},"id":{"type":["string","integer","null"]},"method":{"type":"string"},"params":{"type":"object"}}},"JsonRpcResponse":{"type":"object","required":["jsonrpc"],"properties":{"jsonrpc":{"const":"2.0"},"id":{"type":["string","integer","null"]},"result":{"type":"object"},"error":{"type":"object"}}},"FluxDevInput":{"properties":{"acceleration":{"default":"none","description":"Generation acceleration, with higher settings reducing the time needed to generate results.","enum":["none","regular","high"],"title":"Acceleration","type":"string"},"guidance_scale":{"default":3.5,"description":"Prompt-adherence strength for image selection, expressed as CFG (Classifier Free Guidance).","maximum":20,"minimum":1,"title":"Guidance scale (CFG)","type":"number"},"image_size":{"anyOf":[{"properties":{"height":{"default":512,"description":"The height of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Height","type":"integer"},"width":{"default":512,"description":"The width of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Width","type":"integer"}},"title":"ImageSize","type":"object","x-doitong-order":["width","height"]},{"enum":["square_hd","square","portrait_4_3","portrait_16_9","landscape_4_3","landscape_16_9"],"type":"string"}],"default":"landscape_4_3","description":"Dimensions of the generated image.","title":"Image Size"},"num_images":{"default":1,"description":"Image count requested for generation.","maximum":4,"minimum":1,"title":"Num Images","type":"integer","x-doitong-alias":"num_outputs"},"num_inference_steps":{"default":28,"description":"Count of inference steps to run.","maximum":50,"minimum":1,"title":"Num Inference Steps","type":"integer"},"output_format":{"default":"jpeg","description":"File format for the resulting image.","enum":["jpeg","png"],"title":"Output Format","type":"string"},"prompt":{"description":"Prompt that guides image generation.","examples":["Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \"FLUX\" is painted over it in big, white brush strokes with visible texture."],"title":"Prompt","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Seed for reproducible images: an identical prompt and seed produce an identical image when the model version is unchanged.","title":"Seed"}},"required":["prompt"],"title":"BaseInput","type":"object","x-doitong-order":["prompt","image_size","num_inference_steps","seed","guidance_scale","num_images","output_format","acceleration"]},"FluxDevOutput":{"properties":{"has_nsfw_concepts":{"description":"Indicates whether NSFW concepts appear in the generated images.","items":{"type":"boolean"},"title":"Has Nsfw Concepts","type":"array"},"images":{"description":"File information for the generated images.","items":{"properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"image/jpeg","title":"Content Type"},"height":{"title":"Height","type":"integer"},"url":{"title":"Url","type":"string"},"width":{"title":"Width","type":"integer"}},"required":["url","width","height"],"title":"Image","type":"object","x-doitong-order":["url","width","height","content_type"]},"title":"Images","type":"array"},"prompt":{"description":"Prompt used during image generation.","title":"Prompt","type":"string"},"seed":{"description":"Image-generation seed, including the randomly chosen value if the input omitted a seed; otherwise, it repeats the supplied value.","title":"Seed","type":"integer"},"timings":{"additionalProperties":{"type":"number"},"title":"Timings","type":"object"}},"required":["images","timings","seed","has_nsfw_concepts","prompt"],"title":"Output","type":"object","x-doitong-order":["images","timings","seed","has_nsfw_concepts","prompt"]},"FluxSchnellInput":{"properties":{"acceleration":{"default":"none","description":"Generation acceleration, with higher settings reducing the time needed to generate results.","enum":["none","regular","high"],"title":"Acceleration","type":"string"},"enable_safety_checker":{"default":true,"description":"Safety checking, which returns black images in place of any images flagged unsafe. A value of true enables checking; false disables it only for authorized accounts, while requests without authorization are checked regardless.","title":"Enable Safety Checker","type":"boolean"},"guidance_scale":{"default":3.5,"description":"Prompt-adherence strength for image selection, expressed as CFG (Classifier Free Guidance).","maximum":20,"minimum":1,"title":"Guidance scale (CFG)","type":"number"},"image_size":{"anyOf":[{"properties":{"height":{"default":512,"description":"The height of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Height","type":"integer"},"width":{"default":512,"description":"The width of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Width","type":"integer"}},"title":"ImageSize","type":"object","x-doitong-order":["width","height"]},{"enum":["square_hd","square","portrait_4_3","portrait_16_9","landscape_4_3","landscape_16_9"],"type":"string"}],"default":"landscape_4_3","description":"Dimensions of the generated image.","title":"Image Size"},"num_images":{"default":1,"description":"Image count requested for generation.","maximum":4,"minimum":1,"title":"Num Images","type":"integer","x-doitong-alias":"num_outputs"},"num_inference_steps":{"default":4,"description":"Count of inference steps to run.","maximum":12,"minimum":1,"title":"Num Inference Steps","type":"integer"},"output_format":{"default":"jpeg","description":"File format for the resulting image.","enum":["jpeg","png"],"title":"Output Format","type":"string"},"prompt":{"description":"Prompt that guides image generation.","examples":["Extreme close-up of a single tiger eye, direct frontal view. Detailed iris and pupil. Sharp focus on eye texture and color. Natural lighting to capture authentic eye shine and depth. The word \"FLUX\" is painted over it in big, white brush strokes with visible texture."],"title":"Prompt","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Seed for reproducible images: an identical prompt and seed produce an identical image when the model version is unchanged.","title":"Seed"}},"required":["prompt"],"title":"SchnellTextToImageInput","type":"object","x-doitong-order":["num_inference_steps","prompt","image_size","seed","guidance_scale","num_images","enable_safety_checker","output_format","acceleration"]},"FluxSchnellOutput":{"properties":{"has_nsfw_concepts":{"description":"Indicates whether NSFW concepts appear in the generated images.","items":{"type":"boolean"},"title":"Has Nsfw Concepts","type":"array"},"images":{"description":"File information for the generated images.","items":{"properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"image/jpeg","title":"Content Type"},"height":{"title":"Height","type":"integer"},"url":{"title":"Url","type":"string"},"width":{"title":"Width","type":"integer"}},"required":["url","width","height"],"title":"Image","type":"object","x-doitong-order":["url","width","height","content_type"]},"title":"Images","type":"array"},"prompt":{"description":"Prompt used during image generation.","title":"Prompt","type":"string"},"seed":{"description":"Image-generation seed, including the randomly chosen value if the input omitted a seed; otherwise, it repeats the supplied value.","title":"Seed","type":"integer"},"timings":{"additionalProperties":{"type":"number"},"title":"Timings","type":"object"}},"required":["images","timings","seed","has_nsfw_concepts","prompt"],"title":"Output","type":"object","x-doitong-order":["images","timings","seed","has_nsfw_concepts","prompt"]},"Flux2Input":{"properties":{"acceleration":{"default":"regular","description":"Acceleration setting for generating images.","enum":["none","regular","high"],"examples":["regular"],"title":"Acceleration","type":"string"},"enable_prompt_expansion":{"default":false,"description":"Automatic prompt enhancement: true enables expansion of the prompt to improve results.","title":"Enable Prompt Expansion","type":"boolean"},"guidance_scale":{"default":2.5,"description":"Prompt adherence setting for the model's search for a related image to display, expressed as a guidance scale.","maximum":20,"minimum":0,"title":"Guidance Scale","type":"number"},"image_size":{"anyOf":[{"properties":{"height":{"default":512,"description":"The height of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Height","type":"integer"},"width":{"default":512,"description":"The width of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Width","type":"integer"}},"title":"ImageSize","type":"object","x-doitong-order":["width","height"]},{"enum":["square_hd","square","portrait_4_3","portrait_16_9","landscape_4_3","landscape_16_9"],"type":"string"}],"default":"landscape_4_3","description":"Output image size, constrained to a minimum of 512 and a maximum of 2048 pixels on each axis.","title":"Image Size"},"num_images":{"default":1,"description":"Image count requested for generation.","maximum":4,"minimum":1,"title":"Number of Images","type":"integer","x-doitong-alias":"num_outputs"},"num_inference_steps":{"default":28,"description":"Count of inference steps to run.","maximum":50,"minimum":4,"title":"Number of Inference Steps","type":"integer"},"output_format":{"default":"png","description":"File format for the resulting image.","enum":["jpeg","png","webp"],"title":"Output Format","type":"string"},"prompt":{"description":"Prompt that guides image generation.","examples":["Dutch angle close-up of a survivor in post-apocalyptic setting, dust-covered face, dramatic harsh sunlight creating deep shadows, happy expression, desaturated dystopian color palette, gritty realism"],"title":"Prompt","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Generation seed override; omitting it lets generation choose a seed at random.","title":"Seed"}},"required":["prompt"],"title":"Flux2TextToImageInput","type":"object","x-doitong-order":["prompt","guidance_scale","seed","num_inference_steps","image_size","num_images","acceleration","enable_prompt_expansion","output_format"]},"Flux2Output":{"properties":{"has_nsfw_concepts":{"description":"Indicates whether NSFW concepts appear in the generated images.","items":{"type":"boolean"},"title":"Has Nsfw Concepts","type":"array"},"images":{"description":"Images produced by the model.","items":{"properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the image","title":"Height"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the image","title":"Width"}},"required":["url"],"title":"ImageFile","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height"]},"title":"Images","type":"array"},"prompt":{"description":"Prompt used during image generation.","title":"Prompt","type":"string"},"seed":{"description":"Image-generation seed, including the randomly chosen value if the input omitted a seed; otherwise, it repeats the supplied value.","title":"Seed","type":"integer"},"timings":{"additionalProperties":{"type":"number"},"title":"Timings","type":"object"}},"required":["images","timings","seed","has_nsfw_concepts","prompt"],"title":"Flux2T2IOutput","type":"object","x-doitong-order":["images","timings","seed","has_nsfw_concepts","prompt"]},"Flux2ProInput":{"properties":{"image_size":{"anyOf":[{"properties":{"height":{"default":512,"description":"The height of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Height","type":"integer"},"width":{"default":512,"description":"The width of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Width","type":"integer"}},"title":"ImageSize","type":"object","x-doitong-order":["width","height"]},{"enum":["square_hd","square","portrait_4_3","portrait_16_9","landscape_4_3","landscape_16_9"],"type":"string"}],"default":"landscape_4_3","description":"Dimensions of the generated image.","title":"Image Size","x-doitong-limits":{"max_area":4194304,"max_height":2560,"max_width":2560,"min_height":256,"min_width":256,"multiple_of":16}},"output_format":{"default":"jpeg","description":"File format for the resulting image.","enum":["jpeg","png"],"title":"Output Format","type":"string"},"prompt":{"description":"Prompt that guides image generation.","examples":["An intense close-up of knight's visor reflecting battle, sword raised, flames in background, chiaroscuro helmet shadows, hyper-detailed armor, square medieval, cinematic lighting"],"title":"Prompt","type":"string"},"safety_tolerance":{"default":"2","description":"Generated-image safety setting, ranging in tolerance from maximum permissiveness at 5 to maximum strictness at 1.","enum":["1","2","3","4","5"],"title":"Safety Tolerance","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Seed value for generation.","title":"Seed"}},"required":["prompt"],"title":"Flux2ProTextToImageInput","type":"object","x-doitong-order":["prompt","image_size","seed","safety_tolerance","output_format"]},"Flux2ProOutput":{"properties":{"images":{"description":"Images produced by the model.","items":{"properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the image","title":"Height"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the image","title":"Width"}},"required":["url"],"title":"ImageFile","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height"]},"title":"Images","type":"array"},"seed":{"description":"Seed value used during generation.","title":"Seed","type":"integer"}},"required":["images","seed"],"title":"Flux2ProOutput","type":"object","x-doitong-order":["images","seed"]},"OpenaiGptImage25FlareTextToImageInput":{"description":"GPT Image 2.5 generation inputs, kept separate from GPT Image 2.","properties":{"background":{"default":"auto","description":"Background of the resulting image.","enum":["auto","transparent","opaque"],"title":"Background","type":"string"},"image_size":{"anyOf":[{"properties":{"height":{"default":512,"description":"The height of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Height","type":"integer"},"width":{"default":512,"description":"The width of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Width","type":"integer"}},"title":"ImageSize","type":"object","x-doitong-order":["width","height"]},{"enum":["square_hd","square","portrait_4_3","portrait_16_9","landscape_4_3","landscape_16_9","auto"],"type":"string"}],"default":"landscape_4_3","description":"Output dimensions accept a preset name, a {width, height} object, or 'auto' for the model's best size choice. All concrete sizes require dimensions divisible by 16, edges no longer than 3840px, an aspect ratio at most 3:1, and a total pixel count of 655,360–8,294,400.","title":"Image Size"},"num_images":{"default":1,"description":"Count of images to produce.","examples":[1],"maximum":10,"minimum":1,"title":"Number of Images","type":"integer","x-doitong-alias":"num_outputs"},"output_compression":{"anyOf":[{"maximum":100,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Compression setting available only for 'jpeg' or 'webp' in output_format; its permitted range is 0–100.","title":"Output Compression"},"output_format":{"default":"png","description":"File format of the output images.","enum":["jpeg","png","webp"],"title":"Output Format","type":"string"},"prompt":{"description":"Prompt used to generate images.","examples":["create a realistic image taken with iphone at these coordinates 41°43′32″N 49°56′49″W 15 April 1912"],"maxLength":32000,"minLength":1,"title":"Prompt","type":"string"},"quality":{"default":"high","description":"Image quality selection, with 'auto' delegating the decision to the model. Additional detail at higher settings comes with longer latency and greater token usage.","enum":["auto","low","medium","high","xhigh","max"],"title":"Quality","type":"string"}},"required":["prompt"],"title":"GPTImage25TextToImageRequest","type":"object","x-doitong-order":["prompt","image_size","background","quality","num_images","output_format","output_compression"]},"OpenaiGptImage25FlareTextToImageOutput":{"properties":{"images":{"description":"Images produced by the model.","items":{"properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the image","title":"Height"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the image","title":"Width"}},"required":["url"],"title":"ImageFile","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height"]},"title":"Images","type":"array"}},"required":["images"],"title":"ImageResponse","type":"object","x-doitong-order":["images"]},"IdeogramV45Input":{"additionalProperties":false,"properties":{"enable_prompt_expansion":{"default":true,"description":"Controls whether the partner expands the prompt.","title":"Enable Prompt Expansion","type":"boolean"},"image_size":{"anyOf":[{"properties":{"height":{"default":512,"description":"The height of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Height","type":"integer"},"width":{"default":512,"description":"The width of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Width","type":"integer"}},"title":"ImageSize","type":"object","x-doitong-order":["width","height"]},{"enum":["square_hd","square","portrait_4_3","portrait_16_9","landscape_4_3","landscape_16_9"],"type":"string"}],"default":"square_hd","description":"Output dimensions can be specified explicitly using one of these supported sizes: 1024x1024, 1024x3072, 1120x896, 1152x2944, 1152x864, 1248x3328, 1248x832, 1280x3072, 1280x720, 1280x800, 1296x3168, 1440x2560, 1440x2880, 1440x720, 1600x2560, 1664x2496, 1728x2304, 1792x2240, 2048x2048, 2240x1792, 2304x1728, 2496x1664, 2560x1440, 2560x1600, 2880x1440, 2944x1152, 3072x1024, 3072x1280, 3168x1296, 3328x1248, 720x1280, 720x1440, 800x1280, 832x1248, 864x1152, 896x1120. For presets, 16:9 corresponds to 1280x720 or 720x1280, and 4:3 corresponds to 1152x864 or 864x1152. Selecting square instead uses square_hd at 1024x1024.","title":"Image Size"},"num_images":{"default":1,"description":"Count of images to produce.","maximum":8,"minimum":1,"title":"Number of Images","type":"integer","x-doitong-alias":"num_outputs"},"prompt":{"description":"Prompt describing the generation or edit.","examples":["A colorful storefront with a sign reading hello"],"maxLength":10000,"minLength":1,"title":"Prompt","type":"string"},"quality":{"default":"medium","description":"Quality setting for text-to-image generation.","enum":["low","medium","high"],"title":"Quality","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Random seed, selected automatically when omitted.","title":"Seed"}},"required":["prompt"],"title":"GenerateInputV45","type":"object","x-doitong-order":["prompt","image_size","quality","enable_prompt_expansion","num_images","seed"]},"IdeogramV45Output":{"properties":{"images":{"items":{"properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]},"title":"Images","type":"array"},"seed":{"description":"Seed value used for random number generation.","examples":[123456],"title":"Seed","type":"integer"}},"required":["images","seed"],"title":"OutputV3","type":"object","x-doitong-order":["images","seed"]},"NanoBanana2Input":{"properties":{"aspect_ratio":{"anyOf":[{"enum":["auto","21:9","16:9","3:2","4:3","5:4","1:1","4:5","3:4","2:3","9:16","4:1","1:4","8:1","1:8"],"type":"string"},{"type":"null"}],"default":"auto","description":"Choose the generated image's aspect ratio explicitly, including extreme options 4:1, 1:4, 8:1, 1:8, or select \"auto\" for a prompt-based choice by the model.","title":"Aspect Ratio"},"enable_web_search":{"default":false,"description":"Web search toggle for image generation, allowing the model to incorporate up-to-date information found online into the image.","title":"Enable Web Search","type":"boolean"},"limit_generations":{"default":true,"description":"Experimental generation cap that may affect quality when enabled. With `True`, each prompting round is restricted to 1 generation, overriding image-count instructions in the prompt and ignoring model-generated intermediate images.","title":"Limit Generations","type":"boolean"},"num_images":{"default":1,"description":"Image count requested for generation.","maximum":4,"minimum":1,"title":"Number of Images","type":"integer","x-doitong-alias":"num_outputs"},"output_format":{"default":"png","description":"File format for the resulting image.","enum":["jpeg","png","webp"],"title":"Output Format","type":"string"},"prompt":{"description":"Text instructions used to generate an image.","examples":["An action shot of a black lab swimming in an inground suburban swimming pool. The camera is placed meticulously on the water line, dividing the image in half, revealing both the dogs head above water holding a tennis ball in it's mouth, and it's paws paddling underwater."],"maxLength":50000,"minLength":3,"title":"Prompt","type":"string"},"resolution":{"default":"1K","description":"Resolution for the output image.","enum":["0.5K","1K","2K","4K"],"title":"Resolution","type":"string"},"safety_tolerance":{"default":"4","description":"Set content-moderation tolerance between the least restrictive level, 6, and the strictest level, 1, which blocks most content.","enum":["1","2","3","4","5","6"],"title":"Safety Tolerance","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Seed value that initializes random-number generation.","title":"Seed"},"system_prompt":{"default":"","description":"Optional request-wide persona and output-style guidance, delivered to Gemini as a system instruction or to OpenAI-compatible providers as a system message. Nothing is sent for this instruction when the value is blank.","maxLength":50000,"title":"System Prompt","type":"string"},"thinking_level":{"anyOf":[{"enum":["minimal","high"],"type":"string"},{"type":"null"}],"description":"Select 'minimal' or 'high' to activate model thinking at that level and include its thoughts in the generation; leaving the level unset keeps thinking disabled.","title":"Thinking Level"}},"required":["prompt"],"title":"NanoBanana2TextToImageInput","type":"object","x-doitong-order":["prompt","num_images","seed","aspect_ratio","output_format","safety_tolerance","system_prompt","resolution","limit_generations","enable_web_search","thinking_level"]},"NanoBanana2Output":{"properties":{"description":{"description":"Description accompanying the generated images.","title":"Description","type":"string"},"images":{"description":"Images produced by the model.","items":{"properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the image","title":"Height"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the image","title":"Width"}},"required":["url"],"title":"ImageFile","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height"]},"title":"Images","type":"array"}},"required":["images","description"],"title":"NanoBanana2TextToImageOutput","type":"object","x-doitong-order":["images","description"]},"NanoBananaProInput":{"properties":{"aspect_ratio":{"anyOf":[{"enum":["auto","21:9","16:9","3:2","4:3","5:4","1:1","4:5","3:4","2:3","9:16"],"type":"string"},{"type":"null"}],"default":"1:1","description":"Aspect ratio for the resulting image.","title":"Aspect Ratio"},"enable_web_search":{"default":false,"description":"Web search toggle for image generation, allowing the model to incorporate up-to-date information found online into the image.","title":"Enable Web Search","type":"boolean"},"limit_generations":{"default":true,"description":"Experimental generation cap: enabling `True` overrides any image-count directions in the prompt and restricts each prompting round to 1 generation.","title":"Limit Generations","type":"boolean"},"num_images":{"default":1,"description":"Image count requested for generation.","maximum":4,"minimum":1,"title":"Number of Images","type":"integer","x-doitong-alias":"num_outputs"},"output_format":{"default":"png","description":"File format for the resulting image.","enum":["jpeg","png","webp"],"title":"Output Format","type":"string"},"prompt":{"description":"Text instructions used to generate an image.","examples":["An action shot of a black lab swimming in an inground suburban swimming pool. The camera is placed meticulously on the water line, dividing the image in half, revealing both the dogs head above water holding a tennis ball in it's mouth, and it's paws paddling underwater."],"maxLength":50000,"minLength":3,"title":"Prompt","type":"string"},"resolution":{"default":"1K","description":"Resolution for the output image.","enum":["1K","2K","4K"],"title":"Resolution","type":"string"},"safety_tolerance":{"default":"4","description":"Set content-moderation tolerance between the least restrictive level, 6, and the strictest level, 1, which blocks most content.","enum":["1","2","3","4","5","6"],"title":"Safety Tolerance","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Seed value that initializes random-number generation.","title":"Seed"},"system_prompt":{"default":"","description":"Optional request-wide persona and output-style guidance, delivered to Gemini as a system instruction or to OpenAI-compatible providers as a system message. Nothing is sent for this instruction when the value is blank.","maxLength":50000,"title":"System Prompt","type":"string"}},"required":["prompt"],"title":"NanoBananaTextToImageInput","type":"object","x-doitong-order":["prompt","num_images","seed","aspect_ratio","output_format","safety_tolerance","system_prompt","resolution","limit_generations","enable_web_search"]},"NanoBananaProOutput":{"properties":{"description":{"description":"Description accompanying the generated images.","title":"Description","type":"string"},"images":{"description":"Images produced by the model.","items":{"properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the image","title":"Height"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the image","title":"Width"}},"required":["url"],"title":"ImageFile","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height"]},"title":"Images","type":"array"}},"required":["images","description"],"title":"NanoBananaTextToImageOutput","type":"object","x-doitong-order":["images","description"]},"AlibabaQwenImage3TextToImageInput":{"properties":{"enable_prompt_expansion":{"default":true,"description":"Controls automatic prompt rewriting by an LLM to improve results.","title":"Enable Prompt Expansion","type":"boolean"},"image_size":{"anyOf":[{"properties":{"height":{"default":512,"description":"The height of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Height","type":"integer"},"width":{"default":512,"description":"The width of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Width","type":"integer"}},"title":"ImageSize","type":"object","x-doitong-order":["width","height"]},{"enum":["square_hd","square","portrait_4_3","portrait_16_9","landscape_4_3","landscape_16_9"],"type":"string"}],"default":"square_hd","description":"Set the output dimensions so that the image's total pixel count falls between 512 × 512 and 2048 × 2048.","examples":[{"height":1024,"width":1024}],"title":"Image Size"},"negative_prompt":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":"","description":"Content to exclude from the resulting image, limited to 500 characters.","examples":["low resolution, error, worst quality, low quality, deformed"],"title":"Negative Prompt"},"num_images":{"default":1,"description":"Image count requested for generation.","maximum":6,"minimum":1,"title":"Num Images","type":"integer","x-doitong-alias":"num_outputs"},"output_format":{"default":"png","description":"File format for the resulting image.","enum":["jpeg","png","webp"],"title":"Output Format","type":"string"},"prompt":{"description":"Text describing the image to create, in Chinese or English, limited to 5000 characters.","maxLength":5000,"minLength":1,"title":"Prompt","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Random seed enabling reproducible results, ranging from 0 to 2147483647.","title":"Seed"}},"required":["prompt"],"title":"QwenImage3TextToImageInput","type":"object","x-doitong-order":["prompt","negative_prompt","image_size","enable_prompt_expansion","seed","num_images","output_format"]},"AlibabaQwenImage3TextToImageOutput":{"properties":{"images":{"description":"Images produced by generation.","items":{"properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]},"title":"Images","type":"array"},"seed":{"description":"Seed value applied during generation.","examples":[42],"title":"Seed","type":"integer"}},"required":["images","seed"],"title":"QwenImage3TextToImageOutput","type":"object","x-doitong-order":["images","seed"]},"RecraftV41TextToImageInput":{"properties":{"background_color":{"anyOf":[{"properties":{"b":{"default":0,"description":"Value of the blue component.","maximum":255,"minimum":0,"title":"B","type":"integer"},"g":{"default":0,"description":"Value of the green component.","maximum":255,"minimum":0,"title":"G","type":"integer"},"r":{"default":0,"description":"Value of the red component.","maximum":255,"minimum":0,"title":"R","type":"integer"}},"title":"RGBColor","type":"object","x-doitong-order":["r","g","b"]},{"type":"null"}],"description":"Preferred color for the background of generated images."},"colors":{"default":[],"description":"Array containing preferred colors.","items":{"properties":{"b":{"default":0,"description":"Value of the blue component.","maximum":255,"minimum":0,"title":"B","type":"integer"},"g":{"default":0,"description":"Value of the green component.","maximum":255,"minimum":0,"title":"G","type":"integer"},"r":{"default":0,"description":"Value of the red component.","maximum":255,"minimum":0,"title":"R","type":"integer"}},"title":"RGBColor","type":"object","x-doitong-order":["r","g","b"]},"title":"Colors","type":"array"},"image_size":{"anyOf":[{"properties":{"height":{"default":512,"description":"The height of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Height","type":"integer"},"width":{"default":512,"description":"The width of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Width","type":"integer"}},"title":"ImageSize","type":"object","x-doitong-order":["width","height"]},{"enum":["square_hd","square","portrait_4_3","portrait_16_9","landscape_4_3","landscape_16_9"],"type":"string"}],"default":"square_hd","examples":["landscape_16_9"],"title":"Image Size"},"prompt":{"examples":["Tilt-shift miniature effect on a real Portuguese fishing village at golden hour, colorful boats in the harbor appearing toy-like, selective focus band across the middle, saturated primary colors of blue red and yellow boats against white buildings, 90mm tilt-shift lens, the familiar made fantastical, Wes Anderson color sensibility"],"maxLength":10000,"minLength":1,"title":"Prompt","type":"string"}},"required":["prompt"],"title":"RecraftV4TextToImageInput","type":"object","x-doitong-order":["prompt","image_size","colors","background_color"]},"RecraftV41TextToImageOutput":{"properties":{"images":{"items":{"properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]},"title":"Images","type":"array"}},"required":["images"],"title":"RecraftV4TextToImageOutput","type":"object","x-doitong-order":["images"]},"BytedanceSeedreamV5ProTextToImageInput":{"properties":{"enhance_prompt_mode":{"default":"standard","description":"Prompt optimization setting: choose `standard` to favor image quality or `fast` for shorter generation time.","enum":["standard","fast"],"title":"Enhance Prompt Mode","type":"string"},"image_size":{"anyOf":[{"properties":{"height":{"default":512,"description":"The height of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Height","type":"integer"},"width":{"default":512,"description":"The width of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Width","type":"integer"}},"title":"ImageSize","type":"object","x-doitong-order":["width","height"]},{"enum":["square_hd","square","portrait_4_3","portrait_16_9","landscape_4_3","landscape_16_9","auto_1K","auto_2K"],"type":"string"}],"default":"auto_2K","description":"Output image dimensions, requiring a total pixel count within 1024x1024–2048x2048 and an aspect ratio within 1/16–16.","examples":["auto_2K"],"title":"Image Size","x-doitong-limits":{"max_area":4194304,"max_aspect_ratio":16,"min_area":1048576,"min_aspect_ratio":0.0625}},"num_images":{"default":1,"description":"Count of independent model generation runs using the prompt.","maximum":6,"minimum":1,"title":"Num Images","type":"integer","x-doitong-alias":"num_outputs"},"output_format":{"default":"jpeg","description":"File format for the output image.","enum":["jpeg","png"],"examples":["jpeg"],"title":"Output Format","type":"string"},"prompt":{"description":"Text instructions for generating the image.","examples":["Vibrant editorial of a model in contemporary fashion fused with West African textile patterns and beadwork, Campbell Addy bold aesthetic, saturated palette, dramatic studio lighting, celebratory cultural richness, striking contemporary portraiture"],"title":"Prompt","type":"string"}},"required":["prompt"],"title":"SeedDream50ProT2IInput","type":"object","x-doitong-order":["prompt","image_size","num_images","output_format","enhance_prompt_mode"]},"BytedanceSeedreamV5ProTextToImageOutput":{"properties":{"images":{"description":"Images produced by generation.","items":{"description":"Represents an image file.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the image in pixels.","examples":[1024],"title":"Height"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the image in pixels.","examples":[1024],"title":"Width"}},"required":["url"],"title":"Image","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height"]},"title":"Images","type":"array"}},"required":["images"],"title":"SeedDream50ProT2IOutput","type":"object","x-doitong-order":["images"]},"FluxProKontextInput":{"properties":{"aspect_ratio":{"anyOf":[{"enum":["21:9","16:9","4:3","3:2","1:1","2:3","3:4","9:16","9:21"],"type":"string"},{"type":"null"}],"description":"Aspect ratio for the resulting image.","title":"Aspect Ratio"},"enhance_prompt":{"default":false,"description":"Controls prompt enhancement to improve results.","title":"Enhance Prompt","type":"boolean"},"guidance_scale":{"default":3.5,"description":"Prompt-adherence strength for image selection, expressed as CFG (Classifier Free Guidance).","maximum":20,"minimum":1,"title":"Guidance scale (CFG)","type":"number"},"image_url":{"description":"Image used to prompt the omni model.","minLength":1,"title":"Image URL","type":"string","x-doitong-alias":"image"},"num_images":{"default":1,"description":"Image count requested for generation.","maximum":4,"minimum":1,"title":"Num Images","type":"integer","x-doitong-alias":"num_outputs"},"output_format":{"default":"jpeg","description":"File format for the resulting image.","enum":["jpeg","png"],"title":"Output Format","type":"string"},"prompt":{"description":"Prompt that guides image generation.","examples":["Put a donut next to the flour."],"title":"Prompt","type":"string"},"safety_tolerance":{"default":"2","description":"Generated-image safety setting, ranging in tolerance from maximum permissiveness at 5 to maximum strictness at 1.","enum":["1","2","3","4","5","6"],"title":"Safety Tolerance","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Seed for reproducible images: an identical prompt and seed produce an identical image when the model version is unchanged.","title":"Seed"}},"required":["prompt","image_url"],"title":"FluxKontextInput","type":"object","x-doitong-order":["prompt","seed","guidance_scale","num_images","output_format","safety_tolerance","enhance_prompt","aspect_ratio","image_url"]},"FluxProKontextOutput":{"properties":{"has_nsfw_concepts":{"description":"Indicates whether NSFW concepts appear in the generated images.","items":{"type":"boolean"},"title":"Has Nsfw Concepts","type":"array"},"images":{"description":"File information for the generated images.","items":{"description":"Represents an image file.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the image in pixels.","examples":[1024],"title":"Height"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the image in pixels.","examples":[1024],"title":"Width"}},"required":["url"],"title":"Image","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height"]},"title":"Images","type":"array"},"prompt":{"description":"Prompt used during image generation.","title":"Prompt","type":"string"},"seed":{"description":"Image-generation seed, including the randomly chosen value if the input omitted a seed; otherwise, it repeats the supplied value.","title":"Seed","type":"integer"},"timings":{"additionalProperties":{"type":"number"},"title":"Timings","type":"object"}},"required":["images","timings","seed","has_nsfw_concepts","prompt"],"title":"FluxKontextOutput","type":"object","x-doitong-order":["images","timings","seed","has_nsfw_concepts","prompt"]},"NanoBanana2EditInput":{"properties":{"aspect_ratio":{"anyOf":[{"enum":["auto","21:9","16:9","3:2","4:3","5:4","1:1","4:5","3:4","2:3","9:16","4:1","1:4","8:1","1:8"],"type":"string"},{"type":"null"}],"default":"auto","description":"Output image aspect ratio, including the extreme options 4:1, 1:4, 8:1, 1:8.","title":"Aspect Ratio"},"audio_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Provide optional audio context through an http(s) or data URL pointing to a file no larger than 15 MB. The file is sent inline after downloading.","title":"Audio URL","x-doitong-alias":"audio"},"enable_web_search":{"default":false,"description":"Web search toggle for image generation, allowing the model to incorporate up-to-date information found online into the image.","title":"Enable Web Search","type":"boolean"},"image_urls":{"description":"Supply source images by URL for image editing or image-to-image generation, unless you provide at least one alternative input: `video_url`, `audio_url`, or `pdf_url`.","items":{"type":"string"},"title":"Image URLs","type":"array","x-doitong-alias":"images"},"limit_generations":{"default":true,"description":"Experimental generation cap that may affect quality when enabled. With `True`, each prompting round is restricted to 1 generation, overriding image-count instructions in the prompt and ignoring model-generated intermediate images.","title":"Limit Generations","type":"boolean"},"num_images":{"default":1,"description":"Image count requested for generation.","maximum":4,"minimum":1,"title":"Number of Images","type":"integer","x-doitong-alias":"num_outputs"},"output_format":{"default":"png","description":"File format for the resulting image.","enum":["jpeg","png","webp"],"title":"Output Format","type":"string"},"pdf_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Provide optional PDF context through an http(s) or data URL pointing to a document no larger than 15 MB. The document is sent inline after downloading.","title":"PDF URL"},"prompt":{"description":"Text instructions for editing an image.","examples":["make a photo of the man driving the car down the california coastline"],"maxLength":50000,"minLength":3,"title":"Prompt","type":"string"},"resolution":{"default":"1K","description":"Resolution for the output image.","enum":["0.5K","1K","2K","4K"],"title":"Resolution","type":"string"},"safety_tolerance":{"default":"4","description":"Set content-moderation tolerance between the least restrictive level, 6, and the strictest level, 1, which blocks most content.","enum":["1","2","3","4","5","6"],"title":"Safety Tolerance","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Seed value that initializes random-number generation.","title":"Seed"},"system_prompt":{"default":"","description":"Optional request-wide persona and output-style guidance, delivered to Gemini as a system instruction or to OpenAI-compatible providers as a system message. Nothing is sent for this instruction when the value is blank.","maxLength":50000,"title":"System Prompt","type":"string"},"thinking_level":{"anyOf":[{"enum":["minimal","high"],"type":"string"},{"type":"null"}],"description":"Select 'minimal' or 'high' to activate model thinking at that level and include its thoughts in the generation; leaving the level unset keeps thinking disabled.","title":"Thinking Level"},"video_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Optional video context supplied as either a YouTube URL or an http(s)/data URL for a video file. YouTube links reach the model directly without downloading; video files are downloaded and sent inline, subject to a 15 MB maximum.","title":"Video URL","x-doitong-alias":"video"}},"required":["prompt"],"title":"NanoBanana2ImageToImageInput","type":"object","x-doitong-order":["prompt","num_images","seed","aspect_ratio","output_format","safety_tolerance","image_urls","system_prompt","resolution","video_url","audio_url","pdf_url","limit_generations","enable_web_search","thinking_level"]},"NanoBanana2EditOutput":{"properties":{"description":{"description":"Description accompanying the generated images.","title":"Description","type":"string"},"images":{"description":"Images resulting from editing.","items":{"properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the image","title":"Height"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the image","title":"Width"}},"required":["url"],"title":"ImageFile","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height"]},"title":"Images","type":"array"}},"required":["images","description"],"title":"NanoBanana2ImageToImageOutput","type":"object","x-doitong-order":["images","description"]},"NanoBananaProEditInput":{"properties":{"aspect_ratio":{"anyOf":[{"enum":["auto","21:9","16:9","3:2","4:3","5:4","1:1","4:5","3:4","2:3","9:16"],"type":"string"},{"type":"null"}],"default":"auto","description":"Aspect ratio for the resulting image.","title":"Aspect Ratio"},"enable_web_search":{"default":false,"description":"Web search toggle for image generation, allowing the model to incorporate up-to-date information found online into the image.","title":"Enable Web Search","type":"boolean"},"image_urls":{"description":"URLs identifying source images for editing or image-to-image generation.","items":{"type":"string"},"title":"Image URLs","type":"array","x-doitong-alias":"images"},"limit_generations":{"default":true,"description":"Experimental generation cap: enabling `True` overrides any image-count directions in the prompt and restricts each prompting round to 1 generation.","title":"Limit Generations","type":"boolean"},"num_images":{"default":1,"description":"Image count requested for generation.","maximum":4,"minimum":1,"title":"Number of Images","type":"integer","x-doitong-alias":"num_outputs"},"output_format":{"default":"png","description":"File format for the resulting image.","enum":["jpeg","png","webp"],"title":"Output Format","type":"string"},"prompt":{"description":"Text instructions for editing an image.","examples":["make a photo of the man driving the car down the california coastline"],"maxLength":50000,"minLength":3,"title":"Prompt","type":"string"},"resolution":{"default":"1K","description":"Resolution for the output image.","enum":["1K","2K","4K"],"title":"Resolution","type":"string"},"safety_tolerance":{"default":"4","description":"Set content-moderation tolerance between the least restrictive level, 6, and the strictest level, 1, which blocks most content.","enum":["1","2","3","4","5","6"],"title":"Safety Tolerance","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Seed value that initializes random-number generation.","title":"Seed"},"system_prompt":{"default":"","description":"Optional request-wide persona and output-style guidance, delivered to Gemini as a system instruction or to OpenAI-compatible providers as a system message. Nothing is sent for this instruction when the value is blank.","maxLength":50000,"title":"System Prompt","type":"string"}},"required":["prompt","image_urls"],"title":"NanoBananaImageToImageInput","type":"object","x-doitong-order":["prompt","num_images","seed","aspect_ratio","output_format","safety_tolerance","image_urls","system_prompt","resolution","limit_generations","enable_web_search"]},"NanoBananaProEditOutput":{"properties":{"description":{"description":"Description accompanying the generated images.","title":"Description","type":"string"},"images":{"description":"Images resulting from editing.","items":{"properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the image","title":"Height"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the image","title":"Width"}},"required":["url"],"title":"ImageFile","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height"]},"title":"Images","type":"array"}},"required":["images","description"],"title":"NanoBananaImageToImageOutput","type":"object","x-doitong-order":["images","description"]},"AlibabaQwenImage3EditInput":{"description":"Input for Qwen Image 3 image editing with reference images.","properties":{"enable_prompt_expansion":{"default":true,"description":"Controls automatic prompt rewriting by an LLM to improve results.","title":"Enable Prompt Expansion","type":"boolean"},"image_size":{"anyOf":[{"properties":{"height":{"default":512,"description":"The height of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Height","type":"integer"},"width":{"default":512,"description":"The width of the generated image.","exclusiveMinimum":0,"maximum":14142,"title":"Width","type":"integer"}},"title":"ImageSize","type":"object","x-doitong-order":["width","height"]},{"enum":["square_hd","square","portrait_4_3","portrait_16_9","landscape_4_3","landscape_16_9"],"type":"string"},{"type":"null"}],"description":"Output image dimensions, constrained by a total pixel count from 512 × 512 to 2048 × 2048. Omitting the size lets the model choose a resolution automatically.","title":"Image Size"},"image_urls":{"description":"Supply 1–3 editing references in JPEG, JPG, PNG (without alpha), or WEBP format, with a maximum of 10MB per file and dimensions of 384–2048px on each axis. Refer to them in the prompt as 'image 1', 'image 2', and 'image 3', according to their supplied order.","items":{"type":"string"},"title":"Image Urls","type":"array","x-doitong-alias":"images"},"negative_prompt":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":"","description":"Content to exclude from the resulting image, limited to 500 characters.","examples":["low resolution, error, worst quality, low quality, deformed"],"title":"Negative Prompt"},"num_images":{"default":1,"description":"Image count requested for generation.","maximum":6,"minimum":1,"title":"Num Images","type":"integer","x-doitong-alias":"num_outputs"},"output_format":{"default":"png","description":"File format for the resulting image.","enum":["jpeg","png","webp"],"title":"Output Format","type":"string"},"prompt":{"description":"Text describing the edit to make, in Chinese or English, limited to 5000 characters.","examples":["Change the wolves into extremely realistic small puppies of different colors."],"maxLength":5000,"minLength":1,"title":"Prompt","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Random seed enabling reproducible results, ranging from 0 to 2147483647.","title":"Seed"}},"required":["prompt","image_urls"],"title":"QwenImage3EditInput","type":"object","x-doitong-order":["prompt","negative_prompt","image_size","enable_prompt_expansion","seed","num_images","output_format","image_urls"]},"AlibabaQwenImage3EditOutput":{"properties":{"images":{"description":"Images produced by generation.","items":{"properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]},"title":"Images","type":"array"},"seed":{"description":"Seed value applied during generation.","examples":[42],"title":"Seed","type":"integer"}},"required":["images","seed"],"title":"QwenImage3EditOutput","type":"object","x-doitong-order":["images","seed"]},"BlackforestlabsFlux3MaxTextToVideoInput":{"properties":{"aspect_ratio":{"default":"auto","description":"Generated video's aspect ratio, with `auto` matching the first image unless the input is a text prompt, for which it selects 16:9.","enum":["auto","21:9","2:1","16:9","4:3","1:1","3:4","9:16"],"title":"Aspect Ratio","type":"string"},"duration":{"default":5,"description":"Length of the output video, measured in seconds.","enum":[5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20],"title":"Duration","type":"integer"},"generate_audio":{"default":true,"description":"Controls whether the video includes generated audio.","title":"Generate Audio","type":"boolean"},"prompt":{"description":"Text description of the desired video.","examples":["A red panda walks along a mossy log in a sunlit forest, pausing to sniff the air before climbing over a fallen branch. Soft morning light filters through the canopy. Ambient birdsong and rustling leaves."],"minLength":1,"title":"Prompt","type":"string"},"reasoning_level":{"default":"high","description":"Reasoning effort controls the tradeoff between generation speed and the work the harness devotes to understanding the prompt: more effort takes longer.","enum":["low","high"],"title":"Reasoning Level","type":"string"},"resolution":{"default":"720p","description":"Resolution for the output video.","enum":["720p","1080p"],"title":"Resolution","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Generation seed; a random value is used if omitted.","title":"Seed"}},"required":["prompt"],"title":"AlligatorTextToVideoInput","type":"object","x-doitong-order":["prompt","duration","resolution","reasoning_level","aspect_ratio","generate_audio","seed"]},"BlackforestlabsFlux3MaxTextToVideoOutput":{"properties":{"seed":{"description":"Seed value used during generation.","title":"Seed","type":"integer"},"timings":{"additionalProperties":{"type":"number"},"description":"Timing data with prompt expansion, decoding, and upload omitted from `inference`, which measures only the model's video denoising in seconds.","title":"Timings","type":"object"},"video":{"description":"Video produced by the model.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The duration of the video","title":"Duration"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"fps":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The FPS of the video","title":"Fps"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the video","title":"Height"},"num_frames":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The number of frames in the video","title":"Num Frames"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the video","title":"Width"}},"required":["url"],"title":"VideoFile","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height","fps","duration","num_frames"]}},"required":["video","seed"],"title":"AlligatorTextToVideoOutput","type":"object","x-doitong-order":["video","seed","timings"]},"XaiGrokImagineVideoV15TextToVideoInput":{"properties":{"aspect_ratio":{"default":"16:9","description":"Aspect ratio for the resulting video.","enum":["16:9","4:3","3:2","1:1","2:3","3:4","9:16"],"title":"Aspect Ratio","type":"string"},"duration":{"default":6,"description":"Video length measured in seconds.","maximum":15,"minimum":1,"title":"Duration","type":"integer"},"prompt":{"description":"Description specifying what video to create.","examples":["Anime schoolgirl bursting out of house door, cherry blossoms blowing, morning light, speed lines indicating rush, chibi-ready expressions, classic shojo aesthetic, vibrant colors"],"maxLength":4096,"title":"Prompt","type":"string"},"resolution":{"default":"720p","description":"Output video's resolution.","enum":["480p","720p","1080p"],"title":"Resolution","type":"string"}},"required":["prompt"],"title":"XAITextToVideoV15Input","type":"object","x-doitong-order":["prompt","duration","resolution","aspect_ratio"]},"XaiGrokImagineVideoV15TextToVideoOutput":{"properties":{"video":{"description":"Video produced by the model.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The duration of the video","title":"Duration"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"fps":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The FPS of the video","title":"Fps"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the video","title":"Height"},"num_frames":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The number of frames in the video","title":"Num Frames"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the video","title":"Width"}},"required":["url"],"title":"VideoFile","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height","fps","duration","num_frames"]}},"required":["video"],"title":"XAITextToVideoOutput","type":"object","x-doitong-order":["video"]},"KlingVideoV3ProTextToVideoInput":{"properties":{"aspect_ratio":{"default":"16:9","description":"Width-to-height ratio for frames in the output video.","enum":["16:9","9:16","1:1"],"title":"Aspect Ratio","type":"string"},"cfg_scale":{"default":0.5,"description":"Set how closely generation follows your prompt using CFG, short for Classifier Free Guidance.","maximum":1,"minimum":0,"title":"Cfg Scale","type":"number"},"duration":{"default":"5","description":"Output video length, measured in seconds.","enum":["3","4","5","6","7","8","9","10","11","12","13","14","15"],"title":"Duration","type":"string"},"generate_audio":{"default":true,"description":"Native video audio generation toggle, supporting voices in Chinese or English and automatically translating any other language into English. For English speech, write acronyms and proper nouns in uppercase and everything else in lowercase.","title":"Generate Audio","type":"boolean"},"multi_prompt":{"anyOf":[{"items":{"properties":{"duration":{"default":"5","description":"Length of the current shot, measured in seconds.","enum":["1","2","3","4","5","6","7","8","9","10","11","12","13","14","15"],"title":"Duration","type":"string"},"prompt":{"description":"Text instructions for the current shot.","title":"Prompt","type":"string"}},"required":["prompt"],"title":"KlingV3MultiPromptElement","type":"object","x-doitong-order":["prompt","duration"]},"type":"array"},{"type":"null"}],"description":"Per-shot prompts and durations that, when supplied, replace the single prompt to create a video divided into multiple shots.","examples":[null],"title":"Multi Prompt"},"negative_prompt":{"default":"blur, distort, and low quality","maxLength":2500,"title":"Negative Prompt","type":"string"},"prompt":{"anyOf":[{"maxLength":2500,"type":"string"},{"type":"null"}],"description":"Text instructions used to generate the video. Supply exactly one of prompt or multi_prompt.","examples":["Close-up of glowing fireflies dancing in a dark forest at twilight. Soft bioluminescent particles float through the air. Shallow depth of field, bokeh lights in background. Magical atmosphere, gentle movement."],"title":"Prompt"},"shot_type":{"default":"customize","description":"Choose how multi-shot generation plans its shots; selecting 'intelligent' delegates the shot structure to the model.","enum":["customize","intelligent"],"title":"Shot Type","type":"string"}},"title":"TextToVideoV3ProRequest","type":"object","x-doitong-order":["prompt","duration","multi_prompt","generate_audio","shot_type","aspect_ratio","negative_prompt","cfg_scale"]},"KlingVideoV3ProTextToVideoOutput":{"properties":{"video":{"description":"Video produced by the model.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video"],"title":"TextToVideoV3ProOutput","type":"object","x-doitong-order":["video"]},"LightricksLtx25TextToVideoProInput":{"properties":{"aspect_ratio":{"default":"16:9","description":"Aspect ratio for the output video.","enum":["16:9","9:16"],"title":"Aspect Ratio","type":"string"},"camera_motion":{"anyOf":[{"enum":["dolly_in","dolly_out","dolly_left","dolly_right","jib_up","jib_down","static","focus_shift"],"type":"string"},{"type":"null"}],"description":"Optional camera movement for the output video.","title":"Camera Motion"},"duration":{"default":"auto","description":"Video length selection: specify a duration in seconds or choose 'auto' for the model to decide. The maximum duration is 10 seconds.","enum":[6,8,10,"auto"],"title":"Duration"},"fps":{"default":25,"description":"Output video frame rate, measured in frames per second.","enum":[24,25,50],"title":"Frames per Second","type":"integer"},"generate_audio":{"default":true,"description":"Audio generation toggle for the output video.","title":"Generate Audio","type":"boolean"},"prompt":{"description":"Prompt guiding video generation.","examples":["Through-the-veil shot of a bride's face during an Indian wedding ceremony, camera positioned behind the sheer red dupatta fabric, the embroidered pattern creating a textured overlay on her face, her eyes lined with kohl looking down at henna-covered hands, marigold garlands in soft background bokeh, 85mm f/1.2 focused through the fabric layer, warm tungsten and candlelight, Mira Nair Monsoon Wedding intimacy"],"maxLength":5000,"minLength":1,"title":"Prompt","type":"string"},"resolution":{"default":"1080p","description":"Resolution used for the output video.","enum":["720p","1080p"],"title":"Resolution","type":"string"}},"required":["prompt"],"title":"LTXV25TextToVideoRequest","type":"object","x-doitong-order":["prompt","duration","resolution","aspect_ratio","fps","generate_audio","camera_motion"]},"LightricksLtx25TextToVideoProOutput":{"properties":{"video":{"description":"Resulting video file.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The duration of the video","title":"Duration"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"fps":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The FPS of the video","title":"Fps"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the video","title":"Height"},"num_frames":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The number of frames in the video","title":"Num Frames"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the video","title":"Width"}},"required":["url"],"title":"VideoFile","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height","fps","duration","num_frames"]}},"required":["video"],"title":"LTXV23TextToVideoResponse","type":"object","x-doitong-order":["video"]},"MinimaxH3TextToVideoInput":{"properties":{"aspect_ratio":{"default":"16:9","description":"Aspect ratio for the output video.","enum":["21:9","16:9","4:3","1:1","3:4","9:16"],"title":"Aspect Ratio","type":"string"},"duration":{"default":5,"description":"Video length, measured in seconds.","maximum":15,"minimum":5,"title":"Duration","type":"integer"},"prompt":{"description":"Text instructions for generating the video.","examples":["A white kitten chases a butterfly across a sunlit garden. Gentle camera tracking, natural movement, soft afternoon light filtering through the leaves."],"maxLength":50000,"minLength":1,"title":"Prompt","type":"string"},"prompt_expansion_mode":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"balanced","description":"Prompt-rewriting effort before generation: choose 'quality' for a richer prompt taking up to approximately 30 seconds, or 'fast' for a result in about a second. With 'balanced', the choice is made per request; 'disabled' turns expansion off.","examples":["disabled","fast","balanced","quality"],"title":"Prompt Expansion Mode"},"resolution":{"default":"2K","description":"Choose the generated video's resolution, with 2K and 4K obtained by upscaling a 768P base. Choosing 480P or 768P instead uses native generation.","enum":["480P","768P","2K","4K"],"title":"Resolution","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Seed for random generation; if omitted, one is chosen randomly.","title":"Seed"},"target_audio_url":{"anyOf":[{"minLength":1,"pattern":"\\S","type":"string"},{"type":"null"}],"description":"Optional replacement soundtrack supplied through an HTTP(S) URL or base64 data URI; the clip must last at least 2 seconds and be no larger than 15 MB. The supplied audio replaces the generated soundtrack at unchanged playback speed: excess duration is removed from the end, and shorter clips receive silence padding to match the video. Resampling to 96 kHz may occur for unusually high sample rates.","title":"Target Audio Url"}},"required":["prompt"],"title":"TextToVideoHailuo03Input","type":"object","x-doitong-order":["prompt","duration","resolution","seed","prompt_expansion_mode","target_audio_url","aspect_ratio"]},"MinimaxH3TextToVideoOutput":{"properties":{"expanded_prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Model-ready expanded prompt, or null if no expanded text is available. The null cases are disabled expansion, expansion that made no change, and expansion handled internally by the model's hosted API.","title":"Expanded Prompt"},"video":{"description":"Video produced by the model.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video"],"title":"TextToVideoHailuo03Output","type":"object","x-doitong-order":["video","expanded_prompt"]},"BytedanceSeedance20FastTextToVideoInput":{"properties":{"aspect_ratio":{"default":"auto","description":"Output aspect ratio: 16:9 gives landscape, 9:16 gives portrait/vertical, 1:1 gives square, and 21:9 gives cinematic ultrawide. Select `auto` for the model to choose the ratio.","enum":["auto","21:9","16:9","4:3","1:1","3:4","9:16"],"title":"Aspect Ratio","type":"string"},"bitrate_mode":{"default":"standard","description":"Choose the output encoding bitrate: 'standard' retains the default, whereas 'high' asks the model to improve encoding quality at the expense of a larger file.","enum":["standard","high"],"examples":["standard"],"title":"Bitrate Mode","type":"string"},"codec":{"default":"auto","description":"Video codec selection: `auto` leaves the default codec behavior unchanged, `H264` selects H.264, and `H265` selects H.265.","enum":["auto","H264","H265"],"examples":["auto","H264","H265"],"title":"Codec","type":"string"},"duration":{"default":"auto","description":"Video length selection: `auto` delegates the choice to the model using the prompt, while an explicit duration must be from 4 to 15 seconds.","enum":["auto","4","5","6","7","8","9","10","11","12","13","14","15"],"title":"Duration","type":"string"},"generate_audio":{"default":true,"description":"Enable this to accompany the video with synchronized audio. Generated audio includes speech matched to lip movements, environmental ambience, and sound effects.","title":"Generate Audio","type":"boolean"},"prompt":{"description":"Text prompt that guides video generation.","examples":["An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea."],"title":"Prompt","type":"string"},"resolution":{"default":"720p","description":"Output resolution: 480p favors generation speed, while 720p offers a balanced choice.","enum":["480p","720p"],"title":"Resolution","type":"string"}},"required":["prompt"],"title":"Seedance2T2VFastInput","type":"object","x-doitong-order":["prompt","resolution","duration","aspect_ratio","generate_audio","bitrate_mode","codec"]},"BytedanceSeedance20FastTextToVideoOutput":{"properties":{"seed":{"description":"Seed value applied during generation.","examples":[42],"title":"Seed","type":"integer"},"video":{"description":"Video file produced by generation.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video","seed"],"title":"Seedance2VideoOutput","type":"object","x-doitong-order":["video","seed"]},"BytedanceSeedance20TextToVideoInput":{"properties":{"aspect_ratio":{"default":"auto","description":"Output aspect ratio: 16:9 gives landscape, 9:16 gives portrait/vertical, 1:1 gives square, and 21:9 gives cinematic ultrawide. Select `auto` for the model to choose the ratio.","enum":["auto","21:9","16:9","4:3","1:1","3:4","9:16"],"title":"Aspect Ratio","type":"string"},"bitrate_mode":{"default":"standard","description":"Choose the output encoding bitrate: 'standard' retains the default, whereas 'high' asks the model to improve encoding quality at the expense of a larger file.","enum":["standard","high"],"examples":["standard"],"title":"Bitrate Mode","type":"string"},"codec":{"default":"auto","description":"Video codec selection: `auto` leaves the default codec behavior unchanged, `H264` selects H.264, and `H265` selects H.265.","enum":["auto","H264","H265"],"examples":["auto","H264","H265"],"title":"Codec","type":"string"},"duration":{"default":"auto","description":"Video length selection: `auto` delegates the choice to the model using the prompt, while an explicit duration must be from 4 to 15 seconds.","enum":["auto","4","5","6","7","8","9","10","11","12","13","14","15"],"title":"Duration","type":"string"},"generate_audio":{"default":true,"description":"Enable this to accompany the video with synchronized audio. Generated audio includes speech matched to lip movements, environmental ambience, and sound effects.","title":"Generate Audio","type":"boolean"},"prompt":{"description":"Text prompt that guides video generation.","examples":["An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea."],"title":"Prompt","type":"string"},"resolution":{"default":"720p","description":"Output resolution: 480p prioritizes speed, 720p offers balance, 1080p delivers high quality, and 4k provides the highest quality.","enum":["480p","720p","1080p","4k"],"title":"Resolution","type":"string"}},"required":["prompt"],"title":"Seedance2T2VInput","type":"object","x-doitong-order":["prompt","resolution","duration","aspect_ratio","generate_audio","bitrate_mode","codec"]},"BytedanceSeedance20TextToVideoOutput":{"properties":{"seed":{"description":"Seed value applied during generation.","examples":[42],"title":"Seed","type":"integer"},"video":{"description":"Video file produced by generation.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video","seed"],"title":"Seedance2VideoOutput","type":"object","x-doitong-order":["video","seed"]},"Veo31Input":{"properties":{"aspect_ratio":{"default":"16:9","description":"Width-to-height ratio for the generated video.","enum":["16:9","9:16"],"title":"Aspect Ratio","type":"string"},"auto_fix":{"default":true,"description":"Automatic rewriting of prompts to try to resolve failures in content-policy checks or other validation.","title":"Auto Fix","type":"boolean"},"duration":{"default":"8s","description":"Length of the output video.","enum":["4s","6s","8s"],"title":"Duration","type":"string"},"generate_audio":{"default":true,"description":"Controls whether the video includes generated audio.","title":"Generate Audio","type":"boolean"},"negative_prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Negative prompt used to steer video generation.","title":"Negative Prompt"},"prompt":{"description":"Text description of the desired video for generation.","maxLength":20000,"title":"Prompt","type":"string"},"resolution":{"default":"720p","description":"Resolution used for the output video.","enum":["720p","1080p","4k"],"title":"Resolution","type":"string"},"safety_tolerance":{"default":"4","description":"Set content-moderation tolerance between the least restrictive level, 6, and the strictest level, 1, which blocks most content.","enum":["1","2","3","4","5","6"],"title":"Safety Tolerance","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Seed value that initializes random-number generation.","title":"Seed"}},"required":["prompt"],"title":"Veo31TextToVideoInput","type":"object","x-doitong-order":["prompt","aspect_ratio","duration","negative_prompt","resolution","generate_audio","seed","auto_fix","safety_tolerance"]},"Veo31Output":{"properties":{"video":{"description":"Video produced by the model.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video"],"title":"Veo31TextToVideoOutput","type":"object","x-doitong-order":["video"]},"Veo31FastInput":{"properties":{"aspect_ratio":{"default":"16:9","description":"Width-to-height ratio for the generated video.","enum":["16:9","9:16"],"title":"Aspect Ratio","type":"string"},"auto_fix":{"default":true,"description":"Automatic rewriting of prompts to try to resolve failures in content-policy checks or other validation.","title":"Auto Fix","type":"boolean"},"duration":{"default":"8s","description":"Length of the output video.","enum":["4s","6s","8s"],"title":"Duration","type":"string"},"generate_audio":{"default":true,"description":"Controls whether the video includes generated audio.","title":"Generate Audio","type":"boolean"},"negative_prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Negative prompt used to steer video generation.","title":"Negative Prompt"},"prompt":{"description":"Text description of the desired video for generation.","maxLength":20000,"title":"Prompt","type":"string"},"resolution":{"default":"720p","description":"Resolution used for the output video.","enum":["720p","1080p","4k"],"title":"Resolution","type":"string"},"safety_tolerance":{"default":"4","description":"Set content-moderation tolerance between the least restrictive level, 6, and the strictest level, 1, which blocks most content.","enum":["1","2","3","4","5","6"],"title":"Safety Tolerance","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Seed value that initializes random-number generation.","title":"Seed"}},"required":["prompt"],"title":"Veo31TextToVideoInput","type":"object","x-doitong-order":["prompt","aspect_ratio","duration","negative_prompt","resolution","generate_audio","seed","auto_fix","safety_tolerance"]},"Veo31FastOutput":{"properties":{"video":{"description":"Video produced by the model.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video"],"title":"Veo31TextToVideoOutput","type":"object","x-doitong-order":["video"]},"AlibabaWan30TextToVideoInput":{"properties":{"aspect_ratio":{"default":"adaptive","description":"Aspect ratio for the output, with adaptive selection available.","enum":["adaptive","16:9","4:3","1:1","3:4","9:16"],"title":"Aspect Ratio","type":"string"},"audio":{"default":true,"description":"Controls whether generated audio is included.","title":"Audio","type":"boolean","x-doitong-alias":"generate_audio"},"duration":{"anyOf":[{"maximum":30,"minimum":2,"type":"integer"},{"type":"null"}],"default":5,"description":"Output length: null enables smart duration based on the prompt and reference media; otherwise, the supplied value specifies seconds.","title":"Duration"},"enable_prompt_expansion":{"default":true,"description":"Control whether the prompt is intelligently rewritten before generation. Expect a likely quality reduction if you disable rewriting, in exchange for roughly 20–60 seconds less latency.","title":"Enable Prompt Expansion","type":"boolean"},"enable_thinking":{"default":false,"description":"Enables additional reasoning before generation begins.","title":"Enable Thinking","type":"boolean"},"prompt":{"description":"Text instructions describing the video to generate.","examples":["A red panda walking through a bamboo forest at sunrise"],"maxLength":20000,"minLength":1,"title":"Prompt","type":"string"},"resolution":{"default":"1080p","description":"Resolution tier for the resulting video.","enum":["480p","720p","1080p"],"title":"Resolution","type":"string"},"seed":{"anyOf":[{"maximum":2147483647,"minimum":0,"type":"integer"},{"type":"null"}],"title":"Seed"}},"required":["prompt"],"title":"Wan30TextToVideoInput","type":"object","x-doitong-order":["prompt","resolution","aspect_ratio","duration","audio","enable_prompt_expansion","enable_thinking","seed"]},"AlibabaWan30TextToVideoOutput":{"properties":{"actual_prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actual Prompt"},"duration":{"description":"Length of the generated video, measured in seconds.","title":"Duration","type":"number"},"seed":{"description":"Seed value applied during generation.","title":"Seed","type":"integer"},"video":{"description":"Video file produced by generation.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The duration of the video","title":"Duration"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"fps":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The FPS of the video","title":"Fps"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the video","title":"Height"},"num_frames":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The number of frames in the video","title":"Num Frames"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the video","title":"Width"}},"required":["url"],"title":"VideoFile","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height","fps","duration","num_frames"]}},"required":["video","seed","duration"],"title":"Wan30Output","type":"object","x-doitong-order":["video","seed","duration","actual_prompt"]},"BlackforestlabsFlux3MaxImageToVideoInput":{"properties":{"aspect_ratio":{"default":"auto","description":"Generated video's aspect ratio, with `auto` matching the first image unless the input is a text prompt, for which it selects 16:9.","enum":["auto","21:9","2:1","16:9","4:3","1:1","3:4","9:16"],"title":"Aspect Ratio","type":"string"},"duration":{"default":5,"description":"Length of the output video, measured in seconds.","enum":[5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20],"title":"Duration","type":"integer"},"end_image_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Optional final-frame image URL for the video; accepts PNG, JPEG, or WebP.","title":"End Image URL","x-doitong-alias":"end_image"},"generate_audio":{"default":true,"description":"Controls whether the video includes generated audio.","title":"Generate Audio","type":"boolean"},"image_url":{"description":"Starting-image URL for the video; accepts PNG, JPEG, or WebP.","title":"Image URL","type":"string","x-doitong-alias":"image"},"prompt":{"description":"Text describing how the video should develop from the starting image.","examples":["The monkey leans into his microphone and says, \"Welcome back to the show!\" The polar bear laughs and nods along, tapping the desk. Jungle birdsong on the left, a cold wind on the right."],"minLength":1,"title":"Prompt","type":"string"},"reasoning_level":{"default":"high","description":"Reasoning effort controls the tradeoff between generation speed and the work the harness devotes to understanding the prompt: more effort takes longer.","enum":["low","high"],"title":"Reasoning Level","type":"string"},"resolution":{"default":"720p","description":"Resolution for the output video.","enum":["720p","1080p"],"title":"Resolution","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Generation seed; a random value is used if omitted.","title":"Seed"}},"required":["prompt","image_url"],"title":"AlligatorImageToVideoInput","type":"object","x-doitong-order":["prompt","image_url","end_image_url","duration","resolution","reasoning_level","aspect_ratio","generate_audio","seed"]},"BlackforestlabsFlux3MaxImageToVideoOutput":{"properties":{"seed":{"description":"Seed value used during generation.","title":"Seed","type":"integer"},"timings":{"additionalProperties":{"type":"number"},"description":"Timing data with prompt expansion, decoding, and upload omitted from `inference`, which measures only the model's video denoising in seconds.","title":"Timings","type":"object"},"video":{"description":"Video produced by the model.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The duration of the video","title":"Duration"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"fps":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The FPS of the video","title":"Fps"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the video","title":"Height"},"num_frames":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The number of frames in the video","title":"Num Frames"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the video","title":"Width"}},"required":["url"],"title":"VideoFile","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height","fps","duration","num_frames"]}},"required":["video","seed"],"title":"AlligatorImageToVideoOutput","type":"object","x-doitong-order":["video","seed","timings"]},"XaiGrokImagineVideoV15ImageToVideoInput":{"description":"``grok-imagine-video-1.5`` image-to-video (no ``aspect_ratio``).\n\nWidens ``resolution`` to add the 1080p tier supported by the 1.5 model\n(the standard model remains 480p/720p only).","properties":{"duration":{"default":6,"description":"Video length measured in seconds.","maximum":15,"minimum":1,"title":"Duration","type":"integer"},"image_url":{"description":"Image URL used as input to generate the video.","title":"Image URL","type":"string","x-doitong-alias":"image"},"prompt":{"description":"Description in text of the video's intended changes or motion.","examples":["Medieval knight in ornate armor walking through a mystical forest, bioluminescent plants pulsing with light, ancient stone ruins overgrown with glowing vines, over-the-shoulder camera, dark fantasy aesthetic, volumetric fog and Lumen lighting"],"maxLength":4096,"title":"Prompt","type":"string"},"resolution":{"default":"720p","description":"Output video's resolution.","enum":["480p","720p","1080p"],"title":"Resolution","type":"string"}},"required":["prompt","image_url"],"title":"XAIImageToVideoV15Input","type":"object","x-doitong-order":["prompt","duration","resolution","image_url"]},"XaiGrokImagineVideoV15ImageToVideoOutput":{"properties":{"video":{"description":"Video produced by the model.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The duration of the video","title":"Duration"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"fps":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The FPS of the video","title":"Fps"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the video","title":"Height"},"num_frames":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The number of frames in the video","title":"Num Frames"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the video","title":"Width"}},"required":["url"],"title":"VideoFile","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height","fps","duration","num_frames"]}},"required":["video"],"title":"XAIImageToVideoOutput","type":"object","x-doitong-order":["video"]},"KlingVideoV3ProImageToVideoInput":{"properties":{"cfg_scale":{"default":0.5,"description":"Set how closely generation follows your prompt using CFG, short for Classifier Free Guidance.","maximum":1,"minimum":0,"title":"Cfg Scale","type":"number"},"duration":{"default":"5","description":"Output video length, measured in seconds.","enum":["3","4","5","6","7","8","9","10","11","12","13","14","15"],"examples":["12"],"title":"Duration","type":"string"},"elements":{"anyOf":[{"items":{"properties":{"frontal_image_url":{"anyOf":[{"type":"string","ui":{"field":"image"},"x-doitong-limits":{"max_aspect_ratio":2.5,"max_file_size":52428800,"min_aspect_ratio":0.4,"min_height":300,"min_width":300,"timeout":20}},{"type":"null"}],"description":"Front-facing image showing the element's main view. File size must not exceed 50 MB; width and height must each be at least 300px, with an aspect ratio between 0.40 and 2.50.","title":"Frontal Image Url"},"reference_image_urls":{"anyOf":[{"items":{"x-doitong-file":"image","type":"string","ui":{"field":"image"},"x-doitong-limits":{"max_aspect_ratio":2.5,"max_file_size":52428800,"min_aspect_ratio":0.4,"min_height":300,"min_width":300,"timeout":20}},"type":"array"},{"type":"null"}],"description":"Supply 1–3 additional reference images showing different angles. Each image must have an aspect ratio between 0.40 and 2.50, measure at least 300px in both dimensions, and be no larger than 50.0MB.","title":"Reference Image Urls"},"video_url":{"anyOf":[{"type":"string","ui":{"field":"video"},"x-doitong-limits":{"max_duration":10.05,"max_file_size":209715200,"max_fps":60,"max_height":2160,"max_width":2160,"min_duration":3,"min_fps":24,"min_height":720,"min_width":720,"timeout":30}},{"type":"null"}],"description":"URL pointing to an element's video; only one element per request may include a video. The file must be at most 200 MB, with width and height each between 720px and 2160px. Duration must fall between 3 seconds and 10.05 seconds, and FPS between 24.0 and 60.0.","title":"Video Url"},"voice_id":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Voice ID assigned to the element. References to that element use its assigned voice.","title":"Voice Id"}},"title":"KlingV3ComboElementInput","type":"object","x-doitong-order":["frontal_image_url","reference_image_urls","video_url","voice_id"]},"type":"array"},{"type":"null"}],"description":"Characters or objects included as video elements, addressed in the prompt using @Element1, @Element2, etc. For each example, provide either a video or a set containing a frontal image plus reference images.","title":"Elements"},"end_image_url":{"anyOf":[{"type":"string","ui":{"field":"image"},"x-doitong-limits":{"max_aspect_ratio":2.5,"max_file_size":52428800,"min_aspect_ratio":0.4,"min_height":300,"min_width":300,"timeout":20}},{"type":"null"}],"description":"URL pointing to the image used at the video's end. File size must not exceed 50 MB; width and height must each be at least 300px, with an aspect ratio between 0.40 and 2.50.","title":"End Image Url","x-doitong-alias":"end_image"},"generate_audio":{"default":true,"description":"Native video audio generation toggle, supporting voices in Chinese or English and automatically translating any other language into English. For English speech, write acronyms and proper nouns in uppercase and everything else in lowercase.","title":"Generate Audio","type":"boolean"},"multi_prompt":{"anyOf":[{"items":{"properties":{"duration":{"default":"5","description":"Length of the current shot, measured in seconds.","enum":["1","2","3","4","5","6","7","8","9","10","11","12","13","14","15"],"title":"Duration","type":"string"},"prompt":{"description":"Text instructions for the current shot.","title":"Prompt","type":"string"}},"required":["prompt"],"title":"KlingV3MultiPromptElement","type":"object","x-doitong-order":["prompt","duration"]},"type":"array"},{"type":"null"}],"description":"Prompt list that splits the video into multiple shots when supplied.","examples":[null],"title":"Multi Prompt"},"negative_prompt":{"default":"blur, distort, and low quality","maxLength":2500,"title":"Negative Prompt","type":"string"},"prompt":{"anyOf":[{"maxLength":2500,"type":"string"},{"type":"null"}],"description":"Text instructions used to generate the video. Supply exactly one of prompt or multi_prompt.","examples":["The craftsman slowly examines the bowl, turning it gently in his weathered hands. His eyes reflect years of wisdom. Subtle smile forms on his face. Dust particles drift in warm light. Breathing motion, blinking eyes."],"title":"Prompt"},"shot_type":{"default":"customize","description":"Choose how multi-shot generation plans its shots; selecting 'intelligent' delegates the shot structure to the model.","enum":["customize","intelligent"],"title":"Shot Type","type":"string"},"start_image_url":{"description":"URL pointing to the image used for video generation. File size must not exceed 50 MB; width and height must each be at least 300px, with an aspect ratio between 0.40 and 2.50.","title":"Start Image Url","type":"string","x-doitong-limits":{"max_aspect_ratio":2.5,"max_file_size":52428800,"min_aspect_ratio":0.4,"min_height":300,"min_width":300,"timeout":20},"x-doitong-alias":"image"}},"required":["start_image_url"],"title":"ImageToVideoV3ProRequest","type":"object","x-doitong-order":["prompt","multi_prompt","start_image_url","duration","generate_audio","end_image_url","elements","shot_type","negative_prompt","cfg_scale"]},"KlingVideoV3ProImageToVideoOutput":{"properties":{"video":{"description":"Video produced by the model.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video"],"title":"ImageToVideoV3ProOutput","type":"object","x-doitong-order":["video"]},"LightricksLtx25ImageToVideoProInput":{"properties":{"aspect_ratio":{"default":"auto","description":"Video aspect ratio, with an image-derived setting available through 'auto'.","enum":["auto","16:9","9:16"],"title":"Aspect Ratio","type":"string"},"camera_motion":{"anyOf":[{"enum":["dolly_in","dolly_out","dolly_left","dolly_right","jib_up","jib_down","static","focus_shift"],"type":"string"},{"type":"null"}],"description":"Optional camera movement for the output video.","title":"Camera Motion"},"duration":{"default":"auto","description":"Video length selection: specify a duration in seconds or choose 'auto' for the model to decide. The maximum duration is 10 seconds.","enum":[6,8,10,"auto"],"title":"Duration"},"end_image_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Optional transition target, supplied as an image URL. Including it makes the generated video transition from the start frame to this final image.","title":"End Image URL","x-doitong-alias":"end_image"},"fps":{"default":25,"description":"Output video frame rate, measured in frames per second.","enum":[24,25,50],"title":"Frames per Second","type":"integer"},"generate_audio":{"default":true,"description":"Audio generation toggle for the output video.","title":"Generate Audio","type":"boolean"},"image_url":{"description":"URL pointing to the image that begins the output video.","title":"Start Image URL","type":"string","x-doitong-alias":"image"},"prompt":{"description":"Prompt guiding video generation.","examples":["Periscope-level shot from behind tall grass of two Maasai warriors mid-leap during an adumu jumping dance, bodies fully airborne against a golden savanna sunset, red shuka robes frozen in motion, dust kicked up from the earth catching backlight, 85mm f/1.4 isolating the pair from a blurred circle of onlookers, Steve McCurry meets Emmanuel Lubezki"],"maxLength":5000,"minLength":1,"title":"Prompt","type":"string"},"resolution":{"default":"1080p","description":"Resolution used for the output video.","enum":["720p","1080p"],"title":"Resolution","type":"string"}},"required":["prompt","image_url"],"title":"LTXV25ImageToVideoRequest","type":"object","x-doitong-order":["image_url","end_image_url","prompt","duration","resolution","aspect_ratio","fps","generate_audio","camera_motion"]},"LightricksLtx25ImageToVideoProOutput":{"properties":{"video":{"description":"Resulting video file.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The duration of the video","title":"Duration"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"fps":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The FPS of the video","title":"Fps"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the video","title":"Height"},"num_frames":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The number of frames in the video","title":"Num Frames"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the video","title":"Width"}},"required":["url"],"title":"VideoFile","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height","fps","duration","num_frames"]}},"required":["video"],"title":"LTXV23ImageToVideoResponse","type":"object","x-doitong-order":["video"]},"MinimaxH3ImageToVideoInput":{"properties":{"duration":{"default":5,"description":"Video length, measured in seconds.","maximum":15,"minimum":5,"title":"Duration","type":"integer"},"end_image_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Optional last-frame image URL, usable even without a starting image. In that end-only keyframe mode, this image determines the output canvas.","title":"End Image URL","x-doitong-alias":"end_image"},"image_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Optional image URL defining the opening frame and output canvas. If end_image_url alone is supplied, its closing frame determines the canvas instead. Without either image, generation uses text-to-video with a default aspect ratio of 16:9.","title":"Image URL","x-doitong-alias":"image"},"prompt":{"description":"Text instructions for generating the video.","examples":["The camera slowly pulls back from the scene, revealing the full landscape as clouds drift overhead and light shifts across the terrain."],"maxLength":50000,"minLength":1,"title":"Prompt","type":"string"},"prompt_expansion_mode":{"anyOf":[{"type":"string"},{"type":"null"}],"default":"balanced","description":"Prompt-rewriting effort before generation: choose 'quality' for a richer prompt taking up to approximately 30 seconds, or 'fast' for a result in about a second. With 'balanced', the choice is made per request; 'disabled' turns expansion off.","examples":["disabled","fast","balanced","quality"],"title":"Prompt Expansion Mode"},"resolution":{"default":"2K","description":"Choose the generated video's resolution, with 2K and 4K obtained by upscaling a 768P base. Choosing 480P or 768P instead uses native generation.","enum":["480P","768P","2K","4K"],"title":"Resolution","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Seed for random generation; if omitted, one is chosen randomly.","title":"Seed"},"target_audio_url":{"anyOf":[{"minLength":1,"pattern":"\\S","type":"string"},{"type":"null"}],"description":"Optional replacement soundtrack supplied through an HTTP(S) URL or base64 data URI; the clip must last at least 2 seconds and be no larger than 15 MB. The supplied audio replaces the generated soundtrack at unchanged playback speed: excess duration is removed from the end, and shorter clips receive silence padding to match the video. Resampling to 96 kHz may occur for unusually high sample rates.","title":"Target Audio Url"}},"required":["prompt"],"title":"ImageToVideoHailuo03Input","type":"object","x-doitong-order":["prompt","duration","resolution","seed","prompt_expansion_mode","target_audio_url","image_url","end_image_url"]},"MinimaxH3ImageToVideoOutput":{"properties":{"expanded_prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Model-ready expanded prompt, or null if no expanded text is available. The null cases are disabled expansion, expansion that made no change, and expansion handled internally by the model's hosted API.","title":"Expanded Prompt"},"video":{"description":"Video produced by the model.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video"],"title":"ImageToVideoHailuo03Output","type":"object","x-doitong-order":["video","expanded_prompt"]},"BytedanceSeedance20FastImageToVideoInput":{"properties":{"aspect_ratio":{"default":"auto","description":"Output aspect ratio: 16:9 gives landscape, 9:16 gives portrait/vertical, 1:1 gives square, and 21:9 gives cinematic ultrawide. Select `auto` to derive the ratio from the input image.","enum":["auto","21:9","16:9","4:3","1:1","3:4","9:16"],"title":"Aspect Ratio","type":"string"},"bitrate_mode":{"default":"standard","description":"Choose the output encoding bitrate: 'standard' retains the default, whereas 'high' asks the model to improve encoding quality at the expense of a larger file.","enum":["standard","high"],"examples":["standard"],"title":"Bitrate Mode","type":"string"},"codec":{"default":"auto","description":"Video codec selection: `auto` leaves the default codec behavior unchanged, `H264` selects H.264, and `H265` selects H.265.","enum":["auto","H264","H265"],"examples":["auto","H264","H265"],"title":"Codec","type":"string"},"duration":{"default":"auto","description":"Video length selection: `auto` delegates the choice to the model using the prompt, while an explicit duration must be from 4 to 15 seconds.","enum":["auto","4","5","6","7","8","9","10","11","12","13","14","15"],"title":"Duration","type":"string"},"end_image_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"URL pointing to a JPEG, PNG, or WebP image no larger than 30 MB that defines the video's final frame. Supplying this image makes it the destination of the generated video's transition, beginning with the starting image.","title":"End Image Url","x-doitong-alias":"end_image"},"generate_audio":{"default":true,"description":"Enable this to accompany the video with synchronized audio. Generated audio includes speech matched to lip movements, environmental ambience, and sound effects.","title":"Generate Audio","type":"boolean"},"image_url":{"description":"URL for the initial image that will be animated. Accepted formats are JPEG, PNG, WebP; the size limit is 30 MB.","title":"Image Url","type":"string","x-doitong-alias":"image"},"prompt":{"description":"Video motion and action instructions supplied as a text prompt.","examples":["An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea."],"title":"Prompt","type":"string"},"resolution":{"default":"720p","description":"Output resolution: 480p favors generation speed, while 720p offers a balanced choice.","enum":["480p","720p"],"title":"Resolution","type":"string"}},"required":["prompt","image_url"],"title":"Seedance2I2VFastInput","type":"object","x-doitong-order":["prompt","image_url","end_image_url","resolution","duration","aspect_ratio","generate_audio","bitrate_mode","codec"]},"BytedanceSeedance20FastImageToVideoOutput":{"properties":{"seed":{"description":"Seed value applied during generation.","examples":[42],"title":"Seed","type":"integer"},"video":{"description":"Video file produced by generation.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video","seed"],"title":"Seedance2VideoOutput","type":"object","x-doitong-order":["video","seed"]},"BytedanceSeedance20ImageToVideoInput":{"properties":{"aspect_ratio":{"default":"auto","description":"Output aspect ratio: 16:9 gives landscape, 9:16 gives portrait/vertical, 1:1 gives square, and 21:9 gives cinematic ultrawide. Select `auto` to derive the ratio from the input image.","enum":["auto","21:9","16:9","4:3","1:1","3:4","9:16"],"title":"Aspect Ratio","type":"string"},"bitrate_mode":{"default":"standard","description":"Choose the output encoding bitrate: 'standard' retains the default, whereas 'high' asks the model to improve encoding quality at the expense of a larger file.","enum":["standard","high"],"examples":["standard"],"title":"Bitrate Mode","type":"string"},"codec":{"default":"auto","description":"Video codec selection: `auto` leaves the default codec behavior unchanged, `H264` selects H.264, and `H265` selects H.265.","enum":["auto","H264","H265"],"examples":["auto","H264","H265"],"title":"Codec","type":"string"},"duration":{"default":"auto","description":"Video length selection: `auto` delegates the choice to the model using the prompt, while an explicit duration must be from 4 to 15 seconds.","enum":["auto","4","5","6","7","8","9","10","11","12","13","14","15"],"title":"Duration","type":"string"},"end_image_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"URL pointing to a JPEG, PNG, or WebP image no larger than 30 MB that defines the video's final frame. Supplying this image makes it the destination of the generated video's transition, beginning with the starting image.","title":"End Image Url","x-doitong-alias":"end_image"},"generate_audio":{"default":true,"description":"Enable this to accompany the video with synchronized audio. Generated audio includes speech matched to lip movements, environmental ambience, and sound effects.","title":"Generate Audio","type":"boolean"},"image_url":{"description":"URL for the initial image that will be animated. Accepted formats are JPEG, PNG, WebP; the size limit is 30 MB.","title":"Image Url","type":"string","x-doitong-alias":"image"},"prompt":{"description":"Video motion and action instructions supplied as a text prompt.","examples":["An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea."],"title":"Prompt","type":"string"},"resolution":{"default":"720p","description":"Output resolution: 480p prioritizes speed, 720p offers balance, 1080p delivers high quality, and 4k provides the highest quality.","enum":["480p","720p","1080p","4k"],"title":"Resolution","type":"string"}},"required":["prompt","image_url"],"title":"Seedance2I2VInput","type":"object","x-doitong-order":["prompt","image_url","end_image_url","resolution","duration","aspect_ratio","generate_audio","bitrate_mode","codec"]},"BytedanceSeedance20ImageToVideoOutput":{"properties":{"seed":{"description":"Seed value applied during generation.","examples":[42],"title":"Seed","type":"integer"},"video":{"description":"Video file produced by generation.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video","seed"],"title":"Seedance2VideoOutput","type":"object","x-doitong-order":["video","seed"]},"Veo31FastImageToVideoInput":{"properties":{"aspect_ratio":{"default":"auto","description":"Output video's aspect ratio, restricted to 16:9 or 9:16.","enum":["auto","16:9","9:16"],"title":"Aspect Ratio","type":"string"},"auto_fix":{"default":false,"description":"Automatic rewriting of prompts to try to resolve failures in content-policy checks or other validation.","title":"Auto Fix","type":"boolean"},"duration":{"default":"8s","description":"Length of the output video.","enum":["4s","6s","8s"],"title":"Duration","type":"string"},"generate_audio":{"default":true,"description":"Controls whether the video includes generated audio.","title":"Generate Audio","type":"boolean"},"image_url":{"description":"Animation source image URL, with automatic cropping whenever its proportions differ from 16:9 or 9:16. The recommended source is at least 720p and already uses one of those aspect ratios.","title":"Image URL","type":"string","x-doitong-alias":"image"},"negative_prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Negative prompt used to steer video generation.","title":"Negative Prompt"},"prompt":{"description":"Text description of the desired video for generation.","examples":["A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\nSample Dialogue:\nMonkey (Banana): \"Welcome back to Bananas & Ice! I am Banana\"\nPolar Bear (Ice): \"And I'm Ice!\""],"maxLength":20000,"title":"Prompt","type":"string"},"resolution":{"default":"720p","description":"Resolution used for the output video.","enum":["720p","1080p","4k"],"title":"Resolution","type":"string"},"safety_tolerance":{"default":"4","description":"Set content-moderation tolerance between the least restrictive level, 6, and the strictest level, 1, which blocks most content.","enum":["1","2","3","4","5","6"],"title":"Safety Tolerance","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Seed value that initializes random-number generation.","title":"Seed"}},"required":["prompt","image_url"],"title":"Veo31ImageToVideoInput","type":"object","x-doitong-order":["prompt","aspect_ratio","duration","negative_prompt","resolution","generate_audio","seed","auto_fix","safety_tolerance","image_url"]},"Veo31FastImageToVideoOutput":{"properties":{"video":{"description":"Video produced by the model.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video"],"title":"Veo31ImageToVideoOutput","type":"object","x-doitong-order":["video"]},"Veo31ImageToVideoInput":{"properties":{"aspect_ratio":{"default":"auto","description":"Output video's aspect ratio, restricted to 16:9 or 9:16.","enum":["auto","16:9","9:16"],"title":"Aspect Ratio","type":"string"},"auto_fix":{"default":false,"description":"Automatic rewriting of prompts to try to resolve failures in content-policy checks or other validation.","title":"Auto Fix","type":"boolean"},"duration":{"default":"8s","description":"Length of the output video.","enum":["4s","6s","8s"],"title":"Duration","type":"string"},"generate_audio":{"default":true,"description":"Controls whether the video includes generated audio.","title":"Generate Audio","type":"boolean"},"image_url":{"description":"Animation source image URL, with automatic cropping whenever its proportions differ from 16:9 or 9:16. The recommended source is at least 720p and already uses one of those aspect ratios.","title":"Image URL","type":"string","x-doitong-alias":"image"},"negative_prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Negative prompt used to steer video generation.","title":"Negative Prompt"},"prompt":{"description":"Text description of the desired video for generation.","examples":["A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\nSample Dialogue:\nMonkey (Banana): \"Welcome back to Bananas & Ice! I am Banana\"\nPolar Bear (Ice): \"And I'm Ice!\""],"maxLength":20000,"title":"Prompt","type":"string"},"resolution":{"default":"720p","description":"Resolution used for the output video.","enum":["720p","1080p","4k"],"title":"Resolution","type":"string"},"safety_tolerance":{"default":"4","description":"Set content-moderation tolerance between the least restrictive level, 6, and the strictest level, 1, which blocks most content.","enum":["1","2","3","4","5","6"],"title":"Safety Tolerance","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Seed value that initializes random-number generation.","title":"Seed"}},"required":["prompt","image_url"],"title":"Veo31ImageToVideoInput","type":"object","x-doitong-order":["prompt","aspect_ratio","duration","negative_prompt","resolution","generate_audio","seed","auto_fix","safety_tolerance","image_url"]},"Veo31ImageToVideoOutput":{"properties":{"video":{"description":"Video produced by the model.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video"],"title":"Veo31ImageToVideoOutput","type":"object","x-doitong-order":["video"]},"AlibabaWan30ImageToVideoInput":{"properties":{"aspect_ratio":{"default":"adaptive","description":"Aspect ratio for the output, with adaptive selection available.","enum":["adaptive","16:9","4:3","1:1","3:4","9:16"],"title":"Aspect Ratio","type":"string"},"audio":{"default":true,"description":"Controls whether generated audio is included.","title":"Audio","type":"boolean","x-doitong-alias":"generate_audio"},"duration":{"anyOf":[{"maximum":30,"minimum":2,"type":"integer"},{"type":"null"}],"default":5,"description":"Output length: null enables smart duration based on the prompt and reference media; otherwise, the supplied value specifies seconds.","title":"Duration"},"enable_prompt_expansion":{"default":true,"description":"Control whether the prompt is intelligently rewritten before generation. Expect a likely quality reduction if you disable rewriting, in exchange for roughly 20–60 seconds less latency.","title":"Enable Prompt Expansion","type":"boolean"},"enable_thinking":{"default":false,"description":"Enables additional reasoning before generation begins.","title":"Enable Thinking","type":"boolean"},"end_image_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Image used as the final frame of the output video; start_image_url must also be provided.","title":"End Image Url","x-doitong-alias":"end_image"},"prompt":{"anyOf":[{"maxLength":20000,"type":"string"},{"type":"null"}],"description":"Text description of the motion to be generated.","title":"Prompt"},"resolution":{"default":"1080p","description":"Resolution tier for the resulting video.","enum":["480p","720p","1080p"],"title":"Resolution","type":"string"},"seed":{"anyOf":[{"maximum":2147483647,"minimum":0,"type":"integer"},{"type":"null"}],"title":"Seed"},"start_image_url":{"description":"Image used as the opening frame of the output video.","title":"Start Image Url","type":"string","x-doitong-alias":"image"}},"required":["start_image_url"],"title":"Wan30ImageToVideoInput","type":"object","x-doitong-order":["prompt","resolution","aspect_ratio","duration","audio","enable_prompt_expansion","enable_thinking","seed","start_image_url","end_image_url"]},"AlibabaWan30ImageToVideoOutput":{"properties":{"actual_prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actual Prompt"},"duration":{"description":"Length of the generated video, measured in seconds.","title":"Duration","type":"number"},"seed":{"description":"Seed value applied during generation.","title":"Seed","type":"integer"},"video":{"description":"Video file produced by generation.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"duration":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The duration of the video","title":"Duration"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"fps":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"The FPS of the video","title":"Fps"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the video","title":"Height"},"num_frames":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The number of frames in the video","title":"Num Frames"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the video","title":"Width"}},"required":["url"],"title":"VideoFile","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height","fps","duration","num_frames"]}},"required":["video","seed","duration"],"title":"Wan30Output","type":"object","x-doitong-order":["video","seed","duration","actual_prompt"]},"BytedanceSeedance20FastReferenceToVideoInput":{"properties":{"aspect_ratio":{"default":"auto","description":"Output aspect ratio: 16:9 gives landscape, 9:16 gives portrait/vertical, 1:1 gives square, and 21:9 gives cinematic ultrawide. Select `auto` for the model to choose the ratio.","enum":["auto","21:9","16:9","4:3","1:1","3:4","9:16"],"title":"Aspect Ratio","type":"string"},"audio_urls":{"description":"Audio references for video guidance require at least one accompanying image or video reference. Supply MP3 or WAV files of at most 15 MB each, with no more than 3 files and an aggregate duration capped at 15 seconds. Identify them in the prompt using @Audio1, @Audio2, and subsequent numbered labels.","items":{"x-doitong-file":"audio","type":"string"},"maxItems":3,"title":"Audio Urls","type":"array","x-doitong-alias":"audios"},"bitrate_mode":{"default":"standard","description":"Choose the output encoding bitrate: 'standard' retains the default, whereas 'high' asks the model to improve encoding quality at the expense of a larger file.","enum":["standard","high"],"examples":["standard"],"title":"Bitrate Mode","type":"string"},"codec":{"default":"auto","description":"Video codec selection: `auto` leaves the default codec behavior unchanged, `H264` selects H.264, and `H265` selects H.265.","enum":["auto","H264","H265"],"examples":["auto","H264","H265"],"title":"Codec","type":"string"},"duration":{"default":"auto","description":"Video length selection: `auto` delegates the choice to the model using the prompt, while an explicit duration must be from 4 to 15 seconds.","enum":["auto","4","5","6","7","8","9","10","11","12","13","14","15"],"title":"Duration","type":"string"},"generate_audio":{"default":true,"description":"Enable this to accompany the video with synchronized audio. Generated audio includes speech matched to lip movements, environmental ambience, and sound effects.","title":"Generate Audio","type":"boolean"},"image_urls":{"description":"Image references for video guidance, limited to 9 images and subject to a 12-file maximum across all modalities. Each image may be at most 30 MB and must use JPEG, PNG, or WebP. Use @Image1, @Image2, and subsequent numbered labels to identify these references in the prompt.","items":{"type":"string"},"maxItems":9,"title":"Image Urls","type":"array","x-doitong-alias":"images"},"prompt":{"description":"Text prompt that guides video generation.","examples":["An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea."],"title":"Prompt","type":"string"},"resolution":{"default":"720p","description":"Output resolution: 480p favors generation speed, while 720p offers a balanced choice.","enum":["480p","720p"],"title":"Resolution","type":"string"},"video_urls":{"description":"Video references for generation, supplied as MP4 or MOV files and identified in the prompt by @Video1, @Video2, and subsequent numbered labels. Each must have a resolution from approximately 480p (640x640) to approximately 720p (834x1112). The set is limited to 3 videos totaling less than 50 MB, with an aggregate duration from 2 to 15 seconds.","items":{"x-doitong-file":"video","type":"string"},"maxItems":3,"title":"Video Urls","type":"array","x-doitong-alias":"videos"}},"required":["prompt"],"title":"Seedance2R2VFastInput","type":"object","x-doitong-order":["prompt","image_urls","video_urls","audio_urls","resolution","duration","aspect_ratio","generate_audio","bitrate_mode","codec"]},"BytedanceSeedance20FastReferenceToVideoOutput":{"properties":{"seed":{"description":"Seed value applied during generation.","examples":[42],"title":"Seed","type":"integer"},"video":{"description":"Video file produced by generation.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video","seed"],"title":"Seedance2VideoOutput","type":"object","x-doitong-order":["video","seed"]},"BytedanceSeedance20ReferenceToVideoInput":{"properties":{"aspect_ratio":{"default":"auto","description":"Output aspect ratio: 16:9 gives landscape, 9:16 gives portrait/vertical, 1:1 gives square, and 21:9 gives cinematic ultrawide. Select `auto` for the model to choose the ratio.","enum":["auto","21:9","16:9","4:3","1:1","3:4","9:16"],"title":"Aspect Ratio","type":"string"},"audio_urls":{"description":"Audio references for video guidance require at least one accompanying image or video reference. Supply MP3 or WAV files of at most 15 MB each, with no more than 3 files and an aggregate duration capped at 15 seconds. Identify them in the prompt using @Audio1, @Audio2, and subsequent numbered labels.","items":{"x-doitong-file":"audio","type":"string"},"maxItems":3,"title":"Audio Urls","type":"array","x-doitong-alias":"audios"},"bitrate_mode":{"default":"standard","description":"Choose the output encoding bitrate: 'standard' retains the default, whereas 'high' asks the model to improve encoding quality at the expense of a larger file.","enum":["standard","high"],"examples":["standard"],"title":"Bitrate Mode","type":"string"},"codec":{"default":"auto","description":"Video codec selection: `auto` leaves the default codec behavior unchanged, `H264` selects H.264, and `H265` selects H.265.","enum":["auto","H264","H265"],"examples":["auto","H264","H265"],"title":"Codec","type":"string"},"duration":{"default":"auto","description":"Video length selection: `auto` delegates the choice to the model using the prompt, while an explicit duration must be from 4 to 15 seconds.","enum":["auto","4","5","6","7","8","9","10","11","12","13","14","15"],"title":"Duration","type":"string"},"generate_audio":{"default":true,"description":"Enable this to accompany the video with synchronized audio. Generated audio includes speech matched to lip movements, environmental ambience, and sound effects.","title":"Generate Audio","type":"boolean"},"image_urls":{"description":"Image references for video guidance, limited to 9 images and subject to a 12-file maximum across all modalities. Each image may be at most 30 MB and must use JPEG, PNG, or WebP. Use @Image1, @Image2, and subsequent numbered labels to identify these references in the prompt.","items":{"type":"string"},"maxItems":9,"title":"Image Urls","type":"array","x-doitong-alias":"images"},"prompt":{"description":"Text prompt that guides video generation.","examples":["An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea."],"title":"Prompt","type":"string"},"resolution":{"default":"720p","description":"Output resolution: 480p prioritizes speed, 720p offers balance, 1080p delivers high quality, and 4k provides the highest quality.","enum":["480p","720p","1080p","4k"],"title":"Resolution","type":"string"},"video_urls":{"description":"Video references for generation, supplied as MP4 or MOV files and identified in the prompt by @Video1, @Video2, and subsequent numbered labels. Each must have a resolution from approximately 480p (640x640) to approximately 720p (834x1112). The set is limited to 3 videos totaling less than 50 MB, with an aggregate duration from 2 to 15 seconds.","items":{"x-doitong-file":"video","type":"string"},"maxItems":3,"title":"Video Urls","type":"array","x-doitong-alias":"videos"}},"required":["prompt"],"title":"Seedance2R2VInput","type":"object","x-doitong-order":["prompt","image_urls","video_urls","audio_urls","resolution","duration","aspect_ratio","generate_audio","bitrate_mode","codec"]},"BytedanceSeedance20ReferenceToVideoOutput":{"properties":{"seed":{"description":"Seed value applied during generation.","examples":[42],"title":"Seed","type":"integer"},"video":{"description":"Video file produced by generation.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video","seed"],"title":"Seedance2VideoOutput","type":"object","x-doitong-order":["video","seed"]},"KlingVideoAiAvatarV2ProInput":{"properties":{"audio_url":{"x-doitong-file":"audio","description":"URL pointing to the audio file.","title":"Audio Url","type":"string","x-doitong-alias":"audio"},"image_url":{"x-doitong-file":"image","description":"URL pointing to the image used as the avatar.","title":"Image Url","type":"string","x-doitong-alias":"image"},"prompt":{"default":".","description":"Prompt used when generating the video.","title":"Prompt","type":"string"}},"required":["image_url","audio_url"],"title":"AIAvatarInput","type":"object","x-doitong-order":["image_url","audio_url","prompt"]},"KlingVideoAiAvatarV2ProOutput":{"properties":{"duration":{"description":"Output video length, measured in seconds.","title":"Duration","type":"number"},"video":{"description":"Video produced by the model.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video","duration"],"title":"AIAvatarOutput","type":"object","x-doitong-order":["video","duration"]},"SyncLipsyncV3Input":{"properties":{"audio_url":{"description":"Input audio location as a URL.","title":"Audio Url","type":"string","x-doitong-alias":"audio"},"options":{"anyOf":[{"properties":{"active_speaker_detection":{"anyOf":[{"properties":{"auto_detect":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Automatic identification of the active speaker and application of generation to that person.","title":"Auto Detect"},"bounding_boxes":{"anyOf":[{"items":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}]},"type":"array"},{"type":"null"}],"description":"Detected face bounding boxes for each frame, expressed as [x1, y1, x2, y2].","title":"Bounding Boxes"},"bounding_boxes_url":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"JSON file URL providing bounding boxes for each frame.","title":"Bounding Boxes Url"},"coordinates":{"anyOf":[{"items":{"type":"integer"},"maxItems":2,"minItems":2,"type":"array"},{"type":"null"}],"description":"Facial reference point given as [x, y] for the speaker in frame_number.","title":"Coordinates"},"face_image":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Face image encoded in Base64, used to select the speaker manually.","title":"Face Image"},"frame_number":{"anyOf":[{"minimum":0,"type":"integer"},{"type":"null"}],"description":"Index of the frame used for coordinates that manually select the speaker.","title":"Frame Number"},"use_v2":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Deprecated setting for v2 active-speaker detection.","title":"Use V2"},"v3":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Use of v3 active-speaker detection.","title":"V3"}},"title":"Sync3ActiveSpeakerDetection","type":"object","x-doitong-order":["auto_detect","v3","use_v2","frame_number","coordinates","bounding_boxes","bounding_boxes_url","face_image"]},{"type":"null"}],"description":"Settings for identifying the active speaker in videos containing multiple people."},"model_mode":{"anyOf":[{"enum":["lips","face","head","lipsync","emotion","talking_head"],"type":"string"},{"type":"null"}],"description":"Editing-area selection, mainly for react-1, specifying which region the model modifies.","title":"Model Mode"},"occlusion_detection_enabled":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Occlusion-detection toggle with no effect on sync-3 because detection is automatic there; otherwise, it controls whether generation includes occlusion detection.","title":"Occlusion Detection Enabled"},"prompt":{"anyOf":[{"enum":["happy","sad","angry","disgusted","surprised","neutral"],"type":"string"},{"type":"null"}],"description":"Emotion guidance used mainly by react-1 to steer generation.","title":"Prompt"},"sync_mode":{"anyOf":[{"enum":["cut_off","loop","bounce","silence","remap"],"type":"string"},{"type":"null"}],"description":"Override for the top-level sync_mode, specifying what happens when the input audio and video have different durations.","title":"Sync Mode"},"temperature":{"anyOf":[{"maximum":1,"minimum":0,"type":"number"},{"type":"null"}],"description":"Expressiveness setting with no effect on sync-3, which manages this natively. For models that use this setting, 0 gives the least expressive lipsync and 1 gives the most.","title":"Temperature"}},"title":"Sync3GenerationOptions","type":"object","x-doitong-order":["sync_mode","model_mode","prompt","temperature","active_speaker_detection","occlusion_detection_enabled"]},{"type":"null"}],"description":"Configure additional Sync.so generation behavior here, with any supplied options.sync_mode taking precedence over the top-level sync_mode value."},"sync_mode":{"default":"cut_off","description":"Lip synchronization mode for handling differences in audio and video duration.","enum":["cut_off","loop","bounce","silence","remap"],"title":"Sync Mode","type":"string"},"video_url":{"description":"URL pointing to the input video.","title":"Video Url","type":"string","x-doitong-alias":"video"}},"required":["video_url","audio_url"],"title":"Sync3Input","type":"object","x-doitong-order":["video_url","audio_url","sync_mode","options"]},"SyncLipsyncV3Output":{"properties":{"video":{"description":"Video produced by the model.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video"],"title":"Sync3Output","type":"object","x-doitong-order":["video"]},"VeedFabric10Input":{"properties":{"audio_url":{"format":"uri","maxLength":2083,"minLength":1,"title":"Audio Url","type":"string","x-doitong-alias":"audio"},"image_url":{"format":"uri","maxLength":2083,"minLength":1,"title":"Image Url","type":"string","x-doitong-alias":"image"},"resolution":{"description":"Resolution setting.","enum":["720p","480p"],"title":"Resolution","type":"string"}},"required":["image_url","audio_url","resolution"],"title":"FabricOneLipsyncInput","type":"object","x-doitong-order":["image_url","audio_url","resolution"]},"VeedFabric10Output":{"properties":{"video":{"properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video"],"title":"FabricOneOutput","type":"object","x-doitong-order":["video"]},"TopazUpscaleImagePrecisionInput":{"properties":{"crop_to_fill":{"default":false,"title":"Crop To Fill","type":"boolean"},"denoise":{"anyOf":[{"maximum":1,"minimum":0,"type":"number"},{"type":"null"}],"description":"Denoising intensity from 0.0 to 1.0, with a model-dependent default.","title":"Denoise"},"face_enhancement":{"default":true,"description":"Face enhancement toggle for the image.","title":"Face Enhancement","type":"boolean"},"face_enhancement_creativity":{"default":0,"description":"Face-enhancement creativity control, active only while face enhancement is enabled: set 1.0 for maximum creativity or 0.0 for none.","maximum":1,"minimum":0,"title":"Face Enhancement Creativity","type":"number"},"face_enhancement_strength":{"default":0.8,"description":"Face-enhancement strength control, active only while face enhancement is enabled: set 1.0 for maximum enhancement or 0.0 for none.","maximum":1,"minimum":0,"title":"Face Enhancement Strength","type":"number"},"fix_compression":{"anyOf":[{"maximum":1,"minimum":0,"type":"number"},{"type":"null"}],"description":"Compression artifact removal intensity from 0.0 to 1.0; unavailable with CGI.","title":"Fix Compression"},"image_url":{"description":"Source image URL for upscaling.","minLength":1,"title":"Image Url","type":"string","x-doitong-alias":"image"},"model":{"default":"Standard V2","description":"Precision upscaling model selection: Faces uses Face Recovery 3 for facial reconstruction, Text Refine preserves crisp text and shapes, and CGI suits artwork and rendered graphics. For photographs, Standard V2 covers most uses, High Fidelity V3 and High Fidelity V2 retain professional-shot detail, and Low Resolution V2 reconstructs compressed sources.","enum":["Standard V2","High Fidelity V3","High Fidelity V2","Low Resolution V2","CGI","Text Refine","Faces"],"title":"Model","type":"string"},"output_format":{"default":"jpeg","description":"Format used for the upscaled image.","enum":["jpeg","png"],"title":"Output Format","type":"string"},"sharpen":{"anyOf":[{"maximum":1,"minimum":0,"type":"number"},{"type":"null"}],"description":"Sharpening intensity from 0.0 to 1.0, with a model-dependent default.","title":"Sharpen"},"strength":{"anyOf":[{"maximum":1,"minimum":0.01,"type":"number"},{"type":"null"}],"description":"Enhancement intensity from 0.01 to 1.0, supported only by Text Refine.","title":"Strength"},"subject_detection":{"default":"All","description":"Subject detection setting used during image enhancement.","enum":["All","Foreground","Background"],"title":"Subject Detection","type":"string"},"upscale_factor":{"default":2,"description":"Image enlargement multiplier; for example, 2.0 doubles both dimensions.","maximum":4,"minimum":1,"title":"Upscale Factor","type":"number"}},"required":["image_url"],"title":"ImagePrecisionUpscaleRequest","type":"object","x-doitong-order":["image_url","model","upscale_factor","crop_to_fill","output_format","subject_detection","face_enhancement","face_enhancement_creativity","face_enhancement_strength","sharpen","denoise","fix_compression","strength"]},"TopazUpscaleImagePrecisionOutput":{"properties":{"image":{"description":"Image produced by upscaling.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["image"],"title":"ImageUpscaleOutput","type":"object","x-doitong-order":["image"]},"TopazUpscaleVideoPrecisionInput":{"properties":{"H264_output":{"default":false,"description":"Controls whether the output video uses H264 encoding instead of the default H265.","title":"H264 Output","type":"boolean"},"compression":{"anyOf":[{"maximum":1,"minimum":0,"type":"number"},{"type":"null"}],"description":"Strength of compression artifact removal, ranging from 0.0 to 1.0. The model determines the default.","title":"Compression"},"grain":{"anyOf":[{"maximum":0.1,"minimum":0,"multipleOf":0.01,"type":"number"},{"type":"null"}],"description":"Amount of film grain, ranging from 0.0 to 0.1. The default depends on the model.","title":"Grain"},"halo":{"anyOf":[{"maximum":1,"minimum":0,"type":"number"},{"type":"null"}],"description":"Strength of halo reduction, ranging from 0.0 to 1.0. The model determines the default.","title":"Halo"},"model":{"default":"Proteus","description":"Non-generative precision enhancement model, with Theia offering manual control of fidelity and detail and Rhea maximizing fine detail through an internal 4x pass. For restoration tasks, use Artemis to sharpen and denoise degraded footage, Dione to deinterlace legacy or interlaced material, or Iris to recover faces. For most real-world footage, Proteus is suitable and Proteus Natural offers a softer alternative; Gaia improves high-quality footage and CG, while Gaia 2 provides 2x upscaling for animation.","enum":["Proteus","Proteus Natural","Iris","Iris Low Quality","Dione DV","Dione TV","Dione Robust","Dione Dehalo","Dione Robust Dehalo","Artemis High Quality","Artemis Medium Quality","Artemis Low Quality","Artemis Strong Halo","Artemis Medium Halo","Artemis Aliasing & Moire","Gaia HQ","Gaia CG","Gaia 2","Rhea","Theia Fine Tune Detail","Theia Fine Tune Fidelity"],"title":"Model","type":"string"},"noise":{"anyOf":[{"maximum":1,"minimum":0,"type":"number"},{"type":"null"}],"description":"Strength of noise reduction, ranging from 0.0 to 1.0. The model determines the default.","title":"Noise"},"recover_detail":{"anyOf":[{"maximum":1,"minimum":0,"type":"number"},{"type":"null"}],"description":"Strength of original-detail recovery, from 0.0 to 1.0. Increasing this value retains more source detail.","title":"Recover Detail"},"target_fps":{"anyOf":[{"maximum":60,"minimum":16,"type":"integer"},{"type":"null"}],"description":"Output frame rate to target; matching the source FPS leaves interpolation disabled, and only a different FPS enables it.","title":"Target Fps"},"upscale_factor":{"default":2,"description":"Video scaling multiplier; a value of 2.0 doubles both frame dimensions.","maximum":4,"minimum":1,"title":"Upscale Factor","type":"number"},"video_url":{"description":"Source video URL for upscaling.","title":"Video Url","type":"string","x-doitong-alias":"video"}},"required":["video_url"],"title":"VideoPrecisionUpscaleRequest","type":"object","x-doitong-order":["video_url","model","upscale_factor","target_fps","compression","noise","halo","grain","recover_detail","H264_output"]},"TopazUpscaleVideoPrecisionOutput":{"properties":{"video":{"description":"Video file produced by upscaling.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video"],"title":"VideoUpscaleOutput","type":"object","x-doitong-order":["video"]},"BriaBackgroundRemoveInput":{"properties":{"image_url":{"description":"Source image from which content will be erased.","title":"Image Url","type":"string","x-doitong-alias":"image"},"prompt":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Optional cutout instructions in plain language: 'only the chair' narrows the selection, 'without the lamp' removes content, and 'the person with the mat' adds content to keep.","examples":["the person with the mat and the plant"],"title":"Prompt"}},"required":["image_url"],"title":"BGRemoveInput","type":"object","x-doitong-order":["image_url","prompt"]},"BriaBackgroundRemoveOutput":{"properties":{"image":{"description":"Image produced by generation.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"height":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The height of the image in pixels.","examples":[1024],"title":"Height"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"},"width":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"The width of the image in pixels.","examples":[1024],"title":"Width"}},"required":["url"],"title":"Image","type":"object","x-doitong-order":["url","content_type","file_name","file_size","width","height"]}},"required":["image"],"title":"BGRemoveOutput","type":"object","x-doitong-order":["image"]},"ElevenlabsTtsElevenV4Input":{"properties":{"apply_text_normalization":{"default":"auto","description":"Controls text normalization before generation, including the handling of numbers and dates.","enum":["auto","on","off"],"title":"Apply Text Normalization","type":"string"},"language_code":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"ISO 639-1 language code used when generating speech and normalizing text.","title":"Language Code"},"output_format":{"default":"mp3_44100_128","description":"Generated audio format, specified using the codec_sample_rate_bitrate pattern.","enum":["mp3_22050_32","mp3_44100_32","mp3_44100_64","mp3_44100_96","mp3_44100_128","mp3_44100_192","pcm_8000","pcm_16000","pcm_22050","pcm_24000","pcm_44100","pcm_48000","ulaw_8000","alaw_8000","opus_48000_32","opus_48000_64","opus_48000_96","opus_48000_128","opus_48000_192"],"title":"Output Format","type":"string"},"seed":{"anyOf":[{"maximum":4294967295,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Seed used to attempt reproducible results; exact output repetition is not guaranteed.","title":"Seed"},"similarity_boost":{"default":0.75,"description":"Reference-voice similarity control, with a potential naturalness tradeoff: raising it strengthens the match but may make the output sound less natural.","maximum":1,"minimum":0,"title":"Similarity Boost","type":"number"},"stability":{"default":0.5,"description":"Voice stability balances expressive delivery at lower settings against consistent delivery at higher settings.","maximum":1,"minimum":0,"title":"Stability","type":"number"},"text":{"description":"Provide speech content as text, optionally marking delivery with audio tags such as [whispering] or specifying IPA pronunciations between forward slashes.","examples":["[excited] Hello! Welcome to Eleven v4."],"maxLength":5000,"minLength":1,"title":"Text","type":"string"},"timestamps":{"default":false,"description":"Controls whether generated audio is accompanied by timing data for individual characters.","title":"Timestamps","type":"boolean"},"voice":{"default":"Rachel","description":"Voice selected for synthesizing speech.","examples":["Aria","Roger","Sarah","Laura","Charlie","George","Callum","River","Liam","Charlotte","Alice","Matilda","Will","Jessica","Eric","Chris","Brian","Daniel","Lily","Bill"],"title":"Voice","type":"string"}},"required":["text"],"title":"TextToSpeechRequestV4","type":"object","x-doitong-order":["text","voice","stability","similarity_boost","seed","language_code","output_format","apply_text_normalization","timestamps"]},"ElevenlabsTtsElevenV4Output":{"properties":{"audio":{"description":"Audio file produced by generation.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]},"timestamps":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"description":"Generated-speech timing data, included only for requests with `timestamps` set to True, with a timestamp for every word.","title":"Timestamps"}},"required":["audio"],"title":"TTSOutput","type":"object","x-doitong-order":["audio","timestamps"]},"MinimaxSpeech28HdInput":{"description":"Request model for Speech 2.8 HD - highest quality speech synthesis.","properties":{"audio_setting":{"description":"Settings for configuring audio.","properties":{"bitrate":{"default":128000,"description":"Bitrate for the generated audio.","enum":[32000,64000,128000,256000],"title":"Bitrate","type":"integer"},"channel":{"default":1,"description":"Audio channel count: 1 for mono or 2 for stereo.","enum":[1,2],"title":"Channel","type":"integer"},"format":{"default":"mp3","description":"Format for the audio.","enum":["mp3","pcm","flac"],"title":"Format","type":"string"},"sample_rate":{"default":32000,"description":"Sampling rate for the generated audio.","enum":[8000,16000,22050,24000,32000,44100],"title":"Sample Rate","type":"integer"}},"title":"AudioSetting","type":"object","x-doitong-order":["sample_rate","bitrate","format","channel"]},"language_boost":{"anyOf":[{"enum":["Chinese","Chinese,Yue","English","Arabic","Russian","Spanish","French","Portuguese","German","Turkish","Dutch","Ukrainian","Vietnamese","Indonesian","Japanese","Italian","Korean","Thai","Polish","Romanian","Greek","Czech","Finnish","Hindi","Bulgarian","Danish","Hebrew","Malay","Slovak","Swedish","Croatian","Hungarian","Norwegian","Slovenian","Catalan","Nynorsk","Afrikaans","auto"],"type":"string"},{"type":"null"}],"description":"Improves recognition for the selected languages and dialects.","title":"Language Boost"},"normalization_setting":{"description":"Settings that control audio loudness normalization.","properties":{"enabled":{"default":true,"description":"Enables normalization of audio loudness.","title":"Enabled","type":"boolean"},"target_loudness":{"default":-18,"description":"Desired loudness, measured in LUFS; defaults to -18.0.","maximum":-10,"minimum":-70,"title":"Target Loudness","type":"number"},"target_peak":{"default":-0.5,"description":"Desired peak level, measured in dBTP; defaults to -0.5.","maximum":0,"minimum":-3,"title":"Target Peak","type":"number"},"target_range":{"default":8,"description":"Desired loudness range, measured in LU; defaults to 8.0.","maximum":20,"minimum":0,"title":"Target Range","type":"number"}},"title":"LoudnessNormalizationSetting","type":"object","x-doitong-order":["enabled","target_loudness","target_range","target_peak"]},"output_format":{"default":"hex","description":"Output content format; applies only to non-streaming responses.","enum":["url","hex"],"title":"Output Format","type":"string"},"prompt":{"description":"Text for speech synthesis, with pauses specified by `<#x#>` where x ranges from 0.01 to 99.99 seconds. Available interjection tags are `(laughs)`, `(sighs)`, `(coughs)`, `(clears throat)`, `(gasps)`, `(sniffs)`, `(groans)`, and `(yawns)`.","maxLength":10000,"minLength":1,"title":"Prompt","type":"string"},"pronunciation_dict":{"anyOf":[{"properties":{"tone_list":{"description":"Pronunciation replacement list using the syntax ['text/(pronunciation)', ...], for example ['燕少飞/(yan4)(shao3)(fei1)']. Chinese tone numbers range from 1 to 5.","items":{"type":"string"},"title":"Tone List","type":"array"}},"title":"PronunciationDict","type":"object","x-doitong-order":["tone_list"]},{"type":"null"}],"description":"Custom dictionary of pronunciations used to replace text."},"voice_modify":{"anyOf":[{"properties":{"intensity":{"default":0,"description":"Voice-energy control that makes speech more energetic as the setting increases. Its allowed range is -100 to 100.","maximum":100,"minimum":-100,"title":"Intensity","type":"integer"},"pitch":{"default":0,"description":"Pitch control measured in semitones: use a negative value to lower the voice or a positive value to raise it. Allowed values run from -100 to 100.","maximum":100,"minimum":-100,"title":"Pitch","type":"integer"},"timbre":{"default":0,"description":"Voice timbre adjustment from -100 to 100, controlling its tonal character.","maximum":100,"minimum":-100,"title":"Timbre","type":"integer"}},"title":"VoiceModify","type":"object","x-doitong-order":["pitch","intensity","timbre"]},{"type":"null"}],"description":"Settings for modifying voice pitch, intensity, and timbre."},"voice_setting":{"default":{"english_normalization":false,"pitch":0,"speed":1,"voice_id":"Wise_Woman","vol":1},"description":"Settings for configuring the voice.","properties":{"emotion":{"anyOf":[{"enum":["happy","sad","angry","fearful","disgusted","surprised","neutral"],"type":"string"},{"type":"null"}],"description":"Emotional tone of the synthesized speech.","title":"Emotion"},"english_normalization":{"default":false,"description":"English text-normalization option that trades a small amount of additional latency for better reading of numbers.","title":"English Normalization","type":"boolean"},"pitch":{"default":0,"description":"Pitch of the voice, ranging from -12 to 12.","maximum":12,"minimum":-12,"title":"Pitch","type":"integer"},"speed":{"default":1,"description":"Speaking rate, ranging from 0.5 to 2.0.","maximum":2,"minimum":0.5,"title":"Speed","type":"number"},"voice_id":{"default":"Wise_Woman","description":"Predefined voice identifier used for speech synthesis.","examples":["Wise_Woman","Friendly_Person","Inspirational_girl","Deep_Voice_Man","Calm_Woman","Casual_Guy","Lively_Girl","Patient_Man","Young_Knight","Determined_Man","Lovely_Girl","Decent_Boy","Imposing_Manner","Elegant_Man","Abbess","Sweet_Girl_2","Exuberant_Girl"],"minLength":1,"title":"Voice Id","type":"string"},"vol":{"default":1,"description":"Output volume, ranging from 0 to 10.","maximum":10,"minimum":0.01,"title":"Vol","type":"number"}},"title":"VoiceSetting","type":"object","x-doitong-order":["voice_id","speed","vol","pitch","emotion","english_normalization"]}},"required":["prompt"],"title":"TextToSpeechHD28Request","type":"object","x-doitong-order":["prompt","voice_setting","audio_setting","language_boost","output_format","pronunciation_dict","normalization_setting","voice_modify"]},"MinimaxSpeech28HdOutput":{"description":"Output model for Speech 2.8 HD.","properties":{"audio":{"description":"Audio file produced by generation.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]},"duration_ms":{"description":"Audio length, measured in milliseconds.","title":"Duration Ms","type":"integer"}},"required":["audio","duration_ms"],"title":"TextToSpeechHD28Output","type":"object","x-doitong-order":["audio","duration_ms"]},"MinimaxMusic3Input":{"properties":{"duration":{"default":60,"description":"Audio duration limit, measured in seconds, rather than a guaranteed output length. The response reports the actual duration, which can be shorter if generation stops early.","maximum":300,"minimum":1,"title":"Duration","type":"number"},"guidance_scale":{"default":1.7,"description":"Classifier-free guidance strength during flow matching.","examples":[1.7],"maximum":20,"minimum":0,"title":"Guidance Scale","type":"number"},"lyrics":{"description":"Lyrics to be sung; any words sharing a line with a leading structure tag are discarded under the model's input contract. Keep each tag on a separate line, including [intro], [verse], [pre-chorus], [chorus], [post-chorus], [bridge], [instrumental], [solo] and [outro].","examples":["[verse]\nMorning light filtering through the pine\nEvery quiet street is yours and mine\n[chorus]\nSoftly the world begins to breathe"],"title":"Lyrics","type":"string"},"num_inference_steps":{"default":30,"description":"Euler step count for flow matching within each 8-second denoising chunk.","examples":[30],"maximum":100,"minimum":1,"title":"Num Inference Steps","type":"integer"},"prompt":{"description":"Music-generation prompt that can use a Structured Caption for precise control: combine section-specific arrangement and vocal details with global metadata specifying genre, BPM, key, and emotional progression. A general description covers the desired style and mood, how vocals and instruments are used, and the arrangement.","examples":["Genre: acoustic pop. BPM: 96. Key: C major. Warm and intimate, building gently into the chorus. Vocals: soft female lead, close and breathy, light stacked harmonies in the chorus. Arrangement: fingerpicked guitar and soft piano; brushed drums and upright bass enter in the chorus."],"title":"Prompt","type":"string"},"seed":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Seed for reproducible generation, chosen randomly unless you supply a value.","title":"Seed"}},"required":["prompt","lyrics"],"title":"MiniMaxMusic3Request","type":"object","x-doitong-order":["prompt","lyrics","duration","seed","num_inference_steps","guidance_scale"]},"MinimaxMusic3Output":{"properties":{"audio":{"description":"Output audio file in stereo WAV format, using 44.1 kHz and 16-bit samples.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]},"duration":{"description":"Reports how many seconds of audio were actually generated, which is not necessarily as long as requested.","examples":[60],"title":"Duration","type":"number"},"seed":{"description":"Random seed used during generation.","examples":[42],"title":"Seed","type":"integer"}},"required":["audio","seed","duration"],"title":"MiniMaxMusic3Output","type":"object","x-doitong-order":["audio","seed","duration"]},"MmaudioV2Input":{"properties":{"cfg_strength":{"default":4.5,"description":"Classifier Free Guidance intensity.","maximum":20,"minimum":0,"title":"Cfg Strength","type":"number"},"duration":{"default":8,"description":"Length of the generated audio.","maximum":30,"minimum":1,"title":"Duration","type":"number"},"mask_away_clip":{"default":false,"description":"Controls whether the clip is masked away.","title":"Mask Away Clip","type":"boolean"},"negative_prompt":{"default":"","description":"Negative prompt specifying what to exclude during audio generation.","title":"Negative Prompt","type":"string"},"num_steps":{"default":25,"description":"Step count used for audio generation.","maximum":50,"minimum":4,"title":"Num Steps","type":"integer"},"prompt":{"description":"Prompt describing the audio to create.","examples":["Indian holy music"],"title":"Prompt","type":"string"},"seed":{"anyOf":[{"maximum":65535,"minimum":0,"type":"integer"},{"type":"null"}],"description":"Seed value used by the random-number generator.","title":"Seed"},"video_url":{"description":"Video URL used as the source for audio generation.","title":"Video Url","type":"string","x-doitong-alias":"video"}},"required":["video_url","prompt"],"title":"BaseInput","type":"object","x-doitong-order":["video_url","prompt","negative_prompt","seed","num_steps","duration","cfg_strength","mask_away_clip"]},"MmaudioV2Output":{"properties":{"video":{"description":"Output video containing synchronized lip movements.","properties":{"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"MIME type identifying the file's content.","examples":["image/png"],"title":"Content Type"},"file_name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"File name, generated automatically when omitted.","examples":["z9RV14K95DvU.png"],"title":"File Name"},"file_size":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"File size measured in bytes.","examples":[4404019],"title":"File Size"},"url":{"description":"Download URL for the file.","title":"Url","type":"string"}},"required":["url"],"title":"File","type":"object","x-doitong-order":["url","content_type","file_name","file_size"]}},"required":["video"],"title":"Output","type":"object","x-doitong-order":["video"]}}}}