OpenAI shut down the Sora API on September 24, 2026. sora-2, sora-2-pro and the Videos API no longer accept requests, and OpenAI says there is "no one-to-one replacement API." We gave five video models on HiAPI the same prompt Sora users would write, a cook at a night market with fire, motion and one spoken line, and all five delivered it with sound.
| Model on HiAPI | 720p with sound, per second | 8-second clip | Longest clip | Time for our 8 s clip |
|---|---|---|---|---|
| Wan 3.0 | $0.08 | $0.64 | 30 s | 6.8 min |
| Kling 3.0 Omni | $0.129 | $1.03 | 15 s | 4.8 min |
| HappyHorse 1.1 | $0.16 | $1.28 | 15 s | 2.4 min |
| Seedance 2.5 | $0.204 | $1.63 | 30 s | 5.2 min |
| Veo 3.1 Fast | $0.25 | $2.00 | 8 s | 1.4 min |
| Sora 2 (shut down) | $0.10 | $0.80 | 20 s | — |
HiAPI prices and our test runs on October 6, 2026. Sora 2 shows OpenAI's last published 720p price. Every charge in our billing log matched these prices.
The short answer: Wan 3.0 is cheaper than Sora 2 was, at $0.08 per second, and runs up to 30 seconds. Veo 3.1 Fast is the quickest. Seedance 2.5 is the pick when you need 30-second single shots with lots of reference images.
The Same Prompt on Five Models
At a night market food stall, a street cook tosses noodles in a wok and flames leap up from the pan.
She looks into the camera, smiles and says: 'Two more minutes!' Handheld medium shot, warm string lights,
steam and smoke, realistic. Sound: sizzling wok, crowd chatter, her voice.
Each clip is 8 seconds at 720p. Press play with sound on.
Wan 3.0. $0.64. The biggest flame and the busiest market of the five.
Kling 3.0 Omni. Current estimate: $1.03. Ends on a clean close-up smile.
HappyHorse 1.1. $1.28.
Seedance 2.5. Current estimate: $1.63. The only one that cut from the wok to a close-up, like an edited shot.
Veo 3.1 Fast. $2.00. Done in under a minute and a half; it said the line twice.

We ran each soundtrack through speech recognition: all five say "Two more minutes!" clearly, with sizzling and crowd noise behind it. All five put real flames on screen. The differences are in style and pacing, not in whether the prompt was followed.
Which One to Use
- Lowest cost: Wan 3.0. $0.08 per second at 720p, 20% under Sora 2's old price, and up to 30 seconds per clip. It was the slowest in our test, so it suits batch jobs more than live previews.
- Fastest: Veo 3.1 Fast. 83 seconds of processing for our clip. Clips are 4, 6 or 8 seconds.
- Long single shots and many references: Seedance 2.5. Up to 30 seconds, and up to 30 reference images, 10 videos and 10 audio clips. See Seedance 2.5 explained.
- Balanced price and quality: Kling 3.0 Omni at $0.129 per second with sound, or HappyHorse 1.1 at $0.16.
Moving Your Sora Code
A Sora request created a video job, then you polled it and downloaded the result. HiAPI works the same way, with one endpoint for every model:
| Sora API | HiAPI |
|---|---|
POST /v1/videos | POST /v1/tasks |
model: "sora-2" | model: "wan3.0-video" (or another model ID) |
prompt, seconds, size | input.prompt, input.duration, input.resolution + input.aspect_ratio |
Poll GET /v1/videos/{id} | Poll GET /v1/tasks/{taskId} |
| Download the video content | Download output[0].url |
This script is the whole flow. We ran it as written; it saved a 5-second 480p clip with sound for $0.20:
import os
import time
import requests
API = "https://api.hiapi.ai/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"}
task_id = requests.post(f"{API}/tasks", headers=HEADERS, json={
"model": "wan3.0-video",
"input": {
"prompt": "A street cook tosses noodles in a wok at a night market, flames leap up, she smiles at the camera.",
"resolution": "480P",
"aspect_ratio": "16:9",
"duration": 5,
"audio": True,
},
}).json()["data"]["taskId"]
while True:
task = requests.get(f"{API}/tasks/{task_id}", headers=HEADERS).json()["data"]
if task["status"] in ("success", "fail"):
break
time.sleep(10)
if task["status"] == "success":
with open("video.mp4", "wb") as f:
f.write(requests.get(task["output"][0]["url"]).content)
print("saved video.mp4")
else:
print("failed:", task.get("error"))
It needs pip install requests and a HiAPI API key in HIAPI_API_KEY.
To use another model, change model and the input fields:
| Model ID | Sound field | Resolution values | Duration |
|---|---|---|---|
wan3.0-video | audio: true | 480P, 720P, 1080P | 2–30 |
kling-3.0-omni/text-to-video | sound: true | 720p, 1080p, 4K | 3–15 |
happyhorse-1.1/text-to-video | (always on) | 720p, 1080p | 3–15 |
seedance-2.5/text-to-video | generate_audio: true | 720p, 1080p | 4–30 |
veo-3.1-fast/text-to-video | generate_audio: true | 720p, 1080p, 4k | 4, 6 or 8 |
Each model also has an image-to-video version. The model pages have a playground for testing prompts before you write code: Wan 3.0, Kling 3.0 Omni, HappyHorse 1.1, Seedance 2.5 and Veo 3.1 Fast.
FAQ
Is the Sora API shut down?
Yes. OpenAI removed the Sora 2 models and the Videos API on September 24, 2026. The Sora app and website closed earlier, on April 26, 2026.
What is the best Sora API alternative?
It depends on what you need. In our test, Wan 3.0 was the cheapest at $0.08 per second, Veo 3.1 Fast was the fastest, and Seedance 2.5 handles 30-second shots with many references. All five models we tested followed the prompt and generated speech and sound.
Is there a cheaper alternative to Sora 2?
Wan 3.0 on HiAPI costs $0.08 per second at 720p with sound, below Sora 2's last price of $0.10 per second.
Did OpenAI release a replacement for Sora?
No. OpenAI's model page says "There is no one-to-one replacement API."
Can I still use my Sora videos?
OpenAI said it would delete Sora data after its final export window. Download anything you still need from OpenAI's Sora export page as soon as possible.




