MJ 放大、变体与图片编辑
Action 放大、变体与扩图
POST /mj/submit/action
从父任务 buttons 中选择按钮,原样提交其 customId。成功后继续查询返回的新任务 ID。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
taskId | string | 是 | 当前 API Key 创建的父任务 ID。使用本站回执 result,不能使用 state 代替。 |
customId | string | 是 | 必须与父任务 buttons[].customId 完全一致;示例是占位符,不能直接用于真实任务。 |
state | string | 否 | 调用方业务标识,随任务返回;不是任务 ID,也不提供幂等去重。 |
POST /mj/submit/actioncurl --fail-with-body -X POST 'https://y.junlistudio.com/mj/submit/action' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"taskId": "PARENT_TASK_ID",
"customId": "COPY_EXACT_CUSTOM_ID_FROM_BUTTONS",
"state": "upscale-123"
}'返回:返回通用提交回执;保存 result,轮询新任务。
| 常见按钮 | 用途 | 对应计费动作 |
|---|---|---|
| U1–U4 | 放大四宫格中的第 1–4 张 | mj_upscale |
| V1–V4 | 生成对应宫格的变体 | mj_variation |
| Reroll / 🔄 | 重新生成 | mj_reroll |
| Vary (Strong) / Vary (Subtle) | 强变体 / 弱变体 | mj_high_variation / mj_low_variation |
| Upscale (Subtle) / Upscale (Creative) | 精细放大 / 创意放大 | mj_upscale_subtle / mj_upscale_creative |
| Zoom Out 1.5x / Zoom Out 2x | 向外扩图 | mj_zoom |
| Custom Zoom | 自定义扩图,通常需要 Modal | mj_custom_zoom |
| Vary (Region) | 局部重绘,通常需要 Modal | mj_inpaint |
| ⬅️ / ➡️ / ⬆️ / ⬇️ | 向对应方向扩展 | mj_pan |
下表仅说明常见按钮,不保证每个任务都返回这些按钮。以本次查询结果为准。
未知按钮、没有配置动作价格或没有相应模型权限时,提交会被拒绝。
需要 Modal 的按钮不能只提交 Action 后一直轮询;请按 Modal 流程补充参数。
计费:按实际按钮动作收费,见按钮表。动作是否开放及价格,以本站模型目录和当前 Key 权限为准。
Change 结构化变化
POST /mj/submit/change
用动作名称与宫格序号执行放大、变体或重绘。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
taskId | string | 是 | 当前 API Key 创建的父任务 ID。使用本站回执 result,不能使用 state 代替。 |
action | string | 是 | 仅 UPSCALE、VARIATION、REROLL,使用大写。 |
index | integer | 条件 | UPSCALE / VARIATION 必填,范围 1–4;REROLL 省略。 |
state | string | 否 | 调用方业务标识,随任务返回;不是任务 ID,也不提供幂等去重。 |
POST /mj/submit/changecurl --fail-with-body -X POST 'https://y.junlistudio.com/mj/submit/change' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"taskId": "PARENT_TASK_ID",
"action": "UPSCALE",
"index": 1,
"state": "upscale-1"
}'POST /mj/submit/changecurl --fail-with-body -X POST 'https://y.junlistudio.com/mj/submit/change' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"taskId": "PARENT_TASK_ID",
"action": "VARIATION",
"index": 2
}'POST /mj/submit/changecurl --fail-with-body -X POST 'https://y.junlistudio.com/mj/submit/change' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"taskId": "PARENT_TASK_ID",
"action": "REROLL"
}'返回:返回通用提交回执;保存 result,轮询新任务。
需要更丰富按钮时使用 Action;不能把 Zoom、Pan 等动作塞入 action 枚举。
计费:mj_upscale / mj_variation / mj_reroll。动作是否开放及价格,以本站模型目录和当前 Key 权限为准。
Simple Change 文本变化
POST /mj/submit/simple-change
将任务 ID 和动作简写放在 content 中。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
content | string | 是 | 格式为 TASK_ID U1…U4、TASK_ID V1…V4 或 TASK_ID R,以空格分隔。 |
state | string | 否 | 调用方业务标识,随任务返回;不是任务 ID,也不提供幂等去重。 |
POST /mj/submit/simple-changecurl --fail-with-body -X POST 'https://y.junlistudio.com/mj/submit/simple-change' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"content": "PARENT_TASK_ID U2",
"state": "upscale-2"
}'返回:返回通用提交回执;保存 result,轮询新任务。
这里没有单独的 taskId、action 或 index 字段;新接入也可直接使用 Action。
计费:mj_upscale / mj_variation / mj_reroll。动作是否开放及价格,以本站模型目录和当前 Key 权限为准。
Modal 局部重绘与自定义 Zoom
POST /mj/submit/modal
先提交父任务的 Vary (Region) / Custom Zoom 按钮,再使用该 Action 回执 result 指向的 Modal 任务补充参数。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
taskId | string | 是 | 需要补充参数的 Modal 任务 ID,通常来自上一条 Action 的 result;不要用 state 代替。 |
prompt | string | 否 | 按所选动作补充提示词,例如自定义扩图追加 --zoom 1.5。 |
maskBase64 | string | 否 | 局部重绘蒙版,单个图片 Data URL 字符串;黑色为保留区、白色为编辑区,尺寸与目标图一致。 |
state | string | 否 | 调用方业务标识,随任务返回;不是任务 ID,也不提供幂等去重。 |
POST /mj/submit/modalcurl --fail-with-body -X POST 'https://y.junlistudio.com/mj/submit/modal' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"taskId": "MODAL_TASK_ID",
"prompt": "a cat in sunlight --zoom 1.5"
}'POST /mj/submit/modalcurl --fail-with-body -X POST 'https://y.junlistudio.com/mj/submit/modal' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"taskId": "MODAL_TASK_ID",
"prompt": "replace the selected area with flowers",
"maskBase64": "data:image/png;base64,REPLACE_WITH_MASK_BASE64"
}'返回:返回通用提交回执;保存 result,轮询新任务。
Action 回执 code: 21 可能表示需要 Modal,也可能表示任务已存在;结合 description 和任务状态判断。
Modal 回执后继续查询本次 result。本站将 Action 和 Modal 视为各自配置价格的提交动作,调用前确认对应价格。
本接口的 maskBase64 是字符串;Edits 接口的同名字段是数组,不能混用。
计费:mj_modal。动作是否开放及价格,以本站模型目录和当前 Key 权限为准。
Edits 图片编辑
POST /mj/submit/edits
使用图片 URL 和编辑提示词创建新任务,可附带蒙版。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
prompt | string | 是 | 非空编辑要求。 |
image | string | 是 | 可公开访问的图片 URL;与 Imagine 的 base64Array 不同。 |
maskBase64 | string[] | 否 | 蒙版 Data URL 数组,传入时本站要求 1–10 项;不是 Modal 的单个字符串。 |
noStorage | boolean | 是 | 须显式传 true / false,控制是否跳过图片转存。查询结果提供签名下载 URL,请使用返回的完整地址。 |
state | string | 否 | 调用方业务标识,随任务返回;不是任务 ID,也不提供幂等去重。 |
notifyHook | string | 否 | 本站暂未开放回调,请省略。传非空值会被拒绝。 |
POST /mj/submit/editscurl --fail-with-body -X POST 'https://y.junlistudio.com/mj/submit/edits' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"prompt": "change the background to a sunset",
"image": "https://images.example.com/input.png",
"maskBase64": [
"data:image/png;base64,REPLACE_WITH_MASK_BASE64"
],
"noStorage": false,
"state": "edit-123"
}'返回:返回通用提交回执;保存 result,轮询新任务。
图片及蒙版占位符需替换为真实内容;不要直接复制示例 URL 提交。
计费:mj_edits。动作是否开放及价格,以本站模型目录和当前 Key 权限为准。