🔥Midjourney Video API

Midjourney视频生成API,Midjourney官方发布的最新视频模型。

最多可以 同时执行 10 个生成队列,如需更多作业队列请 联系我们

生成视频

单次生成视频长度,与延续视频长度目前固定为5s。

POST https://api.ttapi.io/midjourney/video/submit

根据图像与描述词生成四个视频,该接口与midjourney生成图像接口交互方式一致,为异步任务

Headers

Name
Value

TT-API-KEY

用于请求授权 TT-API 的API密钥

Content-Type

application-json

Body

参数
类型
是否必须
描述

prompt

string

用于生成视频的提示词

imageUrl

string

视频起始帧图片地址,必须是可以网络访问的图片地址

endingUrl

string

视频结束帧图片地址,必须是可以网络访问的图片地址

mode

string

生成视频的速率模式,目前只支持fast模式,可选值范围:fast

manual

string

视频模式 可选值 low 低运动 high高运动 默认为low

resolution

string

视频分辨率 可选值 hd sd 默认为 sd 不同分辨率消耗quota不同

bs

int

批量生成视频数量 可选值 1、2、4 默认为4

hookUrl

boolean

回调地址,任务完成或失败将通过请地址进行通知。如果未设置,则需要请求fetch 接口进行查询。

如果 hookUrl 不为空,系统会向您设置的 hookUrl 发送一个 json响应

请求示例

import requests

endpoint = "https://api.ttapi.io/midjourney/video/submit"

headers = {
    "TT-API-KEY": your_key
}

data = {
    "prompt": "hyperrealistic album cover: Black sacral Ocean. Sunken prayer canoe. Ghost Canoe Horizon",
    "imageUrl": "https://unlimbot.hb.ru-msk.vkcloud-storage.ru/AQADJvYxG8ZHiEt-.jpeg",
    "mode": "fast",
    "manual": "high",
    "hookUrl": "https://webhook-test.com/1cb411db3bc4bfa7729c7df3ca2c1a5e"
}

response = requests.post(endpoint, headers=headers, json=data)

print(response.status_code)
print(response.json())

响应示例

{
    "status": "SUCCESS",
    "message": "success",
    "data": {
        "jobId": "943583cb-08f4-4077-ad1e-f1bfc6c1191a"
    }
}

视频延伸

POST https://api.ttapi.io/midjourney/video/extend

延伸视频会同步父级任务的分辨率

根据上一条视频结果延伸生成四个视频 该接口与midjourney生成图像接口交互方式一致,为异步任务

Headers

Name
Value

TT-API-KEY

用于请求授权 TT-API 的API密钥

Content-Type

application-json

Body

参数
类型
是否必须
描述

jobId

string

上一条任务的jobId,注意上一条任务必须为完成状态才能进行视频延续

index

int

选择延续的视频 在上一条任务重的四个视频中选择一个延续 0代表第一个,1代表第二个,以此类推 可选值范围0-3

manual

string

视频模式 可选值 low 低运动 high高运动 默认为low

animateMode

string

动画模式 可选 automanual

默认为auto

bs

int

批量生成视频数量 可选值 1、2、4 默认为4

hookUrl

boolean

回调地址,任务完成或失败将通过请地址进行通知。如果未设置,则需要请求fetch 接口进行查询。

如果 hookUrl 不为空,系统会向您设置的 hookUrl 发送一个 json响应

请求示例

import requests

endpoint = "https://api.ttapi.io/midjourney/video/extend"

headers = {
    "TT-API-KEY": your_key
}

data = {
    "jobId": "9fd71109-f508-4f0e-a26c-d776d6b38b58",
    "index": 0
}

response = requests.post(endpoint, headers=headers, json=data)

print(response.status_code)
print(response.json())

响应示例

{
    "status": "SUCCESS",
    "message": "success",
    "data": {
        "jobId": "943583cb-08f4-4077-ad1e-f1bfc6c1191a"
    }
}

获取任务状态 - fetch

GET https://api.ttapi.io/midjourney/video/fetch

查询任务结果,该接口不消耗quota,免费使用

Headers

Name
Value

TT-API-KEY

用于请求授权 TT-API 的API密钥

Content-Type

application-json

Query参数

参数
类型
是否必须
描述

jobId

string

生成接口同步返回的jobId

请求示例

import requests

endpoint = "https://api.ttapi.io/midjourney/video/fetch"

headers = {
    "TT-API-KEY": your_key
}

data = {
   "jobId": "afa774a3-1aee-5aba-4510-14818d6875e4"
}

response = requests.post(endpoint, headers=headers, json=data)

print(response.status_code)
print(response.json())

响应示例

返回结果与异步回调数据结构一致

异步回调 JSON 结构

{
  "status": "SUCCESS",
  "message": "success",
  "jobId": "943583cb-08f4-4077-ad1e-f1bfc6c1191a",
  "data": {
    "action": "generate",
    "jobId": "943583cb-08f4-4077-ad1e-f1bfc6c1191a",
    "progress": "100",
    "prompt": "hyperrealistic album cover: Black sacral Ocean. Sunken prayer canoe. Ghost Canoe Horizon",
    "quota": "30",
    "videos": [
      "https://cdn.midjourney.com/video/780b1227-227a-418c-998e-3eb90eb4824a/0.mp4",
      "https://cdn.midjourney.com/video/780b1227-227a-418c-998e-3eb90eb4824a/1.mp4",
      "https://cdn.midjourney.com/video/780b1227-227a-418c-998e-3eb90eb4824a/2.mp4",
      "https://cdn.midjourney.com/video/780b1227-227a-418c-998e-3eb90eb4824a/3.mp4"
    ],
    "hookUrl": "https://webhook-test.com/1cb411db3bc4bfa7729c7df3ca2c1a5e"
  }
}

返回JSON结构详解

name
value

status

PENDING_QUEUE //排队中

ON_QUEUE //执行中

SUCCESS //成功 FAILED //失败

videos

生成的视频文件,midjourney的官方cdn地址,注意:存在有效期,使用请自行转存

quota

实际消耗额度

Last updated

Was this helpful?