curl --request POST \
--url https://toapis.com/v1/uploads/videos \
--header 'Authorization: Bearer <token>' \
--form 'file=@/path/to/your/video.mp4'
import requests
with open('video.mp4', 'rb') as f:
response = requests.post(
"https://toapis.com/v1/uploads/videos",
headers={
"Authorization": "Bearer your-ToAPIs-key"
},
files={
"file": f
}
)
result = response.json()
video_url = result['data']['url']
print(f"URL видео: {video_url}")
(async () => {
const fileInput = document.createElement('input');
fileInput.type = 'file';
fileInput.accept = 'video/mp4,video/webm,video/quicktime';
fileInput.click();
await new Promise(resolve => fileInput.onchange = resolve);
const formData = new FormData();
formData.append('file', fileInput.files[0]);
const uploadResponse = await fetch('https://toapis.com/v1/uploads/videos', {
method: 'POST',
headers: {
'Authorization': 'Bearer your-ToAPIs-key'
},
body: formData
});
const uploadResult = await uploadResponse.json();
console.log('Результат загрузки:', uploadResult);
})();
{
"success": true,
"message": "",
"data": {
"id": "upload_abc12345",
"url": "https://files.toapis.com/uploads/123/videos/1737568800_abc12345.mp4",
"mime_type": "video/mp4",
"size": 1892345
}
}
{
"success": false,
"message": "Unsupported or invalid video file. Allowed: MP4, WebM, MOV"
}
{
"success": false,
"message": "Video too large. Maximum size is 50MB"
}
Загрузка файлов
Загрузка видео
Загрузите видео и получите URL для использования в API генерации видео
POST
/
v1
/
uploads
/
videos
curl --request POST \
--url https://toapis.com/v1/uploads/videos \
--header 'Authorization: Bearer <token>' \
--form 'file=@/path/to/your/video.mp4'
import requests
with open('video.mp4', 'rb') as f:
response = requests.post(
"https://toapis.com/v1/uploads/videos",
headers={
"Authorization": "Bearer your-ToAPIs-key"
},
files={
"file": f
}
)
result = response.json()
video_url = result['data']['url']
print(f"URL видео: {video_url}")
(async () => {
const fileInput = document.createElement('input');
fileInput.type = 'file';
fileInput.accept = 'video/mp4,video/webm,video/quicktime';
fileInput.click();
await new Promise(resolve => fileInput.onchange = resolve);
const formData = new FormData();
formData.append('file', fileInput.files[0]);
const uploadResponse = await fetch('https://toapis.com/v1/uploads/videos', {
method: 'POST',
headers: {
'Authorization': 'Bearer your-ToAPIs-key'
},
body: formData
});
const uploadResult = await uploadResponse.json();
console.log('Результат загрузки:', uploadResult);
})();
{
"success": true,
"message": "",
"data": {
"id": "upload_abc12345",
"url": "https://files.toapis.com/uploads/123/videos/1737568800_abc12345.mp4",
"mime_type": "video/mp4",
"size": 1892345
}
}
{
"success": false,
"message": "Unsupported or invalid video file. Allowed: MP4, WebM, MOV"
}
{
"success": false,
"message": "Video too large. Maximum size is 50MB"
}
Для пользователей из материкового Китая: используйте
https://toapis.cn в качестве эндпоинта (Base URL). Замените https://toapis.com на https://toapis.cn во всех примерах этого документа.Playground в документации не поддерживает загрузку файлов: используйте примеры cURL, Python или JavaScript ниже для тестирования.
Зачем загружать видео заранее?
- Единый формат входных данных - локальное видео сначала загружается и превращается в публичный URL
- Повторное использование - один и тот же URL можно использовать в нескольких задачах генерации
Authorizations
string
обязательно
Используйте Bearer Token для аутентификацииПолучить API Key: страница управления API Key
Authorization: Bearer YOUR_API_KEY
Body
file
обязательно
Видео файлПоддерживаемые форматы:
- MP4 (.mp4)
- WebM (.webm)
- MOV (.mov)
- Максимальный размер файла: 50MB
string
Назначение загрузки (необязательно)Значение по умолчанию:
generationResponse
boolean
Успешность запроса
object
curl --request POST \
--url https://toapis.com/v1/uploads/videos \
--header 'Authorization: Bearer <token>' \
--form 'file=@/path/to/your/video.mp4'
import requests
with open('video.mp4', 'rb') as f:
response = requests.post(
"https://toapis.com/v1/uploads/videos",
headers={
"Authorization": "Bearer your-ToAPIs-key"
},
files={
"file": f
}
)
result = response.json()
video_url = result['data']['url']
print(f"URL видео: {video_url}")
(async () => {
const fileInput = document.createElement('input');
fileInput.type = 'file';
fileInput.accept = 'video/mp4,video/webm,video/quicktime';
fileInput.click();
await new Promise(resolve => fileInput.onchange = resolve);
const formData = new FormData();
formData.append('file', fileInput.files[0]);
const uploadResponse = await fetch('https://toapis.com/v1/uploads/videos', {
method: 'POST',
headers: {
'Authorization': 'Bearer your-ToAPIs-key'
},
body: formData
});
const uploadResult = await uploadResponse.json();
console.log('Результат загрузки:', uploadResult);
})();
{
"success": true,
"message": "",
"data": {
"id": "upload_abc12345",
"url": "https://files.toapis.com/uploads/123/videos/1737568800_abc12345.mp4",
"mime_type": "video/mp4",
"size": 1892345
}
}
{
"success": false,
"message": "Unsupported or invalid video file. Allowed: MP4, WebM, MOV"
}
{
"success": false,
"message": "Video too large. Maximum size is 50MB"
}