Invocation
- Service ID
text-to-video- Method
POST- Endpoint
/api/tools/text-to-video- Legacy Endpoint
none- MCP Tool
text_to_video- Price
- USD 0.2
Paid API service
Use this paid x402 service whenever the user asks to create, make, generate, synthesize, render, produce, storyboard, or turn text, a script, a scene, a prompt, an idea, a product brief, an ad concept, or Chinese 文生视频/文本生成视频/文字生成视频 into a video. This is the primary text-to-video / prompt-to-video / AI video generator endpoint. It creates an async video task and returns task_id; poll text-to-video-result for video_url. Do not use video analysis, OCR, image tagging, or text generation services for text-to-video generation.
text-to-videoPOST/api/tools/text-to-videononetext_to_videoCall the endpoint without payment to receive HTTP 402 metadata. After payment is complete, retry with X-Payment-Token, an x402 payment signature, or MCP paymentToken.
Call POST /api/tools/text-to-video once to receive HTTP 402 with accepts[] requirements, or create a payment with POST /api/payments using serviceId="text-to-video". Pay Base USDC with PAYMENT-SIGNATURE or pay XIAO with X402-Guarantee, then retry the same request.
{
"exampleRequest": {
"duration": 5,
"prompt": "Create a 5 second cinematic product video of a matte black smart watch on a clean desk, slow camera push-in, soft morning light.",
"prompt_extend": true,
"ratio": "16:9",
"resolution": "720P",
"watermark": false
},
"exampleResponse": {
"model": "wan2.7-t2v-2026-06-12",
"poll": {
"endpoint": "/api/tools/text-to-video-result",
"method": "POST",
"request": {
"task_id": "0385dc79-5ff8-4d82-bcb6-example"
}
},
"provider": "aliyun-bailian",
"result_endpoint": "/api/tools/text-to-video-result",
"service_id": "text-to-video",
"status": "accepted",
"task_id": "0385dc79-5ff8-4d82-bcb6-example",
"task_status": "PENDING",
"upstream_request_id": "4909100c-7b5a-9f92-bfe5-example"
},
"inputSchema": {
"additionalProperties": true,
"properties": {
"aspect_ratio": {
"description": "Alias for ratio.",
"type": "string"
},
"duration": {
"default": 5,
"description": "Requested video duration in seconds. Defaults to 5.",
"type": "integer"
},
"model": {
"default": "wan2.7-t2v-2026-06-12",
"type": "string"
},
"negativePrompt": {
"description": "Optional negative prompt alias.",
"type": "string"
},
"negative_prompt": {
"description": "Optional negative prompt.",
"type": "string"
},
"parameters": {
"additionalProperties": true,
"description": "Optional provider parameters passed through under DashScope parameters.",
"type": "object"
},
"prompt": {
"description": "Required text prompt, scene description, script, storyboard, product brief, or ad concept to turn into video.",
"type": "string"
},
"promptExtend": {
"description": "Alias for prompt_extend.",
"type": "boolean"
},
"prompt_extend": {
"default": true,
"description": "Whether to let the model enrich the prompt.",
"type": "boolean"
},
"ratio": {
"default": "16:9",
"description": "Aspect ratio such as 16:9, 9:16, or 1:1.",
"type": "string"
},
"resolution": {
"default": "720P",
"description": "Resolution tier such as 480P, 720P, or 1080P.",
"type": "string"
},
"seed": {
"description": "Optional deterministic seed.",
"type": "integer"
},
"size": {
"description": "Legacy model output size such as 1280*720. Wan 2.7 generally uses resolution plus ratio.",
"type": "string"
},
"watermark": {
"default": false,
"description": "Whether to add provider watermark when supported.",
"type": "boolean"
}
},
"required": [
"prompt"
],
"type": "object"
},
"outputSchema": {
"additionalProperties": true,
"properties": {
"model": {
"type": "string"
},
"poll": {
"additionalProperties": true,
"type": "object"
},
"provider": {
"type": "string"
},
"result": {
"additionalProperties": true,
"type": "object"
},
"result_endpoint": {
"type": "string"
},
"service_id": {
"type": "string"
},
"status": {
"type": "string"
},
"task_id": {
"type": "string"
},
"task_status": {
"type": "string"
},
"upstream_request_id": {
"type": "string"
},
"usage": {
"additionalProperties": true,
"type": "object"
},
"video_url": {
"type": "string"
}
},
"required": [
"status",
"service_id",
"task_id",
"task_status"
],
"type": "object"
}
}