跳转到主要内容
POST
/
api
/
v1
/
mj
/
generate
生成Midjourney图像
curl --request POST \
  --url https://api.midapi.ai/api/v1/mj/generate \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "taskType": "mj_txt2img",
  "speed": "relaxed",
  "prompt": "Help me generate a sci-fi themed fighter jet in a beautiful sky, to be used as a computer wallpaper",
  "fileUrls": [
    "https://example.com/image.jpg"
  ],
  "aspectRatio": "16:9",
  "version": "7",
  "variety": 10,
  "stylization": 1,
  "weirdness": 1,
  "waterMark": "",
  "enableTranslation": false,
  "callBackUrl": "https://api.example.com/callback",
  "ow": 500,
  "videoBatchSize": 1,
  "motion": "high"
}'
{
  "code": 200,
  "msg": "success",
  "data": {
    "taskId": "mj_task_abcdef123456"
  }
}

使用指南

  • 此端点根据您的文本提示词创建图像
  • 将生成多个变体
  • 支持文本生成图像、图像生成图像和图像生成视频

开发者说明

  • 新用户建议:从简单的提示词开始以获得最佳效果。
  • 生成的图像文件在删除前保留15天。
  • 确保提供所有必需字段以获得最佳生成效果。

Authorizations

Authorization
string
header
required

所有 API 都需要通过 Bearer Token 进行认证。

获取 API Key:

  1. 访问 API Key 管理页面 获取您的 API Key

使用方法: 添加到请求头: Authorization: Bearer YOUR_API_KEY

注意:

  • 请妥善保管您的 API Key,不要与他人分享
  • 如果您怀疑 API Key 已泄露,请立即在管理页面重置

Body

application/json
taskType
enum<string>
default:mj_txt2img
required

任务类型,用于指定生成模式。

图像生成类型:

  • mj_txt2img:文本生成图像
  • mj_img2img:图像生成图像
  • mj_style_reference:风格参考
  • mj_omni_reference:omni参考

视频生成类型:

  • mj_video:图像生成标清视频(支持 videoBatchSize 参数)
  • mj_video_hd:图像生成高清视频(支持 videoBatchSize 参数)
可用选项:
mj_txt2img,
mj_img2img,
mj_style_reference,
mj_omni_reference,
mj_video,
mj_video_hd
Example:

"mj_txt2img"

prompt
string
required

描述所需图像内容的文本提示词。所有生成模式都需要。

  • 应该详细且具体地描述图像内容
  • 可以包含风格、构图、光线和其他视觉元素
  • 最大长度:2000个字符
Example:

"Help me generate a sci-fi themed fighter jet in a beautiful sky, to be used as a computer wallpaper"

speed
enum<string>

API的速度。可以是'fast'、'relaxed'或'turbo',对应Midjourney的不同速度。

  • 当taskType为mj_video、mj_video_hd或mj_omni_reference时,此参数不需要
可用选项:
relaxed,
fast,
turbo
Example:

"relaxed"

fileUrl
string

输入图片URL(图生图、图生视频时必填)。

  • 与 fileUrls 字段二选一使用
  • 必须是有效的图片URL
  • 图片必须能被API服务器访问
  • 文生图时留空
Example:

"https://example.com/image.jpg"

fileUrls
string[]

输入图片URL数组(图生图、图生视频时必填)。

  • 与 fileUrl 字段二选一使用
  • 为了兼容之前的用法,fileUrl字段目前保留
  • 生成视频时fileUrls只能有一个图片链接
  • 建议在此后尽量使用 fileUrls 字段
  • 必须是有效的图片URL
  • 图片必须能被API服务器访问
  • 文生图时留空
Example:
["https://example.com/image.jpg"]
aspectRatio
enum<string>

输出图片/视频的宽高比。

支持的宽高比:

比例格式类型常见用途
2:1超宽屏电影级显示,全景视图
16:9宽屏高清视频,桌面壁纸
4:3标准传统显示,演示文稿
3:2经典传统摄影,打印
1:1正方形社交媒体帖子,头像
3:4竖屏杂志布局,人像照片
5:6竖屏移动摄影,故事
9:16移动竖屏手机壁纸,故事
2:3竖屏移动应用启动屏
6:5横屏平板壁纸,数字艺术
1:2超高移动应用启动屏,横幅
可用选项:
1:2,
9:16,
2:3,
3:4,
5:6,
6:5,
4:3,
3:2,
1:1,
16:9,
2:1
Example:

