Metadata-Version: 2.4
Name: runapi-happyhorse
Version: 0.1.0
Summary: HappyHorse text-to-video, image-to-video, and edit-video client for RunAPI
Project-URL: Homepage, https://runapi.ai/models/happyhorse
Project-URL: Documentation, https://runapi.ai/docs#sdk-happyhorse
Author-email: RunAPI <contact@runapi.ai>
License-Expression: Apache-2.0
Keywords: ai,edit-video,happyhorse,image-to-video,runapi,sdk,text-to-video
Requires-Python: >=3.9
Requires-Dist: runapi-core
Description-Content-Type: text/markdown

# HappyHorse Python SDK for RunAPI

The HappyHorse Python SDK is the language-specific package for HappyHorse on
RunAPI. Use it for text-to-video, image-to-video, and edit-video flows when your
application needs JSON request bodies, task status lookup, and consistent RunAPI
errors in Python.

For model details, use https://runapi.ai/models/happyhorse; for API reference,
use https://runapi.ai/docs#happyhorse; for SDK docs, use
https://runapi.ai/docs#sdk-happyhorse.

## Install

```bash
pip install runapi-happyhorse
```

## Quick start

```python
from runapi.happyhorse import HappyHorseClient

client = HappyHorseClient()  # reads RUNAPI_API_KEY, or pass api_key="sk-..."

task = client.text_to_video.create(
    model="happyhorse-text-to-video",
    prompt="A horse galloping along a beach at sunset, cinematic",
    aspect_ratio="16:9",
    output_resolution="1080p",
)
status = client.text_to_video.get(task.id)

clip = client.image_to_video.create(
    model="happyhorse-image-to-video",
    first_frame_image_url="https://example.com/first-frame.jpg",
)
```

Use `create` to submit a task and return quickly, `get` to fetch the latest task
state, and `run` to create and poll until completion:

```python
result = client.text_to_video.run(
    model="happyhorse-text-to-video",
    prompt="A serene mountain river at dawn",
)
print(result.videos[0].url)
```

In web request handlers, prefer `create` plus webhook or later `get` polling so a
worker is not held open.

RunAPI-generated file URLs are temporary. Download and store generated videos in
your own durable storage within 7 days; do not treat returned URLs as long-term
assets.

## Language notes

Pass parameters as keyword arguments and catch the `runapi.happyhorse` error
classes when building video jobs or scripts. The available resources are
`text_to_video`, `image_to_video`, and `edit_video`. Keep `RUNAPI_API_KEY` in the
environment or your secret manager; never commit API keys or callback secrets.

## Links

- Model page: https://runapi.ai/models/happyhorse
- SDK docs: https://runapi.ai/docs#sdk-happyhorse
- Product docs: https://runapi.ai/docs#happyhorse
- Pricing and rate limits: https://runapi.ai/models/happyhorse
- Full catalog: https://runapi.ai/models

## License

Licensed under the Apache License, Version 2.0.
