Qwen3.8 Flash API
Run qwen/qwen3.8-flash through FastInfra's API.
Pay per token. Video is billed as 1,000 output tokens per second of generated video.
Qwen3.8 Flash pricing
Billed per token. 1,000 output tokens = 1 second of video ($0.00/s at this list price).
| Direction | Price per 1M tokens |
|---|---|
| Input | $0.16 |
| Output | $0.49 |
| Per second of video | $0.00 (1,000 output tokens) |
Served by 2 providers
Requests route to OpenRouter by default (cheapest).
Pin a specific provider with the :provider suffix.
| Provider | Upstream model ID |
|---|---|
| openrouter | qwen/qwen3.8-flash |
| together | Qwen/Qwen3.8-Flash |
Call Qwen3.8 Flash in 30 seconds
Same FastInfra API key and base URL. POST /videos/generations (HTTP 202), then poll GET /videos/jobs/{id} — not chat completions.
Python
import base64, json, time, urllib.request
headers = {"Authorization": "Bearer YOUR_API_KEY", "Content-Type": "application/json"}
req = urllib.request.Request(
"https://api.fastinfra.ai/v1/videos/generations",
data=json.dumps({
"model": "qwen/qwen3.8-flash",
"prompt": "A woman looks at the camera and says, welcome to FastInfra.",
"seconds": 5,
"size": "1280x704"
}).encode(),
headers=headers,
method="POST",
)
with urllib.request.urlopen(req, timeout=60) as resp:
job = json.load(resp)
while True:
time.sleep(2)
poll = urllib.request.Request(
f"https://api.fastinfra.ai/v1/videos/jobs/{job['id']}",
headers={"Authorization": "Bearer YOUR_API_KEY"},
)
with urllib.request.urlopen(poll, timeout=60) as resp:
payload = json.load(resp)
if payload["status"] == "completed":
break
if payload["status"] == "failed":
raise SystemExit(payload.get("error") or "video job failed")
open("clip.mp4", "wb").write(base64.b64decode(payload["data"][0]["b64_json"]))
curl
curl https://api.fastinfra.ai/v1/videos/generations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen/qwen3.8-flash",
"prompt": "A woman looks at the camera and says, welcome to FastInfra.",
"seconds": 5,
"size": "1280x704"
}'
# HTTP 202 — copy "id", then poll:
curl https://api.fastinfra.ai/v1/videos/jobs/JOB_ID \
-H "Authorization: Bearer YOUR_API_KEY"
Qwen3.8 Flash — common questions
How much does the qwen/qwen3.8-flash API cost?
On FastInfra, qwen/qwen3.8-flash costs $0.1575/1M input, $0.4935/1M output tokens ($0 per second of video). Billing is per token used, with no subscription.
Is qwen/qwen3.8-flash compatible with the OpenAI SDK?
Video models use the same FastInfra API key and base URL (https://api.fastinfra.ai/v1). POST https://api.fastinfra.ai/v1/videos/generations returns HTTP 202 with a job id; poll GET https://api.fastinfra.ai/v1/videos/jobs/{id} until status is completed.
Which providers serve qwen/qwen3.8-flash?
qwen/qwen3.8-flash is available from 2 provider(s): openrouter, together. Requests route to OpenRouter by default (cheapest); append ":provider" to the model ID to pin one.
Related models
Compare side by side: Qwen3.8 Flash vs Qwen2.5:0.5b · Qwen3.8 Flash vs Qwen2.5:1.5b · Qwen3.8 Flash vs Qwen2.5:3b