正在加载…

MJ 放大、变体与图片编辑

Action 放大、变体与扩图

POST /mj/submit/action

从父任务 buttons 中选择按钮,原样提交其 customId。成功后继续查询返回的新任务 ID。

参数类型必填说明
taskIdstring是当前 API Key 创建的父任务 ID。使用本站回执 result,不能使用 state 代替。
customIdstring是必须与父任务 buttons[].customId 完全一致;示例是占位符,不能直接用于真实任务。
statestring否调用方业务标识,随任务返回;不是任务 ID,也不提供幂等去重。
执行父任务按钮POST /mj/submit/action
curl --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自定义扩图,通常需要 Modalmj_custom_zoom
Vary (Region)局部重绘,通常需要 Modalmj_inpaint
⬅️ / ➡️ / ⬆️ / ⬇️向对应方向扩展mj_pan

下表仅说明常见按钮,不保证每个任务都返回这些按钮。以本次查询结果为准。

未知按钮、没有配置动作价格或没有相应模型权限时,提交会被拒绝。

需要 Modal 的按钮不能只提交 Action 后一直轮询;请按 Modal 流程补充参数。

计费:按实际按钮动作收费,见按钮表。动作是否开放及价格,以本站模型目录和当前 Key 权限为准。

Change 结构化变化

POST /mj/submit/change

用动作名称与宫格序号执行放大、变体或重绘。

参数类型必填说明
taskIdstring是当前 API Key 创建的父任务 ID。使用本站回执 result,不能使用 state 代替。
actionstring是仅 UPSCALE、VARIATION、REROLL,使用大写。
indexinteger条件UPSCALE / VARIATION 必填,范围 1–4;REROLL 省略。
statestring否调用方业务标识,随任务返回;不是任务 ID,也不提供幂等去重。
放大第 1 张POST /mj/submit/change
curl --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"
}'
第 2 张变体POST /mj/submit/change
curl --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/change
curl --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 中。

参数类型必填说明
contentstring是格式为 TASK_ID U1…U4、TASK_ID V1…V4 或 TASK_ID R,以空格分隔。
statestring否调用方业务标识,随任务返回;不是任务 ID,也不提供幂等去重。
放大第 2 张POST /mj/submit/simple-change
curl --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 权限为准。

POST /mj/submit/modal

先提交父任务的 Vary (Region) / Custom Zoom 按钮,再使用该 Action 回执 result 指向的 Modal 任务补充参数。

参数类型必填说明
taskIdstring是需要补充参数的 Modal 任务 ID,通常来自上一条 Action 的 result;不要用 state 代替。
promptstring否按所选动作补充提示词,例如自定义扩图追加 --zoom 1.5。
maskBase64string否局部重绘蒙版,单个图片 Data URL 字符串;黑色为保留区、白色为编辑区,尺寸与目标图一致。
statestring否调用方业务标识,随任务返回;不是任务 ID,也不提供幂等去重。
自定义 ZoomPOST /mj/submit/modal
curl --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/modal
curl --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 和编辑提示词创建新任务,可附带蒙版。

参数类型必填说明
promptstring是非空编辑要求。
imagestring是可公开访问的图片 URL;与 Imagine 的 base64Array 不同。
maskBase64string[]否蒙版 Data URL 数组,传入时本站要求 1–10 项;不是 Modal 的单个字符串。
noStorageboolean是须显式传 true / false,控制是否跳过图片转存。查询结果提供签名下载 URL,请使用返回的完整地址。
statestring否调用方业务标识,随任务返回;不是任务 ID,也不提供幂等去重。
notifyHookstring否本站暂未开放回调,请省略。传非空值会被拒绝。
编辑背景POST /mj/submit/edits
curl --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 权限为准。