# alibaba-happyhorse-1.1-text-to-video HappyHorse 1.1 Text-to-Video generates 1080p videos with synchronized sound and lip-sync from a single text prompt, made for fast short-form video and ads. ## API Information - **Model Slug:** alibaba-happyhorse-1-1-text-to-video - **Branded URL:** https://www.eachlabs.ai/alibaba/happyhorse-1-1/alibaba-happyhorse-1-1-text-to-video - **Provider:** Alibaba - **Category:** Text to Video - **Output Type:** video - **Status:** active - **Version:** 0.0.1 - **Base Cost:** 1080P pricing: $0.18/sec - **Estimated Processing Time:** 200 seconds - **Last Updated:** 2026-06-22 - **Interactive Demo:** https://www.eachlabs.ai/ai-models/alibaba-happyhorse-1-1-text-to-video ## Pricing - **Charge Type:** dynamic - **Estimated Price (default example):** $0.9000 - **Pricing Details:** 1080P pricing: $0.18/sec ### Pricing Rules | Condition | Pricing | | --- | --- | | resolution == "720P" | 720P pricing: $0.14/sec | | Rule 2 | 1080P pricing: $0.18/sec | ## Input Schema No input parameters documented. ## Example Request ```bash curl -X POST https://api.eachlabs.ai/v1/prediction/ \ -H "X-API-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "alibaba-happyhorse-1-1-text-to-video", "input": {} }' ``` ## Output Schema Response returned by `GET /v1/prediction/{id}` when the job completes: ```json { "status": "success", "predictionID": "string", "output": "string (URL of generated video)", "metrics": { "predict_time": "number (seconds)" } } ``` ## Polling ```bash curl https://api.eachlabs.ai/v1/prediction/{PREDICTION_ID} \ -H "X-API-Key: YOUR_API_KEY" ``` | Status | Meaning | |--------|---------| | `processing` | Still running — poll again | | `success` | Done — read `output` | | `error` | Failed — read `message` / `details` | ## Webhook (alternative to polling) Pass `"webhook_url": "https://your.host/path"` in the create request. Eachlabs POSTs this payload when the job ends: ```json { "exec_id": "prediction-uuid", "status": "succeeded", "output": "https://...", "error": "" } ``` `status` is `"succeeded"` or `"failed"`. `exec_id` equals the `predictionID` from create. Return 2xx within 30 seconds. ## Errors Error body: `{ "status": "error", "message": "...", "details": "..." }` | Code | Meaning | |------|---------| | `400` | Invalid input | | `401` | Missing / invalid `X-API-Key` | | `404` | Unknown model or prediction id | | `429` | Rate limit — 100 creates / min, 10 concurrent per key | | `5xx` | Retry with backoff | ## Overview **alibaba-happyhorse-1.1-text-to-video Overview** The **alibaba-happyhorse-1.1-text-to-video** model is a next-generation Alibaba text-to-video system designed to turn natural language prompts into coherent, high-quality video clips with synchronized native audio and expressive character performance. Developed within Alibaba’s Happy Horse 1.1 family, it focuses on realistic motion, multilingual lip sync, and detailed scene generation, making it suitable for short-form content, explainers, and character-driven narratives. As Alibaba’s top-ranked video model, it emphasizes temporal consistency and fine-grained control over scene dynamics, helping creators and developers rapidly prototype video ideas without cameras, crews, or editing timelines. Integrated through the alibaba-happyhorse-1.1-text-to-video API on each::labs, teams can embed advanced generative video capabilities directly into their products and workflows. ## Usage Notes - API Base URL: `https://api.eachlabs.ai/v1` - Authentication: send `X-API-Key: YOUR_API_KEY`. Generate a key from the Eachlabs dashboard at https://www.eachlabs.ai/dashboard/api-keys. - File-typed parameters (`*_url`, `image_url`, `video_url`, `audio_url`, etc.) accept publicly-reachable HTTPS URLs only. Upload your asset first (GCS / S3 / your CDN) and pass the resulting URL. Data-URIs and localhost URLs are rejected. - For structured parameters (arrays / objects) send real JSON values, not stringified payloads. - Monetary values are reported in USD; per-token / per-megapixel rates may be billed in micro-cents internally. - Prefer `webhook_url` over polling for long-running predictions — see the Webhook Callback section.