ApiframeApiframe Docs
Video GenerationHappy Horse

Happy Horse 1.1

Alibaba Happy Horse 1.1 — text-to-video, image-to-video, and reference-to-video (up to 9 images) with stronger motion, character consistency, and synced audio.

POST /v2/videos/generatemodel: "happyhorse-1.1"

Happy Horse 1.1 is the upgrade to Alibaba's Happy Horse video model, with stronger motion expressiveness, better character consistency, and synchronized audio. It runs in three modes depending on how many images you provide. Served across Replicate and Alibaba Cloud (DashScope) with automatic failover.

The mode is selected automatically from the number of images:

  • No images → text-to-video. Use aspect_ratio to control the shape.
  • One image → image-to-video. The model animates it as the first frame and adopts its aspect ratio (aspect_ratio is ignored).
  • Two to nine images → reference-to-video. The model keeps the subjects and scenes from your references; address them in the prompt as [Image 1], [Image 2], and so on.

See Video Generation overview for common request fields, response format, and error codes.

Model-specific parameters

ParameterTypeRequiredDefaultDescription
happyhorse11Params.imagesstring[]NoInput images. None = text-to-video, one = image-to-video, two to nine = reference-to-video. JPG, PNG, BMP, or WEBP; each side ≥ 300px.
happyhorse11Params.resolutionstringNo"1080p"Output resolution: "720p" or "1080p".
happyhorse11Params.aspect_ratiostringNo"16:9"Text-to-video and reference-to-video. One of "16:9", "9:16", "1:1", "4:3", "3:4". Ignored for image-to-video.
happyhorse11Params.durationnumberNo5Video duration in seconds (integer, 3–15).
happyhorse11Params.seednumberNoRandom seed (0–2147483647) for reproducible generation.

Credit cost

Pricing is per second of generated video (credits = rate × duration), by resolution.

VariantCredits / second
720p24
1080p31

A 10-second clip at 1080p therefore costs 31 × 10 = 310 credits.

Example result

Once the job is COMPLETED, the result object on GET /v2/jobs/:id looks like:

{
  "videoUrl": "https://cdn2.apiframe.ai/videos/b2c3d4e5-f6a7-8901-bcde-f23456789012.mp4"
}

See Result format for field details.

Code examples

curl -X POST https://api.apiframe.ai/v2/videos/generate \
  -H "X-API-Key: afk_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "A herd of horses thundering across desert dunes, dust trailing behind, golden hour",
    "model": "happyhorse-1.1",
    "happyhorse11Params": {
      "duration": 8,
      "resolution": "1080p",
      "aspect_ratio": "16:9"
    }
  }'
import requests

response = requests.post(
    "https://api.apiframe.ai/v2/videos/generate",
    headers={
        "X-API-Key": "afk_your_api_key_here",
        "Content-Type": "application/json",
    },
    json={
        "prompt": "A herd of horses thundering across desert dunes, dust trailing behind, golden hour",
        "model": "happyhorse-1.1",
        "happyhorse11Params": {
            "duration": 8,
            "resolution": "1080p",
            "aspect_ratio": "16:9",
        },
    },
)
print(response.json())
const response = await fetch("https://api.apiframe.ai/v2/videos/generate", {
  method: "POST",
  headers: {
    "X-API-Key": "afk_your_api_key_here",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    prompt: "A herd of horses thundering across desert dunes, dust trailing behind, golden hour",
    model: "happyhorse-1.1",
    happyhorse11Params: {
      duration: 8,
      resolution: "1080p",
      aspect_ratio: "16:9",
    },
  }),
});
console.log(await response.json());

Reference-to-video

Provide up to nine reference images and refer to them in the prompt as [Image 1], [Image 2], etc.

curl -X POST https://api.apiframe.ai/v2/videos/generate \
  -H "X-API-Key: afk_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "[Image 1] walks through the gate of [Image 2] at dusk, cinematic",
    "model": "happyhorse-1.1",
    "happyhorse11Params": {
      "images": [
        "https://example.com/character.jpg",
        "https://example.com/castle.jpg"
      ],
      "duration": 6,
      "resolution": "1080p",
      "aspect_ratio": "16:9"
    }
  }'

Try it

POST/v2/videos/generateTry it

On this page