HiAPI
  • Models
  • Pricing
Search

Search HiAPI models, tools, and resources.

  • Models
  • Pricing
HiAPI

One API, All AI Models

Generate images, video, and audio with leading models through one production-ready API.

Get a free API key

AI Image API

  • All image models
  • GPT Image 2
  • Nano Banana 2
  • Seedream 5.0 Pro
  • Qwen Image 2.0 Pro
  • FLUX 1.1 Pro

AI Video API

  • All video models
  • Seedance 2.5
  • FLUX.3 Video
  • Seedance 2.0
  • Veo 3.1
  • Kling 3.0

AI Audio API

  • All audio models
  • MiniMax Music 2.6
  • MiniMax Music 1.5
  • ElevenLabs v3
  • Text to music
  • Text to speech

Product

  • Model marketplace
  • Playground
  • Pricing
  • Image API Cost Calculator
  • Free GPT Image 2 Generator
  • Free Nano Banana Image Generator
  • Outfit Preview
  • Product Photo Lab

Developers

  • Documentation
  • API Reference
  • Agent Skills
  • LLM integration index
  • Blog

Company

  • About
  • Contact support
  • Terms of Service
  • Privacy Policy

© 2026 hiapi. All rights reserved.

Open source on GitHubPython SDK on PyPI
  • Why text-to-video for short-form content
  • A real clip, start to finish
  • The API workflow
  • Pricing: two tiers, no 1080p
  • Producing a short-form set, not just one clip
  • How this compares to Seedance 2.0
  • FAQ
  • Takeaways
GuideAug 17, 20266 min read

Seedance 2.5 Text-to-Video: Build Short-Form Clips with the hiapi API

A real prompt, a real clip, and the async workflow to turn it into a repeatable short-form pipeline.

hiapiSeedanceVideo GenerationShort-Form Video

Latest models

Explore models

Contents
  • Why text-to-video for short-form content
  • A real clip, start to finish
  • The API workflow
  • Pricing: two tiers, no 1080p
  • Producing a short-form set, not just one clip
  • How this compares to Seedance 2.0
  • FAQ
  • Takeaways

Generate it with HiAPI

Choose a model, enter your prompt, and see the result.

HiAPI Blog

Related articles

HiAPI

Generate it with HiAPI

Short-form video is a volume game: TikTok, Reels, and Shorts all reward posting cadence, and hand-shooting b-roll for every post doesn't scale. Seedance 2.5's text-to-video endpoint turns a single prompt into a finished, vertically-framed clip with synced audio in one API call - no camera, no editing timeline, no separate voiceover pass.

This guide walks through a real clip we generated end-to-end via the hiapi API: the exact prompt, the async workflow that produced it, verified pricing, and a batch-ready pattern for producing a short-form set instead of one-off clips. For the full parameter reference across all three seedance-2.5 endpoints, see the complete API guide.

Why text-to-video for short-form content

Short-form platforms don't need cinematic length - they need a steady supply of 6-15 second clips that loop cleanly and hook in the first second. seedance-2.5/text-to-video fits that brief directly:

  • Up to 30 seconds per clip, across seven aspect ratios including 9:16 for TikTok/Reels/Shorts.
  • Native audio sync - the model generates ambient sound and audio cues tied to the action in the prompt, not a silent clip you dub over later.
  • Prompt support in 11 languages, useful if you're localizing a short-form campaign.
  • Two resolution tiers (480p and 720p) so you can generate cheap drafts and only pay the 720p rate for the clips you actually ship.

A real clip, start to finish

Here's a clip we generated for this guide: a close-up of latte art being poured, framed vertically for a coffee-shop short.

The exact prompt we submitted, unedited:

A barista's steady hand pours steamed milk from a stainless steel pitcher into a white ceramic cup of espresso, the stream folding into a rosetta swirl of latte art forming in real time, warm golden-hour light raking across the counter, a croissant and pastry soft-blurred in the background, close-up vertical framing, gentle steam, ambient cafe sound.

