curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "grok-imagine-video-official",
"prompt": "A golden retriever running on a green field in sunny weather",
"duration": 10,
"resolution": "720p",
"aspect_ratio": "16:9"
}'
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "grok-imagine-video-official",
"prompt": "Animate this dog running across the field",
"image": "https://example.com/dog.jpg",
"duration": 10,
"resolution": "480p",
"aspect_ratio": "16:9"
}'
import requests
response = requests.post(
"https://toapis.com/v1/videos/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "grok-imagine-video-official",
"prompt": "A golden retriever running on a green field in sunny weather",
"duration": 10,
"resolution": "720p",
"aspect_ratio": "16:9"
}
)
task = response.json()
print(f"Task ID: {task['id']}")
print(f"Status: {task['status']}")
const response = await fetch('https://toapis.com/v1/videos/generations', {
method: 'POST',
headers: {
'Authorization': 'Bearer your-ToAPIs-key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'grok-imagine-video-official',
prompt: 'A golden retriever running on a green field in sunny weather',
duration: 10,
resolution: '720p',
aspect_ratio: '16:9'
})
});
const task = await response.json();
console.log(`Task ID: ${task.id}`);
console.log(`Status: ${task.status}`);
{
"id": "tsk_vid_01M59KNFZA2N4QFP0TMGACYH98",
"object": "generation.task",
"model": "grok-imagine-video-official",
"status": "queued",
"progress": 0,
"created_at": 1768380224,
"metadata": {}
}
Grok Imagine Video (Official)
Grok Imagine Video Генерация видео (официальный канал)
Генерация высококачественных видео через официальный канал Grok Imagine Video
POST
/
v1
/
videos
/
generations
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "grok-imagine-video-official",
"prompt": "A golden retriever running on a green field in sunny weather",
"duration": 10,
"resolution": "720p",
"aspect_ratio": "16:9"
}'
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "grok-imagine-video-official",
"prompt": "Animate this dog running across the field",
"image": "https://example.com/dog.jpg",
"duration": 10,
"resolution": "480p",
"aspect_ratio": "16:9"
}'
import requests
response = requests.post(
"https://toapis.com/v1/videos/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "grok-imagine-video-official",
"prompt": "A golden retriever running on a green field in sunny weather",
"duration": 10,
"resolution": "720p",
"aspect_ratio": "16:9"
}
)
task = response.json()
print(f"Task ID: {task['id']}")
print(f"Status: {task['status']}")
const response = await fetch('https://toapis.com/v1/videos/generations', {
method: 'POST',
headers: {
'Authorization': 'Bearer your-ToAPIs-key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'grok-imagine-video-official',
prompt: 'A golden retriever running on a green field in sunny weather',
duration: 10,
resolution: '720p',
aspect_ratio: '16:9'
})
});
const task = await response.json();
console.log(`Task ID: ${task.id}`);
console.log(`Status: ${task.status}`);
{
"id": "tsk_vid_01M59KNFZA2N4QFP0TMGACYH98",
"object": "generation.task",
"model": "grok-imagine-video-official",
"status": "queued",
"progress": 0,
"created_at": 1768380224,
"metadata": {}
}
Для пользователей из материкового Китая: используйте
https://toapis.cn в качестве эндпоинта (Base URL). Замените https://toapis.com на https://toapis.cn во всех примерах этого документа.- Модель генерации видео Grok Imagine через официальный канал
- Выбор модели
grok-imagine-video-officialчерез параметр model - Поддержка генерации из текста, из изображения и по нескольким референсным изображениям
- Асинхронное управление задачами, запрос результатов по ID задачи
- Продление видео см. в Grok Imagine Video Extend
Важное изменение: Для повышения производительности и контроля затрат мы больше не поддерживаем передачу данных изображений в формате base64 в
reference_images. Пожалуйста, сначала загрузите изображения через API загрузки изображений, а затем вызовите данный API с полученным URL.Authorizations
string
обязательно
Все запросы к API требуют аутентификации по Bearer TokenПолучение API Key: посетите страницу управления API-ключамиДобавьте в заголовки запроса:
Authorization: Bearer YOUR_API_KEY
Body
string
по умолчанию:"grok-imagine-video-official"
обязательно
Название модели генерации видеоПоддерживаемые модели:
grok-imagine-video-official- модель Grok Imagine Video официального канала
"grok-imagine-video-official"string
обязательно
Текстовое описание для генерации видео
integer
по умолчанию:"8"
Длительность видео в секундахПоддерживаемый диапазон:
1–15 секундstring
по умолчанию:"720p"
Разрешение видеоПоддерживаемые значения:
480p, 720pstring
Соотношение сторон видеоПоддерживаемые форматы:
16:9(горизонтальный)9:16(вертикальный)4:3(горизонтальный)3:4(вертикальный)3:2(горизонтальный)2:3(вертикальный)1:1(квадратный)
string
Необязательный URL изображения первого кадра для генерации по изображению. Поддерживаются только публичные URL
http:// или https://.string[]
Массив URL референсных изображений для генерации по нескольким изображениям⚠️ Поддерживается только формат URL (base64 больше не поддерживается)
- Публично доступные URL изображений (http:// или https://)
- Всего до 7 изображений в
imageиreference_images - Используйте API загрузки изображений для загрузки локальных изображений и получения URL
Примечание о тарификации: Выходное видео тарифицируется посекундно по тарифу разрешения. Каждое входное изображение (
image / reference_images) тарифицируется за штуку. Запросы на продление дополнительно тарифицируют длительность входного видео посекундно — см. Extend.Response
string
Уникальный идентификатор задачи для проверки статуса
string
Тип объекта, всегда
generation.taskstring
Название использованной модели
string
Статус задачи
queued- ожидает обработкиin_progress- обрабатываетсяcompleted- успешно завершенаfailed- ошибка
integer
Временная метка создания задачи (Unix timestamp)
integer
Прогресс задачи, обычно
0 сразу после отправкиobject
Метаданные задачи
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "grok-imagine-video-official",
"prompt": "A golden retriever running on a green field in sunny weather",
"duration": 10,
"resolution": "720p",
"aspect_ratio": "16:9"
}'
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "grok-imagine-video-official",
"prompt": "Animate this dog running across the field",
"image": "https://example.com/dog.jpg",
"duration": 10,
"resolution": "480p",
"aspect_ratio": "16:9"
}'
import requests
response = requests.post(
"https://toapis.com/v1/videos/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "grok-imagine-video-official",
"prompt": "A golden retriever running on a green field in sunny weather",
"duration": 10,
"resolution": "720p",
"aspect_ratio": "16:9"
}
)
task = response.json()
print(f"Task ID: {task['id']}")
print(f"Status: {task['status']}")
const response = await fetch('https://toapis.com/v1/videos/generations', {
method: 'POST',
headers: {
'Authorization': 'Bearer your-ToAPIs-key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'grok-imagine-video-official',
prompt: 'A golden retriever running on a green field in sunny weather',
duration: 10,
resolution: '720p',
aspect_ratio: '16:9'
})
});
const task = await response.json();
console.log(`Task ID: ${task.id}`);
console.log(`Status: ${task.status}`);
{
"id": "tsk_vid_01M59KNFZA2N4QFP0TMGACYH98",
"object": "generation.task",
"model": "grok-imagine-video-official",
"status": "queued",
"progress": 0,
"created_at": 1768380224,
"metadata": {}
}