异步任务
图片和对话一个请求就返回结果,视频和音乐不行:先提交,拿回一个任务ID,轮询到状态显示完成,再去取文件。平台上每一类接口的写法略有不同——下面的格式都来自真实跑过的请求,不是抄厂商文档。
所有接口通用的规矩
- 任务ID就是你的收据,一定要留着:任务被接受就会计费,丢了ID就是付了钱却取不到结果。
- 轮询时遇到网络错误不等于任务失败。用同一个ID再查一次,千万不要重新提交。
- 按各类接口给的间隔轮询,不要更快。通常耗时是NextLabs自己跑出来的,平台排队时会更久。
- 接受之后的失败会在状态里带上原因,每个模型页都列出了见过的失败(「失败时」一节)。请求阶段的错误见错误码页。
- 结果URL是平台的,想留下的请自己下载。NextLabs替你保存的副本只留一天。
各类接口,按真实运行
- 提交
- POST /klingapi/text-to-video/kling-4.0
- 任务ID
- data.task_id
- 轮询
- GET https://api.openai-next.com/klingapi/tasks/{task_id} · 每5秒
- 状态
- data.status — 完成: SUCCESS; 失败: FAILURE
- 结果
- data.url
- 通常耗时
- 195秒
api站的可灵任务插件:模型名在路径里(POST /klingapi/text-to-video/{model} 等),文生视频用顶层prompt,图生 / Omni / 动作控制用contents[](prompt、first_frame / last_frame、refer_image、feature_video / base_video、image + video),参考素材带id后在提示词里用@id指代。
settings.duration(3–30秒)、settings.resolution(720p / 1080p)按出片秒数乘分辨率单价计费,失败退费;省略时按约10秒、1080p预扣。动作控制必填settings.character_orientation。GET /klingapi/tasks/{id}的data.status为SUCCESS时成片在data.url或data.outputs[].url,地址有时效。
- 提交
- POST /v1/videos
- 任务ID
- id
- 轮询
- GET https://api.openai-next.com/v1/videos/{task_id} · 每5秒
- 状态
- status — 完成: completed; 失败: failed, cancelled, expired
- 结果
- video_url
- 通常耗时
- 134秒
用JSON提交(Content-Type: application/json);multipart表单会丢掉image、first_frame、last_frame、video_url等Muse字段,任务照样完成并计费。
首帧用image(或first_frame),尾帧last_frame,多参考图images(最多约4张),都是图片URL或data URL,网关提交时就会下载。muse-video的seconds为1–10。画幅实测只有16:9(1280×720)和9:16(720×1280)两种,1:1、4:3、3:4都出成9:16。
长视频档(20–60秒)由多段原生视频按末帧接力拼成;带video_url时从源片末尾续写:成片先是源片、再接着往下拍。此时seconds是成片总长(不传就补到该档上限),源片要比它短至少1–2秒(20秒档≤18秒)。
GET /v1/videos/{id}的status为completed时,成片在顶层video_url(播客也是,指向MP3);地址有时效,请及时下载。轮询用创建时返回的id,运行中响应里的task_id是上游自己的编号。
生成超过100秒会被Cloudflare断开(HTTP 524),生图常会遇到:把接入地址换成美国节点https://us.api.openai-next.com,路由和API Key都不变,没有这个限制。
- 提交
- POST /_open/suno/music/generate
- 任务ID
- data.taskBatchId
- 轮询
- GET https://draw.openai-next.com/_open/suno/music/getState?taskBatchId={task_id} · 每10秒
- 状态
- data.taskStatus — 完成: finished; 失败: failed, error, cancelled
- 结果
- data.items[0].cld2AudioUrl
- 通常耗时
- 219秒
每次生成两首歌,结果在data.items[] 里。
音频链接位于临时目录,需要长期保存请及时下载。
OpenAI Videos
Gemini Omni FastGemini Omni Fast (no watermark)Gemini Omni Fast V2VGemini Omni Fast V2V (no watermark)Gemini Omni Extend 20sGemini Omni Extend 20s (no watermark)
- 提交
- POST /v1/videos
- 任务ID
- id
- 轮询
- GET https://api.openai-next.com/v1/videos/{task_id} · 每5秒
- 状态
- status — 完成: completed, succeeded, success; 失败: failed, error, cancelled, expired
- 通常耗时
- 128秒
必须使用multipart/form-data提交;JSON请求体会被上游拒绝(Unsupported content type)。
完成后如果没有直链,用GET /v1/videos/{id}/content下载(需要API Key,请在服务端调用)。
- 提交
- POST /seedance/api/v3/contents/generations/tasks
- 任务ID
- id
- 轮询
- GET https://api.openai-next.com/seedance/api/v3/contents/generations/tasks/{task_id} · 每5秒
- 状态
- status — 完成: succeeded; 失败: failed, expired, cancelled
- 结果
- content.video_url
- 通常耗时
- 137秒
异步任务:提交时预扣费,完成后按实际用量结算(实测480p 4秒预扣$0.80,结算后约$0.17)。
content.video_url是24小时有效的签名链接,需要及时转存。
- 提交
- POST /v1/videos/generations
- 任务ID
- request_id
- 轮询
- GET https://api.openai-next.com/v1/videos/{task_id} · 每5秒
- 状态
- status — 完成: done; 失败: failed, expired
- 结果
- video.url
- 通常耗时
- 27秒
MiniMax
- 提交
- POST /hailuo/v2/video_generation
- 任务ID
- task_id
- 轮询
- GET https://api.openai-next.com/hailuo/v2/query/video_generation/{task_id} · 每5秒
- 状态
- task.status — 完成: succeeded; 失败: failed
- 结果
- task.content.url
- 通常耗时
- 224秒
resolution必须大写,例如768P。
task.progress是0–1的小数,1表示完成。
Suno (api)
- 提交
- POST /suno-music/submit/music
- 任务ID
- data
- 轮询
- GET https://api.openai-next.com/suno-music/fetch/{task_id} · 每10秒
- 状态
- data.status — 完成: SUCCESS; 失败: FAILURE
- 结果
- data.data.clips[0].audio_url
- 通常耗时
- 117秒
api站的Suno任务插件:model固定suno-v6,引擎版本在mv(默认chirp-v6);input_type为10是灵感模式(gpt_description_prompt),20是自定义歌词(prompt + tags + title)。每次受理计一次费,通常出两首。
提交返回 { code: "success", data: 任务ID };GET /suno-music/fetch/{id}的data.status为SUCCESS时,歌曲在data.data.clips[](audio_url、image_url、duration)。音频在临时地址上,要保存就及时下载。