Quote MV credits
/api/v1/mv/quoteAuthentication · x-api-key
Customer-facing pricing preview for Fast and Studio MV generation and paid follow-up operations. The response includes a short-lived quoteId that can be supplied with the operation; execution reprices and rejects before direct debit if the current price exceeds the quoted/maxCredits ceiling. Create quotes are lightweight and do not validate remote media resources.
Request
Must match at least one alternative.
-
Request ·
body · anyOf 1AlternativeobjectUnknown fields are not accepted.
18 fields
-
Request ·
body · anyOf 1.durationSecRequirednumberEffective output duration: Omn V1 accepts at least 5 seconds; Vidu requires at least 10 seconds.
Minimum: 5. Maximum: 600.
-
Request ·
body · anyOf 1.modeRequired"fast"Operation or product mode discriminator for this schema variant.
-
Request ·
body · anyOf 1.engineVersionOptional"vidu-v1" | "vidu-v2" | "omn-v1"Explicit MV generation option. Check capabilities and preflight before selecting omn-v1; unsupported combinations fail before credit debit.
Must match at least one alternative.
3 fields / alternatives
-
Request ·
body · anyOf 1.engineVersion · anyOf 1Alternative"vidu-v1" -
Request ·
body · anyOf 1.engineVersion · anyOf 2Alternative"vidu-v2" -
Request ·
body · anyOf 1.engineVersion · anyOf 3Alternative"omn-v1"
-
-
Request ·
body · anyOf 1.hasMotionReferenceVideoOptionalbooleanOmn V1 Premium V2 dance only: quote with a motion reference video.
-
Request ·
body · anyOf 1.lipSyncOptionalbooleanWhether the MV should use the supported lip-sync workflow.
-
Request ·
body · anyOf 1.managedVersionOptional"oneclick-v1" | "premium-v2"Managed Fast MV engine version. Existing clients default to oneclick-v1; premium-v2 must be selected explicitly.
Must match at least one alternative.
2 fields / alternatives
-
Request ·
body · anyOf 1.managedVersion · anyOf 1Alternative"oneclick-v1" -
Request ·
body · anyOf 1.managedVersion · anyOf 2Alternative"premium-v2"
-
-
Request ·
body · anyOf 1.performanceModeOptional"sing" | "sing_perform" | "perform" | "dance"Premium V2 performance mode: singing, singing with performance, instrumental performance, or dance.
Must match at least one alternative.
4 fields / alternatives
-
Request ·
body · anyOf 1.performanceMode · anyOf 1Alternative"sing" -
Request ·
body · anyOf 1.performanceMode · anyOf 2Alternative"sing_perform" -
Request ·
body · anyOf 1.performanceMode · anyOf 3Alternative"perform" -
Request ·
body · anyOf 1.performanceMode · anyOf 4Alternative"dance"
-
-
Request ·
body · anyOf 1.qualityOptional"standard" | "high"Requested public quality tier.
Must match at least one alternative.
2 fields / alternatives
-
Request ·
body · anyOf 1.quality · anyOf 1Alternative"standard" -
Request ·
body · anyOf 1.quality · anyOf 2Alternative"high"
-
-
Request ·
body · anyOf 1.referenceImageCountOptionalstring | integerNumber of reference images included in the requested video generation quote.
Minimum: 0. Maximum: 9. Must match at least one alternative.
2 fields / alternatives
-
Request ·
body · anyOf 1.referenceImageCount · anyOf 1AlternativestringFormat: integer. Default: 0.
-
Request ·
body · anyOf 1.referenceImageCount · anyOf 2AlternativeintegerNumber of reference images included in the requested video generation quote.
Minimum: 0. Maximum: 9.
-
-
Request ·
body · anyOf 1.renderTierOptional"draft" | "standard" | "hd" | "ultra"Omn V1 only. draft delivers 540p; standard 720p; hd 1080p; ultra 720p, 1080p or 1440p. When omitted: resolution=1440p or quality="high" selects ultra, standard quality selects draft at 540p and standard at 720p and hd at 1080p. Native shot rendering offers these tiers for both managed versions subject to capability and preflight checks. Dance motion transfer supports draft or standard only.
Must match at least one alternative.
4 fields / alternatives
-
Request ·
body · anyOf 1.renderTier · anyOf 1Alternative"draft" -
Request ·
body · anyOf 1.renderTier · anyOf 2Alternative"standard" -
Request ·
body · anyOf 1.renderTier · anyOf 3Alternative"hd" -
Request ·
body · anyOf 1.renderTier · anyOf 4Alternative"ultra"
-
-
Request ·
body · anyOf 1.resolutionOptional"540p" | "720p" | "1080p" | "1440p"Delivery resolution. Default 540p. 1440p is available only with generation.engineVersion="omn-v1"; other engines return MV_RESOLUTION_INVALID.
Must match at least one alternative.
4 fields / alternatives
-
Request ·
body · anyOf 1.resolution · anyOf 1Alternative"540p" -
Request ·
body · anyOf 1.resolution · anyOf 2Alternative"720p" -
Request ·
body · anyOf 1.resolution · anyOf 3Alternative"1080p" -
Request ·
body · anyOf 1.resolution · anyOf 4Alternative"1440p"
-
-
Request ·
body · anyOf 1.scheduleOptional"standard" | "economy"Omn V1 only. economy renders shots only in the off-peak window at the same video price as standard scheduling, with a longer delivery window: shots start between 00:00 and 07:40 Beijing time (no new shot in the window's last 20 minutes, so none runs into peak pricing). MVView.generation.scheduleWindow reports the window the waiting shots are bought in; its offPeakEndsAt is the 08:00 window end.
Must match at least one alternative.
2 fields / alternatives
-
Request ·
body · anyOf 1.schedule · anyOf 1Alternative"standard" -
Request ·
body · anyOf 1.schedule · anyOf 2Alternative"economy"
-
-
Request ·
body · anyOf 1.stepOptional"create"Quoted operation step discriminator.
-
Request ·
body · anyOf 1.subtitleModeOptional"vidu" | "custom"Fast MV subtitle rendering mode.
Must match at least one alternative.
2 fields / alternatives
-
Request ·
body · anyOf 1.subtitleMode · anyOf 1Alternative"vidu" -
Request ·
body · anyOf 1.subtitleMode · anyOf 2Alternative"custom"
-
-
Request ·
body · anyOf 1.visualBoardImageCountOptionalnumberNumber of generated Visual Board images to price.
Minimum: 1. Maximum: 50.
-
Request ·
body · anyOf 1.visualBoardImageProviderOptional"gpt-image-2" | "p-image" | "viduq2"Public Visual Board image option code.
Must match at least one alternative.
3 fields / alternatives
-
Request ·
body · anyOf 1.visualBoardImageProvider · anyOf 1Alternative"gpt-image-2" -
Request ·
body · anyOf 1.visualBoardImageProvider · anyOf 2Alternative"p-image" -
Request ·
body · anyOf 1.visualBoardImageProvider · anyOf 3Alternative"viduq2"
-
-
Request ·
body · anyOf 1.visualBoardReferenceImageCountOptionalnumberNumber of billed Visual Board reference images.
Minimum: 0. Maximum: 16.
-
Request ·
body · anyOf 1.visualBoardStrategyOptional"direct_scene_images"Public Visual Board pricing strategy.
-
-
Request ·
body · anyOf 2AlternativeobjectUnknown fields are not accepted.
4 fields
-
Request ·
body · anyOf 2.modeRequired"fast"Operation or product mode discriminator for this schema variant.
-
Request ·
body · anyOf 2.mvIdRequiredstringMV identifier targeted by this operation.
Minimum characters: 1.
-
Request ·
body · anyOf 2.sceneIndexRequirednumberZero-based scene index.
Minimum: 0.
-
Request ·
body · anyOf 2.stepRequired"scene-edit"Quoted operation step discriminator.
-
-
Request ·
body · anyOf 3AlternativeobjectUnknown fields are not accepted.
3 fields
-
Request ·
body · anyOf 3.modeRequired"fast"Operation or product mode discriminator for this schema variant.
-
Request ·
body · anyOf 3.mvIdRequiredstringMV identifier targeted by this operation.
Minimum characters: 1.
-
Request ·
body · anyOf 3.stepRequired"compose"Quoted operation step discriminator.
-
-
Request ·
body · anyOf 4AlternativeobjectUnknown fields are not accepted.
6 fields
-
Request ·
body · anyOf 4.modeRequired"studio"Operation or product mode discriminator for this schema variant.
-
Request ·
body · anyOf 4.stepRequired"storyboard"Quoted operation step discriminator.
-
Request ·
body · anyOf 4.visualBoardImageCountOptionalnumberNumber of generated Visual Board images to price.
Minimum: 1. Maximum: 50.
-
Request ·
body · anyOf 4.visualBoardImageProviderOptional"gpt-image-2" | "p-image" | "viduq2"Public Visual Board image option code.
Must match at least one alternative.
3 fields / alternatives
-
Request ·
body · anyOf 4.visualBoardImageProvider · anyOf 1Alternative"gpt-image-2" -
Request ·
body · anyOf 4.visualBoardImageProvider · anyOf 2Alternative"p-image" -
Request ·
body · anyOf 4.visualBoardImageProvider · anyOf 3Alternative"viduq2"
-
-
Request ·
body · anyOf 4.visualBoardReferenceImageCountOptionalnumberNumber of billed Visual Board reference images.
Minimum: 0. Maximum: 16.
-
Request ·
body · anyOf 4.visualBoardStrategyOptional"direct_scene_images"Public Visual Board pricing strategy.
-
-
Request ·
body · anyOf 5AlternativeobjectUnknown fields are not accepted.
8 fields
-
Request ·
body · anyOf 5.durationSecRequirednumberRequested or known media duration in seconds.
Minimum: 1. Maximum: 16.
-
Request ·
body · anyOf 5.modeRequired"studio"Operation or product mode discriminator for this schema variant.
-
Request ·
body · anyOf 5.resolutionRequired"540p" | "720p" | "1080p"Requested output resolution.
Must match at least one alternative.
3 fields / alternatives
-
Request ·
body · anyOf 5.resolution · anyOf 1Alternative"540p" -
Request ·
body · anyOf 5.resolution · anyOf 2Alternative"720p" -
Request ·
body · anyOf 5.resolution · anyOf 3Alternative"1080p"
-
-
Request ·
body · anyOf 5.stepRequired"render-scene"Quoted operation step discriminator.
-
Request ·
body · anyOf 5.videoProviderRequired"p-video" | "hailuo" | "minimax-h3" | "vidu"Public scene-video option code.
Must match at least one alternative.
4 fields / alternatives
-
Request ·
body · anyOf 5.videoProvider · anyOf 1Alternative"p-video" -
Request ·
body · anyOf 5.videoProvider · anyOf 2Alternative"hailuo" -
Request ·
body · anyOf 5.videoProvider · anyOf 3Alternative"minimax-h3" -
Request ·
body · anyOf 5.videoProvider · anyOf 4Alternative"vidu"
-
-
Request ·
body · anyOf 5.draftOptionalbooleanWhether to use the supported draft rendering policy.
-
Request ·
body · anyOf 5.fpsOptional24 | 48Requested numeric output frame rate.
Must match at least one alternative.
2 fields / alternatives
-
Request ·
body · anyOf 5.fps · anyOf 1Alternative24 -
Request ·
body · anyOf 5.fps · anyOf 2Alternative48
-
-
Request ·
body · anyOf 5.videoModelOptionalstringPublic scene-video model code.
Maximum characters: 100.
-
-
Request ·
body · anyOf 6AlternativeobjectUnknown fields are not accepted.
9 fields
-
Request ·
body · anyOf 6.modeRequired"studio"Operation or product mode discriminator for this schema variant.
-
Request ·
body · anyOf 6.mvIdRequiredstringMV identifier targeted by this operation.
Minimum characters: 1.
-
Request ·
body · anyOf 6.resolutionRequired"540p" | "720p" | "1080p"Requested output resolution.
Must match at least one alternative.
3 fields / alternatives
-
Request ·
body · anyOf 6.resolution · anyOf 1Alternative"540p" -
Request ·
body · anyOf 6.resolution · anyOf 2Alternative"720p" -
Request ·
body · anyOf 6.resolution · anyOf 3Alternative"1080p"
-
-
Request ·
body · anyOf 6.sceneIndexesRequiredarray<number>Unique zero-based scene indexes included in the operation.
Minimum items: 1. Maximum items: 30. Items must be unique.
1 field
-
Request ·
body · anyOf 6.sceneIndexes[]Each itemnumberMinimum: 0.
-
-
Request ·
body · anyOf 6.stepRequired"render-batch"Quoted operation step discriminator.
-
Request ·
body · anyOf 6.videoProviderRequired"p-video" | "hailuo" | "minimax-h3" | "vidu"Public scene-video option code.
Must match at least one alternative.
4 fields / alternatives
-
Request ·
body · anyOf 6.videoProvider · anyOf 1Alternative"p-video" -
Request ·
body · anyOf 6.videoProvider · anyOf 2Alternative"hailuo" -
Request ·
body · anyOf 6.videoProvider · anyOf 3Alternative"minimax-h3" -
Request ·
body · anyOf 6.videoProvider · anyOf 4Alternative"vidu"
-
-
Request ·
body · anyOf 6.draftOptionalbooleanWhether to use the supported draft rendering policy.
-
Request ·
body · anyOf 6.fpsOptional24 | 48Requested numeric output frame rate.
Must match at least one alternative.
2 fields / alternatives
-
Request ·
body · anyOf 6.fps · anyOf 1Alternative24 -
Request ·
body · anyOf 6.fps · anyOf 2Alternative48
-
-
Request ·
body · anyOf 6.videoModelOptionalstringPublic scene-video model code.
Maximum characters: 100.
-
-
Request ·
body · anyOf 7AlternativeobjectUnknown fields are not accepted.
4 fields
-
Request ·
body · anyOf 7.modeRequired"studio"Operation or product mode discriminator for this schema variant.
-
Request ·
body · anyOf 7.mvIdRequiredstringMV identifier targeted by this operation.
Minimum characters: 1.
-
Request ·
body · anyOf 7.sceneIndexRequirednumberZero-based scene index.
Minimum: 0.
-
Request ·
body · anyOf 7.stepRequired"regenerate-image"Quoted operation step discriminator.
-
-
Request ·
body · anyOf 8AlternativeobjectUnknown fields are not accepted.
3 fields
-
Request ·
body · anyOf 8.modeRequired"studio"Operation or product mode discriminator for this schema variant.
-
Request ·
body · anyOf 8.mvIdRequiredstringMV identifier targeted by this operation.
Minimum characters: 1.
-
Request ·
body · anyOf 8.stepRequired"finalize"Quoted operation step discriminator.
-
-
Request ·
body · anyOf 9AlternativeobjectUnknown fields are not accepted.
11 fields
-
Request ·
body · anyOf 9.estimatedSceneCountRequirednumberEstimated number of Studio scenes for total pricing.
Minimum: 1. Maximum: 30.
-
Request ·
body · anyOf 9.modeRequired"studio"Operation or product mode discriminator for this schema variant.
-
Request ·
body · anyOf 9.perSceneDurationSecRequirednumberEstimated duration of each Studio scene in seconds.
Minimum: 1. Maximum: 16.
-
Request ·
body · anyOf 9.resolutionRequired"540p" | "720p" | "1080p"Requested output resolution.
Must match at least one alternative.
3 fields / alternatives
-
Request ·
body · anyOf 9.resolution · anyOf 1Alternative"540p" -
Request ·
body · anyOf 9.resolution · anyOf 2Alternative"720p" -
Request ·
body · anyOf 9.resolution · anyOf 3Alternative"1080p"
-
-
Request ·
body · anyOf 9.stepRequired"total"Quoted operation step discriminator.
-
Request ·
body · anyOf 9.videoProviderRequired"p-video" | "hailuo" | "minimax-h3" | "vidu"Public scene-video option code.
Must match at least one alternative.
4 fields / alternatives
-
Request ·
body · anyOf 9.videoProvider · anyOf 1Alternative"p-video" -
Request ·
body · anyOf 9.videoProvider · anyOf 2Alternative"hailuo" -
Request ·
body · anyOf 9.videoProvider · anyOf 3Alternative"minimax-h3" -
Request ·
body · anyOf 9.videoProvider · anyOf 4Alternative"vidu"
-
-
Request ·
body · anyOf 9.draftOptionalbooleanWhether to use the supported draft rendering policy.
-
Request ·
body · anyOf 9.videoModelOptionalstringPublic scene-video model code.
Maximum characters: 100.
-
Request ·
body · anyOf 9.visualBoardImageCountOptionalnumberNumber of generated Visual Board images to price.
Minimum: 1. Maximum: 50.
-
Request ·
body · anyOf 9.visualBoardImageProviderOptional"gpt-image-2" | "p-image" | "viduq2"Public Visual Board image option code.
Must match at least one alternative.
3 fields / alternatives
-
Request ·
body · anyOf 9.visualBoardImageProvider · anyOf 1Alternative"gpt-image-2" -
Request ·
body · anyOf 9.visualBoardImageProvider · anyOf 2Alternative"p-image" -
Request ·
body · anyOf 9.visualBoardImageProvider · anyOf 3Alternative"viduq2"
-
-
Request ·
body · anyOf 9.visualBoardStrategyOptional"direct_scene_images"Public Visual Board pricing strategy.
-
Responses
200 OK
application/json
Unknown fields are not accepted.
-
Response 200 ·
breakdownRequiredobjectUnknown fields are not accepted.
9 fields
-
Response 200 ·
breakdown.baseOptionalnumber -
Response 200 ·
breakdown.composeOperationsOptionalnumber -
Response 200 ·
breakdown.durationOptionalnumber -
Response 200 ·
breakdown.estimatedSceneCountOptionalnumber -
Response 200 ·
breakdown.finalizeOptionalnumber -
Response 200 ·
breakdown.lipSyncOptionalnumber -
Response 200 ·
breakdown.renderPerSceneOptionalnumber -
Response 200 ·
breakdown.scenesOptionalnumber -
Response 200 ·
breakdown.visualBoardOptionalnumber
-
-
Response 200 ·
creditsRequirednumberMinimum: 0.
-
Response 200 ·
assumptionsOptionalarray<string>1 field
-
Response 200 ·
assumptions[]Each itemstring
-
-
Response 200 ·
baseCreditsOptionalnumber -
Response 200 ·
billingIncrementCreditsOptionalnumberMinimum: 0.0001.
-
Response 200 ·
calculatedSubtotalCreditsOptionalnumber -
Response 200 ·
componentsOptionalarray<object>1 field
-
Response 200 ·
components[]Each itemobjectUnknown fields are not accepted.
7 fields
-
Response 200 ·
components[].discountCreditsRequirednumber -
Response 200 ·
components[].discountedCreditsRequirednumber -
Response 200 ·
components[].finalCreditsRequirednumber -
Response 200 ·
components[].keyRequiredstring -
Response 200 ·
components[].labelRequiredstring -
Response 200 ·
components[].publicCreditsRequirednumber -
Response 200 ·
components[].quantityOptionalnumber
-
-
-
Response 200 ·
discountCreditsOptionalnumber -
Response 200 ·
expiresAtOptionalstring -
Response 200 ·
operationOptionalstring -
Response 200 ·
pricingVersionOptionalnumber -
Response 200 ·
quoteIdOptionalstring -
Response 200 ·
settlementPolicyVersionOptionalstring -
Response 200 ·
settlementRoundingCreditsOptionalnumber -
Response 200 ·
warningCodesOptionalarray<string>1 field
-
Response 200 ·
warningCodes[]Each itemstringMV advisory warning codes. Non-fatal: the request still succeeds; these flag degraded, adjusted, or automatically recovered inputs and are projected into public Task warningCodes. Omn review codes (MV_NATIVE_CREATIVE_*, MV_NATIVE_SHOT_INTERNAL_CUT, MV_NATIVE_FRAME_BORDERS) describe the delivered video; their observations and affected scenes are in `quality` of GET /api/v1/tasks/{taskId}/workflow.
-
400 Bad Request
application/json
-
Response 400 ·
errorRequiredobject3 fields
-
Response 400 ·
error.codeRequiredstringApplication-specific error code (see error catalog)
-
Response 400 ·
error.messageRequiredstringHuman readable error message
-
Response 400 ·
error.detailsOptionalobjectAdditional error details (optional)
-
-
Response 400 ·
successRequiredfalseAlways false for error responses
401 Unauthorized
application/json
-
Response 401 ·
errorRequiredobject3 fields
-
Response 401 ·
error.codeRequiredstringApplication-specific error code (see error catalog)
-
Response 401 ·
error.messageRequiredstringHuman readable error message
-
Response 401 ·
error.detailsOptionalobjectAdditional error details (optional)
-
-
Response 401 ·
successRequiredfalseAlways false for error responses
402 Payment Required
application/json
-
Response 402 ·
errorRequiredobject3 fields
-
Response 402 ·
error.codeRequiredstringApplication-specific error code (see error catalog)
-
Response 402 ·
error.messageRequiredstringHuman readable error message
-
Response 402 ·
error.detailsOptionalobjectAdditional error details (optional)
-
-
Response 402 ·
successRequiredfalseAlways false for error responses
403 Forbidden
Forbidden: the API key lacks the required scope or its IP policy rejects this request.
application/json
-
Response 403 ·
errorRequiredobject3 fields
-
Response 403 ·
error.codeRequiredstringApplication-specific error code (see error catalog)
-
Response 403 ·
error.messageRequiredstringHuman readable error message
-
Response 403 ·
error.detailsOptionalobjectAdditional error details (optional)
-
-
Response 403 ·
successRequiredfalseAlways false for error responses
422 Unprocessable Entity
application/json
-
Response 422 ·
errorRequiredobject3 fields
-
Response 422 ·
error.codeRequiredstringApplication-specific error code (see error catalog)
-
Response 422 ·
error.messageRequiredstringHuman readable error message
-
Response 422 ·
error.detailsOptionalobjectAdditional error details (optional)
-
-
Response 422 ·
successRequiredfalseAlways false for error responses
429 Too Many Requests
Request allowance or task admission capacity exceeded. Follow Retry-After when present; otherwise wait for active tasks and use bounded backoff. Limits do not guarantee throughput. For SSE, this is the HTTP connection response, not an event.
application/json
-
Response 429 ·
errorRequiredobject3 fields
-
Response 429 ·
error.codeRequiredstringRATE_LIMITED for request and task admission rejections.
-
Response 429 ·
error.messageRequiredstring -
Response 429 ·
error.detailsOptionalobjectOptional and scope-dependent. Request limits supply scope/policy/type/limit/current/retryAfterSec. Task admission supplies inFlight/limit/tier, plus scope=apiKey for a key cap. IP rejection can omit details. In-flight rejection does not promise Retry-After.
8 fields
-
Response 429 ·
error.details.currentOptionalintegerMinimum: 0.
-
Response 429 ·
error.details.inFlightOptionalintegerMinimum: 0.
-
Response 429 ·
error.details.limitOptionalintegerMinimum: 0.
-
Response 429 ·
error.details.policyOptional"operation" | "query" -
Response 429 ·
error.details.retryAfterSecOptionalintegerMinimum: 1.
-
Response 429 ·
error.details.scopeOptional"user" | "api-key" | "ip" | "apiKey" -
Response 429 ·
error.details.tierOptional"FREE" | "PREMIUM" | "ENTERPRISE" -
Response 429 ·
error.details.typeOptional"rps" | "daily" | "monthly"
-
-
-
Response 429 ·
successRequiredfalseDefault: false.
500 Internal Server Error
application/json
-
Response 500 ·
errorRequiredobject3 fields
-
Response 500 ·
error.codeRequiredstringApplication-specific error code (see error catalog)
-
Response 500 ·
error.messageRequiredstringHuman readable error message
-
Response 500 ·
error.detailsOptionalobjectAdditional error details (optional)
-
-
Response 500 ·
successRequiredfalseAlways false for error responses