QwenCloudBRASIL
Tradução de apoio para consulta. Código e identificadores técnicos preservados. Consultar referência original ↗

HappyHorse - Recuperar resultado de imagem para vídeo

Verifique HappyHorse status da tarefa de imagem para vídeo

Pesquise o status da tarefa e baixe o vídeo quando estiver pronto.

Estratégia de votação

  1. Salve o task_id de enviar resposta.
  2. Pesquise este endpoint a cada 15 segundos até task_status é SUCCEEDED ou FAILED.
  3. Baixe o vídeo de video_url dentro de 24 horas -- o URL expira depois disso.

OpenAPI

openapi: 3.1.0
info:
  title: HappyHorse Image-to-Video API
  description: Generate videos from an image using the HappyHorse model. 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: getHappyHorseImageToVideoTaskStatus
      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/HappyHorseI2VTaskStatusResponse"
              examples:
                SUCCEEDED:
                  summary: Task succeeded
                  value:
                    request_id: 8ae698ba-df2d-966c-abcf-xxxxxx
                    output:
                      task_id: e56d806f-76f9-4037-aefa-xxxxxx
                      task_status: SUCCEEDED
                      submit_time: 2026-04-20 19:33:50.425
                      scheduled_time: 2026-04-20 19:33:50.463
                      end_time: 2026-04-20 19:35:34.216
                      orig_prompt: A cat running on the grass
                      video_url: https://dashscope-result-sh.oss-accelerate.aliyuncs.com/xxx.mp4?Expires=xxx
                    usage:
                      duration: 5
                      input_video_duration: 0
                      output_video_duration: 5
                      video_count: 1
                      SR: 720
                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 parameter is invalid.
                RUNNING:
                  summary: Task running
                  value:
                    request_id: c1209113-8437-424f-a386-xxxxxx
                    output:
                      task_id: e56d806f-76f9-4037-aefa-xxxxxx
                      task_status: RUNNING
                      submit_time: 2026-04-20 19:33:50.425
                      scheduled_time: 2026-04-20 19:33:50.463
                UNKNOWN:
                  summary: Task expired
                  value:
                    request_id: a4de7c32-7057-9f82-8581-xxxxxx
                    output:
                      task_id: e56d806f-76f9-4037-aefa-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:
    HappyHorseImageToVideoRequest:
      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-i2v
        input:
          type: object
          required:
            - media
          description: Input content for video generation.
          properties:
            prompt:
              type: string
              description: Text description of the video to generate. Optional -- if omitted, the model infers motion from the image alone. Supports any language. Maximum 5,000 non-Chinese characters or 2,500 Chinese characters (auto-truncated if exceeded).
              example: A cat running on the grass
            media:
              type: array
              description: Input media list. Must contain exactly one `first_frame` image. The aspect ratio of the generated video automatically follows the input image.
              items:
                type: object
                required:
                  - type
                  - url
                properties:
                  type:
                    type: string
                    description: "Media asset type. Fixed value: `first_frame`."
                    enum:
                      - first_frame
                  url:
                    type: string
                    format: uri
                    description: |-
                      URL or Base64-encoded data of the first frame image.

                      **Public URL**: HTTP/HTTPS (e.g., `https://xxx/xxx.png`).

                      **Base64**: `data:{MIME_type};base64,{base64_data}` (supported MIME types: `image/jpeg`, `image/png`, `image/webp`).

                      Image constraints: Formats: JPEG, JPG, PNG, WEBP. Resolution: width and height at least 300 px. Aspect ratio: 1:2.5 to 2.5:1. File size: up to 20 MB.
        parameters:
          $ref: "#/components/schemas/HappyHorseImageToVideoParameters"
    HappyHorseImageToVideoParameters:
      type: object
      description: Video generation parameters.
      properties:
        resolution:
          type: string
          description: Video clarity tier. The model automatically scales to approximate the total pixel count for the selected resolution. The aspect ratio of the output video closely matches the input first frame.
          enum:
            - 480P
            - 720P
            - 1080P
          default: 1080P
        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 "HappyHorse" watermark in the lower-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
    HappyHorseI2VTaskStatusResponse:
      type: object
      description: Task status response for HappyHorse image-to-video.
      properties:
        request_id:
          type: string
          description: Request ID for troubleshooting. Include this when contacting support.
          example: 8ae698ba-df2d-966c-abcf-xxxxxx
        output:
          type: object
          properties:
            task_id:
              type: string
              description: Task ID. Queryable for 24 hours after submission.
              example: e56d806f-76f9-4037-aefa-xxxxxx
            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, 24fps). 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 image-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`.
            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