> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vidgo.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Happy Horse 视频编辑

> Happy Horse API 根据文本指令和参考图片改造现有视频，引导出新的视觉方向。

> [!TIP]
>
> 1. 提交后会返回 `task_id`。如果提供了 `callback_url`，当任务状态变为 `finished` 或 `failed` 时，系统会向 `callback_url` 发送 POST 请求。
> 2. 无论是否提供 `callback_url`，都可以通过统一的[查询任务状态](https://docs.vidgo.ai/zh/api-manual/task-management/status.md)接口获取结果。

使用 Happy Horse 视频编辑，根据文本指令和参考图片改造现有视频，引导出新的视觉方向。

## 模型

* **alibaba/happyhorse-1.0/video-edit** - 根据文字指令编辑现有视频。

## 功能

* 根据文字指令编辑现有视频。
* 可选添加最多 5 张参考图片引导编辑。
* 输出分辨率可选 `720p`、`1080p`。
* 可选择自动处理音频或保留源音频。

## 时长选项

* **源视频：3-60 秒** - 时长从 `video_url` 读取。

## 高级参数

`model` 和可选的 `callback_url` 放在请求根级，下列参数放在 `input` 内。

只发送本工作流支持的 input 字段。不支持的 `input` 字段会在扣除积分前被拒绝。输入 URL 必须使用 HTTP(S)，带主机名，且不含内嵌凭证。

### 提示词

* `prompt`：必填。描述要对视频做的修改。
* 提示词不能为空。最大长度：**2,500 个字符**。

### 参考输入

* `reference_image_urls`：可选；最多 5 张图片。
* 在提示词中描述所引用的主体；无需使用 `character1` 和 `character2` 标记。

### 源视频

* `video_url`：必填。提供一个可公开访问的源视频 URL。
* 源视频必须可通过 HTTP(S) 直接下载，且不超过 **100 MiB**，以便检测时长。

### 分辨率

* `resolution`：`720p`、`1080p`。默认：`1080p`。

### 音频

* `audio_setting`：`auto` 或 `origin`。默认：`auto`。
* `auto` 由模型决定音频处理方式；`origin` 保留原始音频。

### 种子

* `seed` 可选。传入 `0` 到 `2147483647` 的整数。

### 安全检查

* `enable_safety_checker` 可选。设为 `true` 或 `false` 控制安全检查。

## 定价

积分按检测到的源视频时长（最多按 **15 秒**计）乘以所选分辨率的费率计算。

当前价格请在 Vidgo 仪表盘查看。

提交时扣除积分，任务失败后退还。


## OpenAPI

````yaml zh/api-manual/video-series/alibaba-happyhorse-1-0-video-edit.json POST /api/generate/submit
openapi: 3.0.0
info:
  title: Vidgo API - Happy Horse 视频编辑
  description: 使用 Happy Horse 根据文本指令和参考图片改造现有视频，引导出新的视觉方向。
  version: 1.0.0
servers:
  - url: https://api.vidgo.ai
security:
  - BearerAuth: []
paths:
  /api/generate/submit:
    post:
      tags:
        - Video Series
      summary: Happy Horse 视频编辑
      description: >-
        只发送本工作流列出的字段。包含其他工作流参数的请求会在扣除积分前被拒绝。


        输入 URL 字段必须是带主机名、不含内嵌凭证的 HTTP(S) URL。


        输入视频时长须在 3 到 60 秒之间。积分等于检测到的源视频时长（最多按 15 秒计）乘以对应分辨率的费率。必须提供非空提示词，最多
        2,500 个字符。


        提交时扣除积分，任务失败后退还。参考提示词无需使用 character1 或 character2 标记。


        需要检测时长的媒体必须是可公开访问的 HTTP(S) 文件，大小不超过 100 MiB。
      operationId: submit_alibaba_happyhorse_1_0_video_edit
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - model
                - input
              additionalProperties: true
              properties:
                model:
                  type: string
                  example: alibaba/happyhorse-1.0/video-edit
                input:
                  type: object
                  properties:
                    prompt:
                      type: string
                      maxLength: 2500
                      minLength: 1
                      description: 描述编辑要求的文本提示词。必填，最多 2,500 个字符。
                    reference_image_urls:
                      type: array
                      maxItems: 5
                      items:
                        type: string
                        format: uri
                        description: 参考图片 URL。
                      description: 可选参考图片，最多 5 张。在提示词中描述所引用的主体；无需特定的角色标记。
                    video_url:
                      type: string
                      format: uri
                      description: 视频 URL。
                    resolution:
                      type: string
                      enum:
                        - 720p
                        - 1080p
                      default: 1080p
                      description: 分辨率。
                    audio_setting:
                      type: string
                      enum:
                        - auto
                        - origin
                      default: auto
                      description: 音频设置。
                    seed:
                      type: integer
                      minimum: 0
                      maximum: 2147483647
                      description: 种子。
                    enable_safety_checker:
                      type: boolean
                      description: 启用安全检查。
                  additionalProperties: false
                  required:
                    - video_url
                    - prompt
                callback_url:
                  type: string
                  nullable: true
                  description: >-
                    可选的公开 HTTP(S) 地址，用于接收任务完成通知。建议使用 HTTPS。省略、设为 null
                    或空字符串即不发送回调。
              description: model 和 callback_url 放在根级。未知的根级字段会被忽略；不支持的 input 字段会被拒绝。
            examples:
              basic:
                summary: 基础工作流
                value:
                  model: alibaba/happyhorse-1.0/video-edit
                  input:
                    video_url: https://example.com/video.mp4
                    resolution: 1080p
                    audio_setting: auto
                    prompt: >-
                      Restyle the scene with warm sunset lighting while
                      preserving the original motion.
              callback:
                summary: 接收完成回调
                value:
                  model: alibaba/happyhorse-1.0/video-edit
                  input:
                    video_url: https://example.com/video.mp4
                    resolution: 1080p
                    audio_setting: auto
                    prompt: >-
                      Restyle the scene with warm sunset lighting while
                      preserving the original motion.
                  callback_url: https://your-domain.com/callback
      responses:
        '200':
          description: 任务已提交
          content:
            application/json:
              schema:
                type: object
                required:
                  - code
                  - data
                properties:
                  code:
                    type: integer
                    enum:
                      - 200
                  data:
                    type: object
                    required:
                      - task_id
                      - status
                      - created_time
                    properties:
                      task_id:
                        type: string
                      status:
                        type: string
                        enum:
                          - not_started
                          - running
                          - finished
                          - failed
                      created_time:
                        type: string
                        format: date-time
              example:
                code: 200
                data:
                  task_id: task-unified-example
                  status: running
                  created_time: '2026-09-10T08:00:00'
        '400':
          description: 输入无效、不支持的档位、媒体无法访问或积分不足
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '401':
          description: 凭证无效
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '403':
          description: 拒绝访问
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '404':
          description: 模型不存在或已停用
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '408':
          description: 请求超时
          content:
            text/plain:
              schema:
                type: string
              example: Request timeout
        '422':
          description: JSON 无效或请求体不是对象
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '429':
          description: 超出频率限制或 API Key 积分限额
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '500':
          description: 内部错误
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '502':
          description: 无法创建上游生成任务
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '503':
          description: 所请求的模型暂时不可用
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: 使用 VIDGO_API_KEY。

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.