Skip to main content
POST
Pricing: See vibetool.ai/pricing for current rates.
HappyHorse 1.0 is a top-ranked video generation model by HappyHorse that produces 720p or 1080p video from a reference image and an optional text prompt. It uses Vibetool’s asynchronous API — submit a generation task and then poll for results.

Input Modalities

  • Image – a reference image to animate (JPEG or PNG)
  • Text – (optional) a prompt describing motion, scene, or style

Output Modality

  • Video – an MP4 file (720p or 1080p, per-second billing)

Authorization

string
required
All APIs require Bearer Token authentication. Format: Bearer YOUR_API_KEY

Request Body

string
required
The model identifier. Use "happyhorse-1.0-reference-to-video".
string
required
A publicly accessible URL to the input image (JPEG or PNG). Recommended minimum resolution is 256x256; maximum 2048x2048.
string
Optional text description of the desired video content (e.g., “a horse galloping through a meadow, cinematic lighting”).
number
Requested video duration in seconds (defaults to 4, subject to model limits). The model may adjust to its supported range.

Response Schema

string
required
Unique identifier for the generation task.
string
required
Type of object, always "video.generation".
string
required
The model used, e.g., "happyhorse-1.0-reference-to-video".
integer
required
Unix timestamp (seconds) of task creation.
string
required
Initial status: "pending" or "processing". Use the Get Video Status endpoint to poll for completion.
string
required
The task ID to query in the status endpoint.
Once the task is created, use the Get Video Result endpoint to poll for the generated video URL.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
model
enum<string>
required

Use happyhorse-1.0-reference-to-video.

Available options:
happyhorse-1.0-reference-to-video
image_url
string<uri>
required

Reference image URL

prompt
string

Optional text description

duration
number

Duration in seconds

Response

Task created

id
string

Unique identifier for the generation task

object
string
Example:

"video.generation"

model
string
created_at
integer

Unix timestamp (seconds)

status
enum<string>

Initial task status

Available options:
pending,
processing
task_id
string

Task ID for the status polling endpoint