"16:9"

version
enum<string>

使用的Midjourney模型版本。

Midjourney定期发布新的模型版本来提高效率、一致性和质量。最新模型是默认的,但每个模型都擅长生成不同类型的图像。

可用选项:
7,
6.1,
6,
5.2,
5.1,
niji6
Example:

"7"

variety
integer

控制生成图片的多样性。

  • 每次增加5,如(0,5,10,15...)
  • 较高值创建更多样化的结果
  • 较低值创建更一致的结果
Required range: 0 <= x <= 100
Example:

10

stylization
integer

风格化程度(0-1000)。

  • 控制艺术风格强度
  • 较高值创建更风格化的结果
  • 较低值创建更真实的结果
  • 建议该值为50的倍数
Required range: 0 <= x <= 1000
Example:

1

weirdness
integer

古怪性程度(0-3000)。

  • 控制创造性和独特性
  • 较高值创建更不寻常的结果
  • 较低值创建更常规的结果
  • 建议该值为100的倍数
Required range: 0 <= x <= 3000
Example:

1

ow
integer

Omni 强度参数。控制 omni 参考效果的强度。范围:1-1000,每次增加 1(如 1、2、3)。

  • 仅在 taskType 为 'mj_omni_reference' 时使用
  • 使用 Omni 参考功能,允许您将参考图像中的角色、物体、车辆或非人类生物放入您的 Midjourney 创作中
  • 数值越高,参考影响越强
  • 数值越低,允许更多创意解释
Required range: 1 <= x <= 1000
Example:

500

waterMark
string

水印标识。

  • 可选参数
  • 如果提供,将在生成的内容上添加水印
Example:

"my_watermark"

enableTranslation
boolean
default:false

是否启用自动翻译功能。

  • 由于 prompt 仅支持英文,当此参数为 true 时,系统会自动将非英文的提示词翻译成英文
  • 如果您的提示词已经是英文,可设置为 false
  • 默认值:false
Example:

false

callBackUrl
string<uri>

回调地址,用于接收任务完成更新。

  • 可选但建议在生产环境中使用
  • 系统将通过POST请求将任务完成状态发送到此URL
  • 或者,可以使用获取Midjourney任务详情接口检查状态

📖 详细回调机制: 查看 Midjourney图像生成回调 了解回调格式、状态码、最佳实践和故障排查。

Example:

"https://api.example.com/callback"

videoBatchSize
enum<integer>
default:1

视频生成数量。仅在 taskType 为 'mj_video' 或 'mj_video_hd' 时有效。

  • 1:生成 1 个视频(默认)
  • 2:生成 2 个视频
  • 4:生成 4 个视频
可用选项:
1,
2,
4
Example:

1

motion
enum<string>
default:high

视频生成的运动参数。控制生成视频中的运动水平。

  • high:高运动水平(默认)
  • low:低运动水平
  • 当 taskType 为 'mj_video' 或 'mj_video_hd' 时为必填参数
  • 仅在 taskType 为 'mj_video' 或 'mj_video_hd' 时有效
可用选项:
high,
low
Example:

"high"

Response

请求成功

code
enum<integer>

响应状态码

  • 200: 成功 - 请求已成功处理
  • 400: 请求错误 - 无效的请求参数
  • 401: 未授权 - 认证凭据缺失或无效
  • 402: 积分不足 - 账户没有足够的积分执行操作
  • 404: 未找到 - 请求的资源或端点不存在
  • 422: 验证错误 - 请求参数验证失败
  • 429: 请求限制 - 已超过该资源的请求限制
  • 455: 服务不可用 - 系统正在进行维护
  • 500: 服务器错误 - 处理请求时发生意外错误
  • 501: 生成失败 - 图像生成任务失败
  • 505: 功能禁用 - 请求的功能当前已禁用
可用选项:
200,
400,
401,
402,
404,
422,
429,
455,
500,
501,
505
msg
string

响应消息

Example:

"success"

data
object