影片 API 概覽
curl --request POST \
--url https://api.mixroute.ai/v1/video/generationsimport requests
url = "https://api.mixroute.ai/v1/video/generations"
response = requests.post(url)
print(response.text)const options = {method: 'POST'};
fetch('https://api.mixroute.ai/v1/video/generations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.mixroute.ai/v1/video/generations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.mixroute.ai/v1/video/generations"
req, _ := http.NewRequest("POST", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.mixroute.ai/v1/video/generations")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.mixroute.ai/v1/video/generations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
response = http.request(request)
puts response.read_body視頻系列
影片 API 概覽
選擇影片模型系列與參數文件,使用統一非同步任務流程。
POST
/
v1
/
video
/
generations
影片 API 概覽
curl --request POST \
--url https://api.mixroute.ai/v1/video/generationsimport requests
url = "https://api.mixroute.ai/v1/video/generations"
response = requests.post(url)
print(response.text)const options = {method: 'POST'};
fetch('https://api.mixroute.ai/v1/video/generations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.mixroute.ai/v1/video/generations",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.mixroute.ai/v1/video/generations"
req, _ := http.NewRequest("POST", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.mixroute.ai/v1/video/generations")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.mixroute.ai/v1/video/generations")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
response = http.request(request)
puts response.read_body先選擇影片模型系列,檢視對應請求結構與範例。MixRoute 使用統一非同步任務流程,各模型保留自己的生成參數。
使用帳戶 模型廣場 或 模型列表 中的完整
影片分類
| 系列 | 參數文件 | 請求結構 |
|---|---|---|
| Seedance | Seedance | model、prompt、asset 位於頂層,所有廠商生成欄位置於 metadata。 |
| Doubao | Doubao | doubao-seedance-* 路由;頂層 model/prompt/asset,廠商欄位放入 metadata。 |
| Dreamina | Dreamina | dreamina-seedance-* 路由;頂層 model/prompt/asset,廠商欄位放入 metadata。 |
| Google Veo | Veo | 頂層 model/prompt;生成項使用扁平 metadata.durationSeconds、metadata.aspectRatio 等。 |
| MiniMax H3 | MiniMax H3 | 頂層 model/prompt;H3 欄位位於 metadata.content、metadata.resolution、metadata.duration、metadata.ratio。 |
| 通義萬相 | 通義萬相 | 頂層 model;原生 input 與 parameters 巢狀在 metadata 中。 |
| OpenAI Sora 2 | Sora 2 | 參見已有獨立模型頁與下載介面。 |
| Gemini Omni | Gemini Omni | 參見已有獨立模型頁,不套用 Veo 生成欄位。 |
介面與認證
| 操作 | 方法與 URL |
|---|---|
| 建立任務 | POST https://api.mixroute.ai/v1/video/generations |
| 查詢任務 | GET https://api.mixroute.ai/v1/video/generations/{task_id} |
| Sora 下載 | GET https://api.mixroute.ai/v1/video/generations/download?id={task_id} |
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
model ID。廠商釋出模型不代表當前 MixRoute 帳戶已開通。
呼叫流程
- 選擇分類文件,按該模型的結構構造請求。
- 提交後儲存 MixRoute
task_id(部分路由同時返回id)。 - 使用 查詢影片任務 輪詢至成功或終止失敗。提交成功不等於影片已完成。
- 讀取當前路由的結果 URL;需要獨立下載的 Sora 路由使用 下載影片。
提交響應
以下為閘道器響應結構示意:{
"task_id": "TASK_ID",
"id": "TASK_ID",
"object": "video",
"model": "dreamina-seedance-2-0-260128",
"status": "queued"
}
儲存提交返回的任務 ID,不要替換成上游 operation name 或 file ID。提交超時不等於沒有建立任務;再次提交前先檢查控制台,避免重複計費任務。