Alibaba (Qwen) / wan2.7-videoedit
WAN 2.7 Video Edit stands out for Wan 2.7 multimodal video editing and Local edits, extension, and frame expansion. It is best suited to prompt-guided video revision and object replacement and scene extension.
Context
—
Not applicable
Unit rate
$0.0562
/ second
Output
Included
Quality
#43
Elo 1235
Overview
WAN 2.7 Video Edit stands out for Wan 2.7 multimodal video editing and Local edits, extension, and frame expansion. It is best suited to prompt-guided video revision and object replacement and scene extension.
Video output
Can produce video output for generation or editing workflows.
Model maker
Alibaba (Qwen)
Called through SeaLink's unified account, balance, and OpenAI-compatible API.
Protocol
Video generation API
Base URL: https://api.sealink.io/v1
Pricing
The final charge follows generated usage and the applicable selector, such as resolution, duration, input type, or provider unit.
API
model
wan2.7-videoeditbase_url
https://api.sealink.io/v1Auth
Bearer $SEALINK_API_KEY# Step 1: Submit video editcurl https://api.sealink.io/v1/video/edits \-H "Authorization: Bearer $SEALINK_API_KEY" \-H "Content-Type: application/json" \-d '{"model": "wan2.7-videoedit","prompt": "Make the motion smoother and keep the original subject","size": "1280x720","duration": 3,"video_url": "https://storage.googleapis.com/falserverless/example_inputs/wan_animate_input_video.mp4"}'# Step 2: Poll for result (use task id from submit response)curl https://api.sealink.io/v1/tasks/TASK_ID \-H "Authorization: Bearer $SEALINK_API_KEY"
import requests, timeapi_key = "<your-sealink-key>"base = "https://api.sealink.io"# Submitresp = requests.post(f"{base}/v1/video/edits", json={"model": "wan2.7-videoedit","prompt": "Make the motion smoother and keep the original subject","size": "1280x720","duration": 3,"video_url": "https://storage.googleapis.com/falserverless/example_inputs/wan_animate_input_video.mp4"}, headers={"Authorization": f"Bearer {api_key}"})task = resp.json()task_id = task["id"]# Poll until completewhile True:time.sleep(5)r = requests.get(f"{base}/v1/tasks/{task_id}",headers={"Authorization": f"Bearer {api_key}"})v = r.json()if v["status"] == "completed":print(v.get("data") or v.get("upstream_response") or v)break
const base = "https://api.sealink.io";const headers = { Authorization: `Bearer ${process.env.SEALINK_API_KEY}` };// Submitconst resp = await fetch(`${base}/v1/video/edits`, {method: "POST",headers: { ...headers, "Content-Type": "application/json" },body: JSON.stringify({model: "wan2.7-videoedit",prompt: "Make the motion smoother and keep the original subject",size: "1280x720",duration: 3,video_url: "https://storage.googleapis.com/falserverless/example_inputs/wan_animate_input_video.mp4"}),});const task = await resp.json();const taskId = task.id;// Poll until completelet video;do {await new Promise(r => setTimeout(r, 5000));const r = await fetch(`${base}/v1/tasks/${taskId}`, { headers });video = await r.json();} while (video.status !== "completed");console.log(video.data || video.upstream_response || video);