curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "grok-video-1.0",
"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-video-1.0",
"prompt": "Animate this dog running across the field",
"reference_images": ["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-video-1.0",
"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-video-1.0',
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": "video_abc123def456",
"object": "generation.task",
"model": "grok-video-1.0",
"status": "queued",
"progress": 0,
"created_at": 1768380224,
"metadata": {}
}
Grok Video
Grok 動画生成
Generate high-quality videos using Grok Video model
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-video-1.0",
"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-video-1.0",
"prompt": "Animate this dog running across the field",
"reference_images": ["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-video-1.0",
"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-video-1.0',
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": "video_abc123def456",
"object": "generation.task",
"model": "grok-video-1.0",
"status": "queued",
"progress": 0,
"created_at": 1768380224,
"metadata": {}
}
中国本土のユーザー向け: 中国本土のユーザーは
https://toapis.cn を API エンドポイント(Base URL)としてご利用ください。本ドキュメント内の例では https://toapis.com を https://toapis.cn に置き換えてください。- Grok Video generation model
- Select
grok-video-1.0model via the model parameter - Supports text-to-video and image-to-video
- Async task management, query results via task ID
Important Change: For better performance and cost control, we no longer support passing base64 image data directly in
reference_images. Please use the Upload 画像API to upload images first, then call this API with the returned URL.Authorizations
string
必須
All API requests require Bearer Token authenticationGet API Key: Visit the API Key Management Page to obtain your API KeyAdd to request headers:
Authorization: Bearer YOUR_API_KEY
Body
string
デフォルト:"grok-video-1.0"
必須
Video generation model nameSupported models:
grok-video-1.0- Grok video generation model
"grok-video-1.0"string
必須
Text description for video generation
integer
デフォルト:"8"
Video duration in secondsSupported range:
1–15 secondsstring
デフォルト:"720p"
Video resolutionSupported values:
480p, 720pstring
Video aspect ratioSupported formats:
16:9(landscape)9:16(portrait)3:2(landscape)2:3(portrait)1:1(square)
string
Optional main image URL. Only public
http:// or https:// URLs are supported.string[]
Array of reference image URLs for image-to-video generation⚠️ Only URL format is supported (base64 is no longer supported)
- Publicly accessible image URLs (http:// or https://)
- Up to 8 images total across
imageandreference_images - Use the Upload 画像API to upload local images and get URLs
レスポンス
string
Unique task identifier for querying task status
string
Object type, always
generation.taskstring
モデル name used
string
Task status
queued- Waiting to be processedin_progress- Processingcompleted- Successfully completedfailed- Failed
integer
Task creation timestamp (Unix timestamp)
integer
Task progress, usually
0 after submissionobject
Task metadata
curl --request POST \
--url https://toapis.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "grok-video-1.0",
"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-video-1.0",
"prompt": "Animate this dog running across the field",
"reference_images": ["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-video-1.0",
"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-video-1.0',
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": "video_abc123def456",
"object": "generation.task",
"model": "grok-video-1.0",
"status": "queued",
"progress": 0,
"created_at": 1768380224,
"metadata": {}
}