Grok Imagine Image 2.0
通过文本和最多 5 张参考图片生成或编辑一张图片,每张图片统一定价。
- 异步:创建调用会立即返回任务 ID;任务成功后才能拿到图片。
- 每个任务生成一张图片。需要多张图片时,请创建多个任务。
- 文生图,或编辑、合成最多 5 张以公开 HTTPS 链接提供的参考图片。
- 请求只有四个字段:
model、prompt、images和aspect_ratio。没有分辨率、质量、seed 或输出格式可设置。 - 失败的任务不收费:预扣金额会全额退回。
在调试窗口里打开本模型,填入你的 BeatAPI API 密钥即可创建任务。调用是真实的,费用从你自己的余额中扣除。
接口与鉴权
POST https://api.beatapi.io/v1/images/tasks
Authorization
string
必需
你的 BeatAPI API 密钥,以 Bearer <BEATAPI_API_KEY> 形式发送。在控制台创建密钥。密钥只能保存在你的服务端,不要放进浏览器或移动端应用。
请求体使用 JSON,并设置 Content-Type: application/json。Idempotency-Key 为可选:每个逻辑请求发送一个唯一值(最长 255 个字符),仅在重试完全相同的请求体时复用。24 小时内,用相同的键和请求体重试会再次返回第一次的响应,并带上 Idempotent-Replayed: true;相同的键搭配不同的请求体则返回 409 idempotency_conflict。非 2xx 的响应不会被保存,因此 400 或 402 之后的重试会重新执行。
请求流程
等待任务完成
调用 GET /v1/tasks/{task_id},两次调用之间等待 data.poll_after_seconds 秒(图片 5 秒,视频 8 秒),直到 status 为 succeeded 或 failed。也可以为 task.succeeded 和 task.failed 注册 Webhook;仍需保留轮询作为兜底,因为因处理超时而终止的任务不会发送事件。
输入模式
请求参数
model
string
必需
要运行的模型。
取值:grok-imagine-image-2.0
取值有误时
- 缺失:
"model" is required - 未知的模型 ID:
"model" grok-imagine-image-9 is not catalogued - 把视频模型发到了这个接口:
"model" grok-imagine-video-1.5 is served by POST /v1/videos/tasks, not this endpoint
prompt
string
必需
要画什么,或要修改参考图中的什么。用平实的语言效果最好:主体、风格、光线、构图,以及必须出现在图片中的文字。
长度:1–5000 个字符
- 长度按字符计算(一个中日韩字符算一个)。
- 传入
images时,请说明每张图片的作用,例如 “Keep the product from the first image and change the setting”。
取值有误时
- 缺失:
"prompt" is required - 为空或超过上限:
"prompt" has an unsupported length - 不是字符串:
"prompt" must be a string
images
string[]
可选
要编辑或合成的参考图片。传入该字段会把请求从文生图切换为图片编辑;没有单独的模式开关。
数量:1–5
每一项都必须是公网 https:// 链接。本地文件请先上传(POST /v1/files),再传入返回的 data.url。
- 每一项都必须是指向图片文件的公开
https://链接。创建任务时,BeatAPI 只检查链接的格式;此时不会下载图片,也不检查其格式或大小(见限制下方的说明)。 - 指向网页、登录页、已过期的签名 URL 或有防盗链的主机的链接不会返回图片,任务创建之后会失败。
- 错误信息中的位置从 0 开始:
images[0]是第一个链接。
取值有误时
- 超过上限:
"images" accepts at most 5 items - 空数组:
"images" requires at least 1 item - 不是 https:// 链接:
"images[0]" must be a public HTTPS URL - 不是数组:
"images" must be an array
示例
aspect_ratio
string
可选默认值: 1:1
期望的图片宽高比,格式为 宽:高。
可选值:auto, 1:1, 2:3, 3:2, 16:9, 9:16
默认值:1:1
auto表示由模型自行决定比例,而不是固定一种。仅在传了images时才被接受。- 不传则使用
1:1,传了images时同样如此。
取值有误时
- 值不在列表中:
"aspect_ratio" must be one of: [auto 1:1 2:3 3:2 16:9 9:16] - 没有
images时使用auto:Grok Imagine Image 2.0 aspect_ratio=auto requires at least one image
输入素材限制
网关会在创建任务之前读取每一项输入,超出这些限制的输入会被拒绝,并返回点名该输入的 400 bad_request。不扣费。
- 参考图片:1 到 5 个公开的 HTTPS 链接。
- 创建任务时,BeatAPI 不会下载这些链接,也不检查其格式、大小或像素尺寸,因此无效的链接不会被提前拒绝。每个链接由模型自行获取。
- 模型无法获取或读取的链接会在任务创建之后导致任务失败,通常报
bad_request,并全额退款。请使用指向普通图片文件的直接链接,且所在主机无需登录即可响应服务器请求。 - 手头只有本地文件?请用
POST /v1/files上传,并传入返回的data.url。
本模型不接受的字段
图片端点支持一些其他图片模型使用的字段。在这里传入它们会被拒绝而不是被忽略,因此你不会为没有效果的设置付费:
resolution、output_format、quality、seed、background、size、enhance_prompt→field "resolution" is not supported by model grok-imagine-image-2.0(其中是你传入的字段名)。- 其他任何未知字段,例如
n→unknown field: n。没有n:一个任务只生成一张图片。
如果请求中有多个无效字段,报错信息只会指出其中一个;修正后再次发送即可。
由于没有 output_format,存储的文件就是模型返回的类型。请读取 output.media[].mime_type 查看。
请求示例
文生图
根据提示词生成一张 3:2 的横版图片。
编辑一张图片
保留商品并更换场景。这里允许使用 auto,因为传了图片。
合成多张图片
在提示词中按位置指明每张参考图。
竖版图片
一张适合手机屏幕的 9:16 图片。
响应
创建任务(201)
任务对象。任务成功之前 output 为 null。标注“运行中”的字段会在任务结束后消失。
任务完成
GET /v1/tasks/{task_id} 返回 HTTP 200 和 status: "succeeded",结果在 data.output 中。
输出字段
任务失败
失败的任务在 GET /v1/tasks/{task_id} 上仍然是 HTTP 200:失败信息在响应体里。预扣金额会全额退回,因此不会扣费。
完整示例
创建任务,按服务端给出的轮询提示等待,然后打印结果链接。请在环境变量中设置 BEATAPI_API_KEY 并安装 requests。
计费
- 每个任务生成一张图片,按下方唯一的挂牌价计费。价目表中该模型只有一行,也没有可以改变价格的字段。
- 价格在创建任务时预扣,从你的余额中扣除;若密钥设有额度,也从密钥额度中扣除。在任务生成之前被拒绝的请求不收费。
- 成功的任务保留预留的金额。失败的任务会全额退还:此时
credits_refunded等于credits_reserved,credits_charged和credits_settled为 0。
当前牌价,与价格页一致。享有协商折扣的账户实付更低;任务的 data.usage 始终显示实际扣费金额。
常见错误
HTTP 错误速查
任务生成之前的错误会以非 2xx 响应返回,不扣费。请根据 error.code 或 error.retryable 判断处理方式;message 会指出问题所在。完整列表和重试策略见错误码。
身份验证
Send your API key as Authorization: Bearer <BEATAPI_API_KEY>.
请求头
请求体使用 JSON,并设置 Content-Type: application/json。Idempotency-Key 为可选:每个逻辑请求发送一个唯一值(最长 255 个字符),仅在重试完全相同的请求体时复用。24 小时内,用相同的键和请求体重试会再次返回第一次的响应,并带上 Idempotent-Replayed: true;相同的键搭配不同的请求体则返回 409 idempotency_conflict。非 2xx 的响应不会被保存,因此 400 或 402 之后的重试会重新执行。
请求
要运行的模型。
取值:grok-imagine-image-2.0
取值有误时
- 缺失:
"model" is required - 未知的模型 ID:
"model" grok-imagine-image-9 is not catalogued - 把视频模型发到了这个接口:
"model" grok-imagine-video-1.5 is served by POST /v1/videos/tasks, not this endpoint
要画什么,或要修改参考图中的什么。用平实的语言效果最好:主体、风格、光线、构图,以及必须出现在图片中的文字。
长度:1–5000 个字符
- 长度按字符计算(一个中日韩字符算一个)。
- 传入
images时,请说明每张图片的作用,例如 “Keep the product from the first image and change the setting”。
取值有误时
- 缺失:
"prompt" is required - 为空或超过上限:
"prompt" has an unsupported length - 不是字符串:
"prompt" must be a string
期望的图片宽高比,格式为 宽:高。
可选值:auto, 1:1, 2:3, 3:2, 16:9, 9:16
默认值:1:1
auto表示由模型自行决定比例,而不是固定一种。仅在传了images时才被接受。- 不传则使用
1:1,传了images时同样如此。
取值有误时
- 值不在列表中:
"aspect_ratio" must be one of: [auto 1:1 2:3 3:2 16:9 9:16] - 没有
images时使用auto:Grok Imagine Image 2.0 aspect_ratio=auto requires at least one image
要编辑或合成的参考图片。传入该字段会把请求从文生图切换为图片编辑;没有单独的模式开关。
数量:1–5
每一项都必须是公网 https:// 链接。本地文件请先上传(POST /v1/files),再传入返回的 data.url。
- 每一项都必须是指向图片文件的公开
https://链接。创建任务时,BeatAPI 只检查链接的格式;此时不会下载图片,也不检查其格式或大小(见限制下方的说明)。 - 指向网页、登录页、已过期的签名 URL 或有防盗链的主机的链接不会返回图片,任务创建之后会失败。
- 错误信息中的位置从 0 开始:
images[0]是第一个链接。
取值有误时
- 超过上限:
"images" accepts at most 5 items - 空数组:
"images" requires at least 1 item - 不是 https:// 链接:
"images[0]" must be a public HTTPS URL - 不是数组:
"images" must be an array
示例
"images": [
"https://media.beatapi.io/samples/smart-bottle.png"
]
响应
任务对象。任务成功之前 output 为 null。标注“运行中”的字段会在任务结束后消失。

