Midjourney Text To Image
Playground
Try it on WavespeedAI!Create stunning, high-quality images from text prompts using Midjourney’s powerful AI. Known for exceptional artistic quality and creative interpretation.
Features
midjourney/text-to-image 🎨
Midjourney is one of the world’s most advanced AI art generation systems, capable of turning text prompts into highly detailed, imaginative visuals. This model blends artistic expression with parameter-based creative control — optimized here for clarity, prompt adherence, and usability.
🌟 Key Features
- High-Quality Visuals — Produces detailed, cohesive, and aesthetically pleasing artwork.
- Multiple Aspect Ratios — From square (1:1) to cinematic widescreen (21:9).
- Flexible Stylization — Fine-tune how much Midjourney’s built-in artistic bias influences the output.
- Chaos & Weird Controls — Add creative randomness or surreal experimentation.
- Prompt Reproducibility — Use seeds for consistent iterations and controlled variations.
- Fast, Stable Rendering — Optimized balance between detail, speed, and prompt sensitivity.
⚙️ Parameters
| Parameter | Description |
|---|---|
| prompt* | The text description of what you want to generate. Use visual words only, and repeat your style at the beginning and end for best results. |
| aspect_ratio | Determines image framing: choose between 1:1, 16:9, 9:16, 4:3, 3:4, 2:3, or 21:9. |
| quality | Controls render detail and speed. 1 = standard quality. |
| stylize | Governs how much Midjourney’s artistic dataset style affects the image. |
| Low = listens closely to your prompt, more freedom to invent. | |
| High = prettier, more realistic, but less responsive to fine prompt details. | |
| chaos | Controls variation and unpredictability. 0 = off; higher values create more diverse, less predictable outputs. |
| weird | Adds surreal, experimental characteristics. 0 = off; very high values (e.g. 3000) are extreme and rarely practical. |
| version / niji | Choose rendering engine (6.1 for standard, niji for anime-style). |
| seed | Fix the random generator for reproducibility. -1 = random each run. |
🧠 Understanding — stylize
The stylize parameter defines how strongly Midjourney’s internal aesthetic “rules” guide your output.
-
Low values (≈50–150) → lower visual coherence, rougher details, but higher prompt control. Ideal for original or hybrid concepts (“catragon,” “centaur,” etc.).
-
High values (≈250–750) → smoother, more realistic images, but weaker prompt adherence. MJ leans toward dataset beauty rather than creative deviation.
-
Pro tip: for both coherence and control, use strong visual prompts and mention your style at both the beginning and end, e.g.:
“Salvador Dali painting of surreal architecture, by Salvador Dali —stylize 250”
Midjourney has confirmed: the higher the
--stylizevalue, the closer results align with the average user’s preferred visual aesthetic.
💡 Quick Presets
| Goal | Suggested Settings |
|---|---|
| Precise control / faithful to prompt | stylize=100, chaos=0, weird=0 |
| Visually beautiful / cohesive | stylize=300, chaos=0, weird=0 |
| Creative exploration | stylize=150, chaos=20–40, weird=100–400 |
🧩 Tips for Best Results
- Keep prompts visual and descriptive (use lighting, materials, mood, and camera terms).
- Lower
stylizeto make Midjourney listen more closely to your wording. - Raise
stylizefor a more polished or realistic look. - Avoid high
chaosorweirdunless experimenting with concept art. - Reuse the same
seedto refine results iteratively.
💰 Pricing
| Metric | Price |
|---|---|
| Per image generated | $0.10 / image |
| Per generation (4 images) | $0.40 total |
Each generation produces four images by default.
🧠 Example Prompt
Herd of colossal, ancient creatures resembling walking mountains made of rock and sand, trekking across golden dunes. Drone shot from above, photorealistic cinematic lighting, sense of scale.
Authentication
For authentication details, please refer to the Authentication Guide.
API Endpoints
Submit Task & Query Result
# Submit the task
curl --location --request POST "https://api.wavespeed.ai/api/v3/midjourney/text-to-image" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
"aspect_ratio": "1:1",
"quality": 1,
"stylize": 0,
"chaos": 0,
"weird": 0,
"version": "7",
"niji": "0",
"seed": -1,
"enable_base64_output": false
}'
# Get the result
curl --location --request GET "https://api.wavespeed.ai/api/v3/predictions/${requestId}/result" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}"
Parameters
Task Submission Parameters
Request Parameters
| Parameter | Type | Required | Default | Range | Description |
|---|---|---|---|---|---|
| prompt | string | Yes | - | The text prompt describing the image you want to generate. | |
| aspect_ratio | string | No | 1:1 | 1:1, 9:16, 16:9, 4:3, 3:4, 2:3, 3:2, 9:21, 21:9 | The aspect ratio of the generated media. |
| quality | number | No | 1 | 0.25, 0.5, 1, 2 | Use the quality parameter to control image detail and processing time. |
| stylize | integer | No | - | 0 ~ 1000 | Use the stylize parameter to control the artistic style in the image (0-1000). |
| chaos | integer | No | - | 0 ~ 100 | Use the chaos parameter to add variety to your image results (0-100). Higher values produce more unusual and unexpected results. |
| weird | integer | No | - | 0 ~ 3000 | Use the weird parameter to make your images quirky and unconventional (0-3000). |
| version | string | No | 7 | 6, 6.1, 7 | Use the version parameter to explore and switch between Midjourney model versions. |
| niji | string | No | 0 | 0, 5, 6 | Use the Niji model focused on anime and Eastern aesthetics. |
| seed | integer | No | -1 | -1 ~ 2147483647 | Use the seed parameter for testing and experimentation. Use the same seed and prompt to get similar results. |
| enable_base64_output | boolean | No | false | - | The random seed to use for the generation. |
Response Parameters
| Parameter | Type | Description |
|---|---|---|
| code | integer | HTTP status code (e.g., 200 for success) |
| message | string | Status message (e.g., “success”) |
| data.id | string | Unique identifier for the prediction, Task Id |
| data.model | string | Model ID used for the prediction |
| data.outputs | array | Array of URLs to the generated content (empty when status is not completed) |
| data.urls | object | Object containing related API endpoints |
| data.urls.get | string | URL to retrieve the prediction result |
| data.has_nsfw_contents | array | Array of boolean values indicating NSFW detection for each output |
| data.status | string | Status of the task: created, processing, completed, or failed |
| data.created_at | string | ISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”) |
| data.error | string | Error message (empty if no error occurred) |
| data.timings | object | Object containing timing details |
| data.timings.inference | integer | Inference time in milliseconds |