Parameters: aspect_ratio: "9:16", resolution: "720p", duration: 8. The output above is the real, unedited task result - 8.06 seconds, with the pour sound and ambient cafe hum baked in by the model, not added afterward.

The API workflow

seedance-2.5/text-to-video runs through hiapi's async task API - submit, poll, download. There's no synchronous video endpoint; every clip is a background job.

import time
import requests

API_KEY = "YOUR_HIAPI_KEY"
BASE = "https://api.hiapi.ai/v1"

def generate_clip(prompt: str, aspect_ratio: str = "9:16",
                   resolution: str = "720p", duration: int = 8) -> str:
    submit = requests.post(
        f"{BASE}/tasks",
        headers={"Authorization": f"Bearer {API_KEY}"},
        json={
            "model": "seedance-2.5/text-to-video",
            "input": {
                "prompt": prompt,
                "aspect_ratio": aspect_ratio,
                "resolution": resolution,
                "duration": duration,
            },
        },
        timeout=30,
    )
    task_id = submit.json()["data"]["taskId"]

    while True:
        poll = requests.get(
            f"{BASE}/tasks/{task_id}",
            headers={"Authorization": f"Bearer {API_KEY}"},
            timeout=30,
        ).json()["data"]
        if poll["status"] == "success":
            return poll["output"][0]["url"]   # temporary link - download now
        if poll["status"] == "fail":
            raise RuntimeError(poll)
        time.sleep(5)

clip_url = generate_clip(
    "A barista's steady hand pours steamed milk from a stainless steel pitcher "
    "into a white ceramic cup of espresso, the stream folding into a rosetta "
    "swirl of latte art forming in real time, warm golden-hour light raking "
    "across the counter, a croissant and pastry soft-blurred in the background, "
    "close-up vertical framing, gentle steam, ambient cafe sound."
)

# the output URL expires (it carries an expireAt timestamp) - download and
# persist it to your own storage immediately, don't leave it as a hot link
video_bytes = requests.get(clip_url, timeout=60).content
open("clip.mp4", "wb").write(video_bytes)

The task response never echoes your original prompt back - only model, status, output, and timestamps - so keep your own record of what you submitted if you need to reproduce or vary a clip later.

Pricing: two tiers, no 1080p

Checked live against hiapi's pricing endpoint - seedance-2.5/text-to-video bills per second of output, with two resolution tiers and no 1080p option:

ResolutionPrice per second8-second clip
480p$0.1395~$1.12
720p$0.3019~$2.42

720p costs roughly 2.2x the 480p rate per second - worth generating drafts at 480p and only paying the 720p rate once a prompt is dialed in. Full parameter and pricing detail lives on the seedance-2.5/text-to-video model page; rates are current as of 2026-08 and can change, so check that page before budgeting a large batch.

Producing a short-form set, not just one clip

A single clip is a demo; a content calendar needs a batch. Treat each clip as an idempotent job keyed by prompt, so a re-run after a crash doesn't double-bill:

import hashlib

PROMPTS = [
    "A barista pours steamed milk into an espresso cup, rosetta latte art forming, golden-hour light, close-up vertical framing.",
    "Steam rising off a fresh pour-over coffee dripping through a paper filter, morning light through a cafe window, vertical framing.",
    "A hand tapping a bag of coffee beans onto a wooden scale, beans settling, soft cafe ambience, close-up vertical framing.",
]

def job_key(prompt: str) -> str:
    return hashlib.sha1(prompt.encode()).hexdigest()[:12]

results = {}
for prompt in PROMPTS:
    key = job_key(prompt)
    if key in results:          # already generated this run
        continue
    results[key] = generate_clip(prompt, resolution="480p", duration=6)
    # persist each result immediately - see download step above

Generate the set at 480p first, review which clips actually work for the campaign, then only re-run the winners at 720p. That two-pass habit is the single biggest lever on cost when you're producing volume instead of a one-off.

How this compares to Seedance 2.0

