开始使用 Midjourney API
本指南将带您从获取 API 密钥开始,完成首个图像生成请求,并了解如何将异步任务接入真实应用。
适合对象
开发者、SaaS 创业团队与自动化工作流构建者。
核心流程
提交任务 → 获得 taskId → 轮询状态或等待 Webhook。
模式建议
批量任务可优先考虑 Relax;需要优先处理的任务可选择 Fast。
后续阅读
价格方案、Python 指南和 Node.js 教程。
四步快速开始
第一步:登录控制台创建或复制 API 密钥,并将其保存在服务端的环境变量中。不要把密钥提交到版本库或暴露在浏览器代码里。
第二步:向图像任务提交接口发送提示词与所需参数,并在授权请求头中附上密钥。
第三步:记录响应中的任务 ID。生成是异步过程,请使用该 ID 查询状态,不要假设提交请求完成时图像已经生成。
第四步:当任务完成时,从结果响应中读取图像 URL;对于线上服务,建议同时设置 Webhook 回调。
发送您的第一个 REST 请求
通过 HTTPS 向任务提交端点发送 POST 请求。请求体包含提示词和可选生成参数,认证信息放在请求头中。提交成功后保存任务 ID,后续通过任务查询端点读取状态和结果。
请在服务端发起请求,并对密钥进行安全管理。示例代码中的域名、密钥与请求参数应替换为您账户实际使用的值。
接下来会发生什么?
任务进入队列后可能经历排队、处理中、成功或失败等状态。应用应将这些状态反馈给用户,并在网络中断、限流或任务失败时提供合理的恢复路径。
轮询适合快速原型或低频任务;Webhook 更适合生产环境,能在任务结束时主动通知您的服务。应验证回调请求,并以任务 ID 做幂等处理。
常见集成注意事项
- 将 API 密钥存储在环境变量或密钥管理服务中。
- 为每个任务持久化任务 ID、创建时间、状态和最终图像 URL。
- 为轮询设置截止时间与间隔,避免过度请求。
- Webhook 处理器应快速确认收到事件,再异步处理后续工作。
- 为失败、超时、重复回调和用户取消设计明确的状态处理。
常见问题
需要使用 Discord 吗?使用 REST API 提交与跟踪任务即可,无需通过 Discord 发起每次生成。如何获取结果?可以轮询任务状态,也可以配置 Webhook。如何选择套餐?额度和价格信息请查看价格页面。
四步快速开始
- 创建账户并复制 API 密钥。
- 向 /midjourney/v1/submit-jobs 发送提示词、模式和可选 hookUrl,获得 taskId。
- 使用 /midjourney/v1/job-status 查询一个或多个 taskId,或提供 hookUrl 自动接收最终图像结果。
- 将工作流接入应用界面、队列、CMS 或内部工具;批量任务可从 Relax 模式开始,面向用户的优先流程再使用 Fast。
首次请求与响应
示例使用 cURL POST 请求,提交 cinematic desert highway at dusk --ar 16:9 提示词、fast 模式和 Webhook URL。API 会立即返回 taskId。请把该 ID 与用户、提示词、所选模式和内部任务状态一起保存,待 Webhook 或状态查询返回后补充最终图像 URL。
推荐的生产工作流
- 使用服务端端点接收用户提示词并转发给 API。
- 持久化 taskId、用户 ID、提示词、模式和内部状态。
- 原型可先轮询;生产应用通常使用 Webhook,减少重复状态检查,并在结果到达后通知用户、更新数据库或触发自动化。
- 后台任务可使用 Relax 控制单张成本;紧急用户请求、付费计划或实时预览可考虑 Fast。
常见应用场景
- 生成营销创意、博客头图和社交媒体素材。
- 在 SaaS 产品和客户门户中提供 AI 图像生成功能。
- 自动制作电商横幅、样机和商品故事视觉素材。
- 构建通过 Webhook 路由图像结果的内部设计工具。
推荐继续阅读
- Webhook 指南:通过 hookUrl 回调接收异步结果。
- 功能介绍:集中了解 Webhook、轮询、并发和提示词支持。
- Node.js 教程:使用 fetch、TypeScript 与轮询工具实现异步流程。
- Python 指南:用 requests 和 Webhook 将 API 接入后台任务。
- 价格页面:比较额度套餐、图像用量估算和升级时机。
常见问题
使用 Midjourney API 需要 SDK 吗?
不需要。API 使用普通 HTTP 请求,可使用 fetch、requests、cURL、Axios 或任何支持 REST 的工作流工具。
应该使用轮询还是 Webhook?
原型使用轮询即可;生产应用通常更适合 Webhook,因为它能减少重复状态检查,并自然融入异步任务管线。
最快如何测试 API?
先用一条包含短提示词的 cURL 请求提交任务,再查询一两次状态。确认流程正常后,切换为 Webhook,让后端自动处理结果。
接下来应该看哪些页面?
根据技术栈和上线阶段,通常可继续阅读价格页面、Python 指南或 Node.js 教程。