Skip to content
NEWMiniMax Speech 2.8 text-to-speech is live, at official list priceView available models
HopBase
← Back to blog

Midjourney v8.2 API on HopBase: 4 images per job

Midjourney v8.2 API on HopBase: 4 images per job

Midjourney v8.2 (model ID midjourney-v8-2) is now live on HopBase, submitted over the OpenAI-compatible POST /v1/images/generations endpoint and polled for results with GET /v1/video/tasks/{task_id}. The biggest difference from most image models is that every job returns a fixed set of 4 candidate images, and aspect ratio and quality are written into the prompt (--ar sets the ratio, --hd renders at native 2K) instead of being passed as request fields. Billing follows the number of images actually returned: $0.0067 per image at 1K and $0.0108 per image at 2K. Keys bound to the Midjourney image plan group can call it today.

How to call it

  • Two-step async: POST /v1/images/generations returns 202 with a task ID, then you poll GET /v1/video/tasks/{task_id}. Status moves through queued → processing → completed, and only completed and failed are terminal.
  • Use the full model ID: midjourney-v8-2. The authoritative ID is whatever GET /v1/models returns.
  • Group binding: the model sits in the Midjourney image plan group. Only keys bound to that group can reach it; Kling keys are not shared.
  • A prompt is required: sending a reference image with no text description is rejected. At most 1 reference image, passed in the images field.
  • Output lifetime: on completion outputs carries 4 signed direct links, valid for 6 hours from the moment the task completes. Expired links return 410, so download inside that window.

Pricing: the official rate converted to a per-image price

TierHow to triggerPer imagePer job (4 images)
StandardDefault$0.0067$0.0267
2KAdd --hd to the prompt$0.0108$0.0433

Midjourney prices officially by GPU time (0.8 GPU minutes for a standard job, 1.3 minutes with --hd), and we convert that official rate into a per-image price. Billing follows the number of images actually returned, so a single call costs four images' worth — put that in your budget model rather than estimating from a one-image price. For comparison, catalogue models that return a single image mostly land between $0.029 and $0.067 per call, and four Midjourney images together still come in under most of them. Your effective unit price depends on your plan group, and the console itemises cost per request.

Aspect ratio and size

Size is not a request field; it comes from --ar in the prompt, and adding --hd renders at native 2K. Measured values:

--arStandardWith --hd
1:1 (default)1024 × 10242048 × 2048
16:91456 × 8162944 × 1648
9:16816 × 14561648 × 2944
4:31232 × 9282544 × 1904
21:91680 × 7203376 × 1440

--ar only accepts integer ratios, so --ar 1.5:1 is rejected. The ceiling is 14:1, tightened to 4:1 once --hd is on.

Parameter support

  • Supported: --ar, --hd, --s (0-1000), --c (0-100), --weird (0-3000), --iw (0-3), --sref with --sw, --no, --seed, --tile, --exp.
  • Not supported on v8.2, rejected with 400 at submit: --q/--quality, --niji, --repeat, --oref, --cref, --stealth, --stop, --draft, and :: multi-prompt weighting.

We reject this set at submit time rather than forwarding it: some of these the model silently ignores (you pay and get nothing for it), and the rest only fail after the job has run for tens of seconds. The error message names the parameter and why it is not supported.

Three-minute integration

# 1. Submit; returns 202 plus a task ID
curl https://api.hop-base.com/v1/images/generations \
  -H "Authorization: Bearer sk-your-key" \
  -H "Content-Type: application/json" \
  -d '{"model":"midjourney-v8-2","prompt":"a red apple on a wooden table, studio light --ar 16:9"}'

# 2. Poll with the id from the previous step; once completed, take the 4 direct links from outputs
curl https://api.hop-base.com/v1/video/tasks/YOUR_TASK_ID \
  -H "Authorization: Bearer sk-your-key"

FAQ

Can I generate just one image?

No. Every Midjourney generation mode returns a fixed 2×2 grid of four candidate images. That is how the model itself works, not a restriction added on our side. Neither the image-count field in the request nor --repeat changes the result, which is why we do not accept any value of n other than 4 — better to say so at submit time than to silently charge you for four.

How do I control the size?

In the prompt: --ar sets the ratio and --hd renders at native 2K. The quality field in the request body has no effect on this model and is rejected if you send it. The full size table is above.

Does it support reference images?

Yes — at most 1, passed in the images field, with --iw (0-3) to tune how strongly it is followed; for style references, use --sref together with --sw. Note that v8.2 does not support --oref or --cref; Midjourney has replaced them with its new editing models.

Are failed jobs billed?

No. Only jobs that actually produce images are billed; failed jobs cost nothing. If a prompt is stopped by content moderation the response gives an explicit failure reason, so you can rewrite it and retry.