If you've used Seedance 2.0, the text-to-video tier on 2.5 keeps the same submit-poll-download task shape - nothing changes on the integration side. The practical differences worth knowing before you migrate a pipeline: 2.5 adds native audio sync to every clip by default, and its resolution ladder is simpler (480p/720p only, versus 2.0's extra tiers). If your workflow depends on a resolution 2.5 doesn't offer, check the model's own page for current specs before assuming parity.

FAQ

Does seedance-2.5/text-to-video support 1080p? No - as of 2026-08 the model exposes only 480p and 720p. If you need 1080p output, check the model catalog for a model that supports it before building a pipeline around this endpoint.

Is the audio real, or do I need to add it separately? It's generated by the model as part of the task - the pour sound and ambient cafe hum in the demo clip above weren't added in post. You can still layer your own audio afterward if you need brand-specific music or voiceover.

How long does a clip take to generate? Task completion time scales with duration and resolution; budget roughly one to a few minutes per clip and always poll rather than assuming a fixed wait.

Can I reuse a prompt across aspect ratios for different platforms? Yes - aspect_ratio is a separate parameter from the prompt, so the same prompt can be resubmitted at 9:16 for TikTok/Reels and 16:9 for YouTube without rewriting the scene description.

What happens if the output URL expires before I download it? You'll need to resubmit the task - the output[0].url is a temporary link tied to an expireAt timestamp, not permanent storage. Download and persist every clip immediately after the task reports success.

Takeaways

  • seedance-2.5/text-to-video is a prompt-in, clip-out endpoint for short-form content - pick 480p for drafts and social filler, 720p when the clip is the final asset.
  • Budget by duration, not by clip: 720p runs about 2.2x the per-second cost of 480p, so an 8-second 720p clip already costs roughly $2.42.
  • Task output URLs expire - download and persist to permanent storage immediately after polling succeeds.
  • Native audio sync means short-form filler content often doesn't need a separate voiceover or SFX pass.
  • There's no 1080p tier on this model yet - check the model page before building a pipeline that assumes it.

Ready to try it? Head to the seedance-2.5/text-to-video model page for the full parameter reference, or browse hiapi's full video model catalog to compare it against image-to-video options like Kling 3.0 Turbo for your next short-form batch.

Latest models

View all models
  • GPT Image 2From $0.007/image
  • Nano Banana 2From $0.051/image
  • Seedream 5.0 ProFrom $0.050/image
  • Seedance 2.5From $0.121/s

Explore models

TextImageVideoAudio
Back to blog
GPT Image 2From $0.007/image
Nano Banana 2From $0.051/image
Seedream 5.0 ProFrom $0.050/image
Seedance 2.5From $0.121/s
View all models
TextChat and reasoning
ImageGenerate and edit
VideoText and image to video
AudioSpeech and music
Start generating
View model pricing
View all articles
Seedance 2.5 Reference-to-Video for Short-Form TikTok and Reels Clips

Seedance 2.5 Reference-to-Video for Short-Form TikTok and Reels Clips

Grok Imagine Image 2.0 Image-to-Image Prompts: 4 Recipes With Real Outputs

Grok Imagine Image 2.0 Image-to-Image Prompts: 4 Recipes With Real Outputs

Grok Imagine 2.0 Text-to-Image Prompt Recipes: Copy-Paste Prompts With Real Outputs

Grok Imagine 2.0 Text-to-Image Prompt Recipes: Copy-Paste Prompts With Real Outputs

Using flux-2-klein-9b/text-to-image for E-Commerce Product Images via the hiapi API

Using flux-2-klein-9b/text-to-image for E-Commerce Product Images via the hiapi API

Flux-2-Klein-9b Image-to-Image for E-Commerce Product Photos

Flux-2-Klein-9b Image-to-Image for E-Commerce Product Photos

MiniMax H3 for Short-Form Video: A Hands-On Guide to the hiapi API

MiniMax H3 for Short-Form Video: A Hands-On Guide to the hiapi API

Start generating