Skip to main content
POST
  1. After submission, a task_id will be returned. If you provided a callback_url, when the task status becomes finished or failed, a POST request will be sent to the callback_url.
  2. Regardless of whether callback_url is provided, you can retrieve the result through the unified Query Task Status endpoint.
happy-horse-1.1 supports text-to-video, image-to-video, and reference-to-video through one public model ID.

Models

  • happy-horse-1.1 - Alibaba Happy Horse 1.1 video generation

Input modes

Text to Video

Send a prompt without image_urls or reference_image_urls. Use aspect_ratio, resolution, and duration to control the output.

Image to Video

Send a single-item image_urls array. The image is used as the first frame. prompt is optional in this mode.

Reference to Video

Send reference_image_urls with 1-9 images and a required prompt. Do not combine reference_image_urls with image_urls.

Required parameters

  • model: happy-horse-1.1
  • input.prompt: Required for text-to-video and reference-to-video. Optional for image-to-video. Maximum length is 2,500 characters.
  • input.image_urls: Required for image-to-video.
  • input.reference_image_urls: Required for reference-to-video.

Optional parameters

  • image_urls: Single-item first-frame image URL array for image-to-video
  • reference_image_urls: 1-9 images for reference-to-video
  • aspect_ratio: Text-to-video and reference-to-video only. 21:9, 16:9, 4:3, 1:1, 3:4, 4:5, 5:4, 9:16, or 9:21. Default is 16:9
  • resolution: 720p or 1080p. Default is 1080p
  • duration: Integer seconds from 3 to 15. Default is 5
  • seed: Optional integer from 0 to 2147483647
  • enable_safety_checker: Optional boolean

Notes

  • image_urls must resolve to exactly one image and is only for image-to-video.
  • reference_image_urls selects reference-to-video and cannot be used together with image_urls.
  • For text-to-video and reference-to-video, omit image_urls and use aspect_ratio.

Authorizations

Authorization
string
header
required

All API endpoints require Bearer Token authentication.

Create an API key: sign in to PoYo, open Dashboard → API Key at poyo.ai/dashboard/api-key, and click to create a key.

Add it to the request header:

Body

application/json
model
enum<string>
required

Happy Horse 1.1 model identifier

Available options:
happy-horse-1.1
input
object
required
callback_url
string<uri>

Webhook callback URL for result notifications

Example:

"https://your-domain.com/callback"

Response

Task submitted successfully

code
enum<integer>
required

Business status code. 200 means success; any other value means the request failed. Always check this field: some validation errors return HTTP 200 with code: 400 in the body.

  • 200: Success
  • 400: Invalid request parameters
  • 401: Missing or invalid API key
  • 402: Insufficient credits
  • 403: Permission denied
  • 404: Resource not found
  • 408: Request timeout
  • 429: Rate limit exceeded
  • 500: Internal server error
  • 502: Upstream service error
  • 503: Service unavailable

See Error Codes for details.

Available options:
200,
400,
401,
402,
403,
404,
408,
429,
500,
502,
503
Example:

200

data
object
required