Midjourney
Upscale
Pick one of U1–U4 from an Imagine grid to produce a single image; composed locally and usually returns instantly
POST
grid_image_url) to produce a single image. This is implemented by cropping from the existing 4 images, composed locally and usually returns instantly.
| Item | Value |
|---|---|
| action | UPSCALE |
| Billing | midjourney@upscale[-version][-speed] |
| Required | task_id + index, or task_id + custom_id |
| Optional | speed, metadata |
Parameters
| Field | Type | Notes |
|---|---|---|
task_id | string | Parent task ID (must be a SUCCESS imagine / variation / reroll, etc.) |
index | int | Which tile (U1–U4), range 1–4; one of index / custom_id |
custom_id | string | Directly pass the button ID for the corresponding action; one of index / custom_id; when set, index matching is skipped |
speed | string | relax / fast / turbo (no effect, since it is composed locally) |
metadata | object | Custom metadata |
Request examples
Byindex:
Response
Submission returns a newtask_id, usually SUCCESS within milliseconds. On SUCCESS, image_urls has a single element (one image), and buttons contains follow-up actions (zoom / inpaint / pan / variation, etc.).
Notes
- The parent task must be in SUCCESS state, otherwise it returns
400(task is not in SUCCESS state). indexmust be1–4; out of range returns400.custom_idandindexare mutually exclusive; if both are passed,custom_idwins.- The resource-consuming step is imagine; upscale only picks from existing images and rarely fails.
- The single image after upscale can continue with Zoom / Inpaint / Variation.
HD upscale (HD enlargement, outputs a single 2x image)
A regular upscale is composed locally—it crops one of the 4 images already in the parent task and returns instantly. If you later want to perform fine-grained operations such as zoom / inpaint on a single image, we recommend using HD upscale instead: it performs a real enlargement, outputs a single 2x HD image, takes about 60–120s to complete, and the resulting single image more reliably supports subsequent zoom / inpaint. HD upscale specifies the enlargement command viacustom_id; different imagine versions correspond to different commands:
| customId command | Applicable version |
|---|---|
upsample_v5_2x | v5 imagine |
upsample_v5_4x | v5 imagine |
upsample_v6_2x_subtle | v6 / v6.1 imagine |
upsample_v6_2x_creative | v6 / v6.1 imagine |
upsample_v7_2x_subtle | v7 / v8.1 imagine |
upsample_v7_2x_creative | v7 / v8.1 imagine |
HD upscale example
Comparison with regular upscale
| Dimension | Regular upscale | HD upscale |
|---|---|---|
| Implementation | Composed locally (cropping) | Real enlargement processing |
| Time | Millisecond-level | About 60–120s |
| Output | Picks the Nth of 4 images | Single 2x HD image |
| Follow-up | zoom / inpaint / variation | zoom / inpaint more reliable |