Tradução de apoio para consulta. Código e identificadores técnicos preservados. Consultar referência original ↗
HappyHorse - Recuperar resultado de referência ao vídeo
Verifique HappyHorse status da tarefa de referência ao vídeo
Pesquise o status da tarefa e baixe o vídeo quando estiver pronto.
Estratégia de votação
- Salve o
task_idde enviar resposta. - Pesquise este endpoint a cada 15 segundos até
task_statuséSUCCEEDEDouFAILED. - Baixe o vídeo de
video_urldentro de 24 horas -- o URL expira depois disso.
OpenAPI
openapi: 3.1.0
info:
title: HappyHorse Reference-to-Video API
description: The HappyHorse reference-to-video model lets you provide multiple reference images and a text prompt to generate a video that combines subjects from the images into a scene based on the prompt. Submit a task asynchronously, then poll `GET /tasks/{task_id}` for the result.
version: 1.0.0
servers:
- url: https://maas.qwencloudapi.com/api/v1
description: Singapore
security:
- BearerAuth: []
paths:
/tasks/{task_id}:
get:
operationId: getHappyHorseRefToVideoTaskStatus
summary: Query task result
description: Poll the status of a submitted task and retrieve the video URL on completion.
parameters:
- name: task_id
in: path
required: true
description: Task ID from the POST response.
schema:
type: string
responses:
"200":
description: Task status retrieved successfully
content:
application/json:
schema:
$ref: "#/components/schemas/HappyHorseR2VTaskStatusResponse"
examples:
SUCCEEDED:
summary: Task succeeded
value:
request_id: 35137489-2862-96cb-b6f2-xxxxxx
output:
task_id: 1469cfc3-3004-4d9e-ab10-xxxxxx
task_status: SUCCEEDED
submit_time: 2026-04-25 15:03:25.848
scheduled_time: 2026-04-25 15:03:25.884
end_time: 2026-04-25 15:04:05.882
orig_prompt: The woman in the red qipao from [Image 1] is first framed in a profile medium shot, highlighting the tailored cut and S-curve silhouette of the dress. The camera then cuts to a low-angle upward shot, capturing the moment she gracefully raises her hand to unfold the folding fan from [Image 2], while the tassel earrings from [Image 3] sway delicately with the turn of her head.
video_url: https://dashscope-result-sh.oss-accelerate.aliyuncs.com/xxxx.mp4?Expires=xxx
usage:
duration: 5
input_video_duration: 0
output_video_duration: 5
video_count: 1
SR: 720
ratio: 16:9
FAILED:
summary: Task failed
value:
request_id: e5d70b02-ebd3-98ce-9fe8-759d7d7b107d
output:
task_id: 86ecf553-d340-4e21-af6e-a0c6a421c010
task_status: FAILED
code: InvalidParameter
message: The resolution is not valid xxxxxx
RUNNING:
summary: Task running
value:
request_id: c1209113-8437-424f-a386-xxxxxx
output:
task_id: 1469cfc3-3004-4d9e-ab10-xxxxxx
task_status: RUNNING
submit_time: 2026-04-25 15:03:25.848
scheduled_time: 2026-04-25 15:03:25.884
UNKNOWN:
summary: Task expired
value:
request_id: a4de7c32-7057-9f82-8581-xxxxxx
output:
task_id: 1469cfc3-3004-4d9e-ab10-xxxxxx
task_status: UNKNOWN
"400":
description: Invalid request parameters
content:
application/json:
schema:
$ref: "#/components/schemas/DashScopeErrorResponse"
x-codeSamples:
- lang: curl
label: cURL - Query task result
source: |-
# Replace {task_id} with the actual task ID from the submit response
curl -X GET 'https://maas.qwencloudapi.com/api/v1/tasks/{task_id}' \
-H "Authorization: Bearer $DASHSCOPE_API_KEY"
components:
securitySchemes:
BearerAuth:
type: http
scheme: bearer
description: DashScope API Key. Get one from the [QwenCloud console](https://home.qwencloud.com/api-keys).
schemas:
HappyHorseRefToVideoRequest:
type: object
required:
- model
- input
properties:
model:
type: string
description: The model name. For available models, see the [QwenCloud console](https://home.qwencloud.com).
example: happyhorse-1.1-r2v
input:
type: object
required:
- prompt
- media
description: Input content including reference images and text prompt.
properties:
prompt:
type: string
description: Text prompt describing the desired video. Use `[Image 1]`, `[Image 2]`, etc. to reference images in the `media` array (order matches array order). You must specify the object from the reference image, for example, "the woman in a red qipao from [Image 1]". Supports any language. Maximum 5,000 non-Chinese characters or 2,500 Chinese characters (auto-truncated if exceeded).
example: The woman in the red qipao from [Image 1] stands elegantly.
media:
type: array
description: "List of reference images (1-9). The array order defines the image reference order in the `prompt`: the first `reference_image` maps to `[Image 1]`, the second to `[Image 2]`, and so on."
items:
type: object
required:
- type
- url
properties:
type:
type: string
description: "Media asset type. Fixed value: `reference_image`."
enum:
- reference_image
url:
type: string
format: uri
description: |-
URL or Base64-encoded data of the reference image.
**Public URL**: HTTP/HTTPS (e.g., `https://xxx/xxx.jpg`).
**Base64**: `data:{MIME_type};base64,{base64_data}` (supported MIME types: `image/jpeg`, `image/png`, `image/webp`).
Image constraints: Formats: JPEG, JPG, PNG, WEBP. Shortest side at least 400 px (720P+ recommended). File size: up to 20 MB.
minItems: 1
maxItems: 9
parameters:
$ref: "#/components/schemas/HappyHorseRefToVideoParameters"
HappyHorseRefToVideoParameters:
type: object
description: Video generation parameters.
properties:
resolution:
type: string
description: Video clarity tier. Higher resolution costs more.
enum:
- 480P
- 720P
- 1080P
default: 1080P
ratio:
type: string
description: Aspect ratio of the generated video.
enum:
- 16:9
- 9:16
- 1:1
- 4:3
- 3:4
- 4:5
- 5:4
- 9:21
- 21:9
default: 16:9
duration:
type: integer
description: Video duration in seconds (integer, 3-15). Longer videos cost more -- billing is per second.
minimum: 3
maximum: 15
default: 5
watermark:
type: boolean
description: 'Whether to add a watermark to the generated video. `true` (default): adds a "Happy Horse" watermark in the bottom-right corner. `false`: no watermark.'
default: true
seed:
type: integer
description: Seed for reproducible results. Same seed + same parameters produces similar (not identical) output.
minimum: 0
maximum: 2147483647
AsyncTaskSubmitResponse:
type: object
description: Response from an asynchronous task submission.
properties:
request_id:
type: string
description: Unique request identifier for tracing and troubleshooting.
example: 4909100c-7b5a-9f92-bfe5-xxxxxx
output:
type: object
properties:
task_id:
type: string
description: Task ID for polling status. Use with `GET /tasks/{task_id}`.
example: 0385dc79-5ff8-4d82-bcb6-xxxxxx
task_status:
type: string
description: Initial task status, typically `PENDING`.
enum:
- PENDING
- RUNNING
- SUCCEEDED
- FAILED
HappyHorseR2VTaskStatusResponse:
type: object
description: Task status response for HappyHorse reference-to-video.
properties:
request_id:
type: string
description: Request ID for troubleshooting. Include this when contacting support.
output:
type: object
properties:
task_id:
type: string
description: Task ID. Queryable for 24 hours after submission.
task_status:
type: string
description: "Task lifecycle: `PENDING` -> `RUNNING` -> `SUCCEEDED` or `FAILED`. `CANCELED` if manually stopped. `UNKNOWN` if expired."
enum:
- PENDING
- RUNNING
- SUCCEEDED
- FAILED
- CANCELED
- UNKNOWN
submit_time:
type: string
description: When the task was submitted (UTC+8, `YYYY-MM-DD HH:mm:ss.SSS`).
scheduled_time:
type: string
description: When the task started executing (UTC+8, `YYYY-MM-DD HH:mm:ss.SSS`).
end_time:
type: string
description: When the task finished (UTC+8). Only present for `SUCCEEDED` or `FAILED` tasks.
orig_prompt:
type: string
description: Your original prompt text.
video_url:
type: string
format: uri
description: URL of the generated video (MP4, H.264 encoding). Only present when `task_status` is `SUCCEEDED`. **Valid for 24 hours** -- download promptly.
code:
type: string
description: Error code. Only present when `task_status` is `FAILED`.
message:
type: string
description: Error message. Only present when `task_status` is `FAILED`.
usage:
type: object
description: Resource consumption. Only present when `task_status` is `SUCCEEDED`.
properties:
duration:
type: number
description: Billable video duration in seconds.
input_video_duration:
type: integer
description: Always `0` for reference-to-video (no input video).
output_video_duration:
type: integer
description: Output video duration in seconds.
video_count:
type: integer
description: Number of videos generated. Always `1`.
ratio:
type: string
description: Aspect ratio of the generated video.
SR:
type: integer
description: Resolution tier used (e.g., `720` for 720P, `1080` for 1080P).
DashScopeErrorResponse:
type: object
description: DashScope API error response.
properties:
request_id:
type: string
description: Unique request identifier for tracing and support.
code:
type: string
description: Machine-readable error code (e.g., `InvalidParameter`, `Throttling`, `Unauthorized`).
example: InvalidParameter
message:
type: string
description: Human-readable error message.
example: Invalid model name