↓
Rivya AI Docs
Model API guides

HappyHorse 1.1 API reference

Check HappyHorse 1.1 availability, inputs, parameters, file requirements, credit pricing, and request examples for Rivya Public API v1. Model ID: happyhorse-1-1.

Available via APIText or URL ready; reference modes use Files APIVideo
API model ID

happyhorse-1-1

Inputs

text, file

Files API

Required for reference modes

Credit pricing

Credit rate: 22.5–29 per second of output The final cost is rounded up to whole credits.

Capability

Video

Billing

METERED

Prompt limit

4999 characters

Request fields

Set model at the top level. Put model-specific controls and reference inputs in params, using the format documented for this model.

KeyTypeRequiredDefaultDescription
modelstringYeshappyhorse-1-1Set model to happyhorse-1-1.
promptstringNo-Maximum 4999 characters for this model.
paramsobjectNo-The model-specific params object. Use the documented keys and reference-file format for this model.
client_request_idstringNo-Optional ID for tracing this request in your system. It does not replace Idempotency-Key.

Model parameters

KeyTypeRequiredDefaultRangeOptionsDescription
resolutionselectNo1080p-720p, 1080pThe selected resolution sets the per-second credit rate.
aspect_ratioselectNo16:9-16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21, 21:9Used for prompt-only and multi-reference runs; a single-image run follows its first frame.
durationnumberNo5min 3 / max 15 / step 1-Choose a whole-number output duration from 3 to 15 seconds.

Upload policy

Upload reference files through Files API first. Keep the original URLs, verified metadata, and tokens. Follow this model's request example: some models use params.referenceMediaItems, while others use different fields.

Reference rule

First frame or reference images: Upload one JPEG, PNG, or WebP image for first-frame animation, or 2 to 9 images for reference-led video. Each file can be up to 20 MB.

Max files

9

Accepted file kinds

image

Duration token

When duration verification is required, use duration_token from /api/v1/files as durationToken in the request. Keep any additional signed metadata this model requires.

kindMax sizeMIME types
image20 MBimage/jpeg, image/png, image/webp

Minimal request

{
  "model": "happyhorse-1-1",
  "prompt": "A camera slowly circles a product bottle on a studio table.",
  "params": {
    "resolution": "1080p",
    "aspect_ratio": "16:9",
    "duration": 5
  }
}

Reference-file request

{
  "model": "happyhorse-1-1",
  "prompt": "A camera slowly circles a product bottle on a studio table.",
  "params": {
    "resolution": "1080p",
    "aspect_ratio": "16:9",
    "duration": 5,
    "referenceMediaItems": [
      {
        "url": "https://cdn.example.com/reference-image.png",
        "kind": "image",
        "name": "reference-image.png",
        "mimeType": "image/png",
        "width": 1024,
        "height": 1024,
        "sizeBytes": 1048576,
        "imageDimensionsToken": "image_dimensions_token_from_original_files_api_upload_response"
      }
    ]
  }
}

Example response

An accepted generation request returns a task ID. Poll the status endpoint until the task succeeds or fails. A status request failure does not mean generation failed.

{
  "id": "task_happyhorse_1_1_example",
  "status": "queued",
  "model": "happyhorse-1-1",
  "reserved_credits": 145,
  "final_credits": 0,
  "settlement_status": "RESERVED",
  "created_at": "2026-05-11T00:00:00.000Z",
  "updated_at": "2026-05-11T00:00:00.000Z",
  "result": null,
  "error": null
}

Common errors

validation_failed, insufficient_credits, idempotency_conflict, rate_limited, not_found

Some modes require Files API reference uploads.