🔥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

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

mode

string

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

manual

string

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

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

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?