Руководство
Руководство по интеграции Wan 3.0 API: curl, Python и все параметры
Как вызывать Wan 3.0 Standard: отправка задачи и получение результата, режимы первого/последнего кадра и референсов, все параметры, типичные ошибки, 480P за 5 секунд — $0.20.
Wan 3.0 Standard (wan3.0-video) в HiAPI работает через единый асинхронный интерфейс: отправка через POST /v1/tasks возвращает taskId, а результат забирается через GET /v1/tasks/{taskId}. Достаточно одного промпта, чтобы получить видео со звуком; можно также добавить первый кадр, последний кадр или до 10 референсных изображений, 5 референсных видео и 5 референсных аудио для совместного управления генерацией. В этой статье приведены готовые к запуску примеры на curl и Python, все актуальные параметры и несколько моментов, на которые стоит обратить внимание перед запуском в продакшен.
Сначала о цене
| Разрешение | За секунду | За 5 секунд |
|---|---|---|
| 480P | $0.04 | $0.20 |
| 720P | $0.08 | $0.40 |
| 1080P (по умолчанию) | $0.16 | $0.80 |
Текущие цены HiAPI, проверены 18 октября 2026 г. Звук включён по умолчанию и не оплачивается отдельно.
Обратите внимание на значения по умолчанию: если не указать resolution, будет 1080P; если не указать duration, будет 5 секунд — итого $0.80 за видео. При тестировании промптов не забывайте явно указывать "resolution": "480P".
Для более быстрой генерации можно использовать ускоренную версию wan3.0-video-prime — цена более чем вдвое выше стандартной (480P — $0.0875 за секунду).
Реальный готовый ролик
480P, 16:9, 5 секунд, со звуком:
A steaming noodle stall at a night market, close on the cook's hands as she lifts a tangle of noodles from a boiling pot and swirls them into a blue-rimmed bowl; slow push-in, warm tungsten light against cool blue street glow, steam drifting through the frame. Sound: rolling boil, the clink of a ladle, crowd murmur and a scooter passing in the distance.
Сгенерировать по этому промпту →
wan3.0-video, 480P, 5 секунд, $0.20.
Запускаем первый запрос
Подготовка: создайте API-ключ в консоли. Новым пользователям при регистрации начисляется 200 кредитов.
curl: отправка задачи
curl -s -X POST https://api.hiapi.ai/v1/tasks \
-H "Authorization: Bearer $HIAPI_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "wan3.0-video",
"input": {
"prompt": "A steaming cup of coffee on a wooden table, soft morning light, gentle steam rising. Sound: a quiet cafe.",
"resolution": "480P",
"duration": 5,
"aspect_ratio": "16:9"
}
}'
Сразу возвращается taskId, генерация идёт в фоновом режиме:
{"code": 200, "message": "success", "data": {"taskId": "tk-hiapi-..."}}
curl: получение результата
curl -s https://api.hiapi.ai/v1/tasks/tk-hiapi-... \
-H "Authorization: Bearer $HIAPI_KEY"
Когда data.status становится success, data.output[0].url — это адрес видео. Временная ссылка истекает примерно через 7 дней, поэтому скачивайте и сохраняйте как можно скорее. fail означает ошибку, деньги не списываются.
Python
import os, time, requests
KEY = os.environ["HIAPI_KEY"]
BASE = "https://api.hiapi.ai/v1"
H = {"Authorization": f"Bearer {KEY}", "Content-Type": "application/json"}
r = requests.post(f"{BASE}/tasks", headers=H, json={
"model": "wan3.0-video",
"input": {
"prompt": "A steaming cup of coffee on a wooden table, soft morning light, gentle steam rising. Sound: a quiet cafe.",
"resolution": "480P",
"duration": 5,
},
})
task_id = r.json()["data"]["taskId"]
while True:
d = requests.get(f"{BASE}/tasks/{task_id}", headers=H).json()["data"]
if d["status"] in ("success", "fail"):
break
time.sleep(10)
print(d["output"][0]["url"] if d["status"] == "success" else d)
Короткие видео обычно генерируются за несколько минут, интервала опроса в 10 секунд достаточно.
Все параметры
| Поле | Обязательно | Значения | Описание |
|---|---|---|---|
prompt |
Да | Текст | Сцена, действия, камера, свет и звук описываются здесь; в режиме референсов используйте Image1, Video1, Audio1 для ссылки на материалы |
resolution |
Нет | 480P / 720P / 1080P (по умолчанию) |
Определяет цену за секунду |
duration |
Нет | Целое число 2–30, по умолчанию 5 | Суммарная длительность референсных видео плюс длительность результата не должна превышать 30 секунд |
aspect_ratio |
Нет | adaptive (по умолчанию) / 16:9 / 4:3 / 1:1 / 3:4 / 9:16 |
adaptive выбирает автоматически по материалам и промпту |
audio |
Нет | Логическое значение, по умолчанию true |
Включать ли синхронизированную звуковую дорожку |
seed |
Нет | 0–2147483647 | Фиксация для воспроизводимости |
first_frame_url |
Нет | 1 URL изображения | Режим первого кадра |
last_frame_url |
Нет | 1 URL изображения | Используется вместе с первым кадром, задаёт последний кадр |
reference_image_urls |
Нет | До 10 | Референсные изображения |
reference_video_urls |
Нет | До 5, каждый 1–15 секунд, в сумме ≤15 секунд | Референсные видео |
reference_audio_urls |
Нет | До 5 файлов WAV/MP3 | Используются вместе с изображениями или видео |
reference_file_urls |
Нет | До 1 | Документ или презентация |
reference_link_urls |
Нет | До 1 | Веб-страница без необходимости авторизации |
Два режима нельзя смешивать: режим первого/последнего кадра и режим референсов reference_* взаимоисключающие, в одном запросе можно выбрать только один.
Пример записи в режиме референсов:
{
"model": "wan3.0-video",
"input": {
"prompt": "Use Image1 as the product: slow quarter orbit around it on a wooden counter, soft morning window light. Sound: gentle pouring water.",
"reference_image_urls": ["https://example.com/product.jpg"],
"resolution": "480P",
"duration": 5
}
}
Типичные ошибки
Все они возвращаются синхронно при отправке с HTTP 400, задача не создаётся, деньги не списываются:
duration: maximum: got 99, want 30: длительность превышает 30 секунд.resolution: value must be one of '480P', '720P', '1080P': в разрешении должна быть заглавная P.additional properties 'negative_prompt', 'image_urls' not allowed: у этой модели нет негативного промпта; поле референсных изображений называетсяreference_image_urls, а неimage_urls.- Неверный API-ключ возвращает HTTP 401, недостаток средств — 402.
Если задача уже создана, но завершилась ошибкой, в результате запроса будет status: "fail", при этом HTTP-код остаётся 200, поэтому нужно смотреть на data.status.
На что обратить внимание перед запуском в продакшен
- Используйте callback вместо опроса: добавьте на верхний уровень тела запроса
"callback": {"url": "https://ваш-домен/hiapi/callback", "when": "final"}, и HiAPI уведомит вас по завершении задачи.callbackразмещается на верхнем уровне, не внутриinput. - Защита от повторного списания: при отправке передавайте заголовок
Idempotency-Key. При повторе после сетевого таймаута используйте тот же ключ — вернётся прежнийtaskId, и новая задача не создастся. - Своевременно сохраняйте: временная ссылка истекает примерно через 7 дней. Если нужно долгосрочное хранение, передайте при создании
"storage": "persistent"или переведите в постоянное хранилище позже, см. документацию по созданию задачи.
Частые вопросы
Можно ли обойтись без референсных изображений?
Да. Достаточно указать prompt, чтобы получить видео, референсные материалы необязательны.
Звук стоит дороже?
Нет. audio включён по умолчанию, цена зависит только от разрешения и количества секунд. Если звук не нужен, передайте false.
Нужно вертикальное видео?
Передайте aspect_ratio со значением 9:16.
Можно ли использовать первый кадр вместе с референсными изображениями?
Нет, нужно выбрать что-то одно.
Больше вариантов написания промптов — в сборнике промптов для Wan 3.0, для всех 4 сценариев приложены реальные готовые ролики. Можно также сразу скопировать промпт про лапшичную выше и сгенерировать ролик за $0.20.
Похожие статьи
Все статьи →-
Руководство
Как вызвать hailuo-2.3-fast/image-to-video через HiAPI API: практика с curl и Python
Первый рабочий запрос к быстрому и недорогому уровню генерации видео по изображению — от ID модели до загрузки MP4
-
Руководство
Как вызывать hailuo-2.3/text-to-video через API HiAPI: curl, Python и рабочие примеры запросов
-
Руководство
Использование Kandinsky 6.0 Pro для преобразования текста в видео на HiAPI: руководство по curl и Python
Практическая демонстрация с упором на запросы: построение вызова от промпта до видеоклипа, отправка запроса, опрос статуса завершения и скачивание результата