Openai Gpt Image 2 Text To Image
Playground
Try it on WavespeedAI!OpenAI’s GPT Image 2 Text-to-Image generates high-quality images from natural-language prompts. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
Features
OpenAI GPT Image 2 Text-to-Image
OpenAI GPT Image 2 Text-to-Image transforms natural-language prompts into high-quality images. Describe the scene, style, lighting, composition, or typography you want, and the model generates polished visuals with strong prompt fidelity, detailed rendering, and flexible creative control.
- Need to edit an existing image instead? Try OpenAI GPT Image 2 Edit.
Why Choose This?
-
Strong prompt fidelity Generate images that closely follow detailed natural-language instructions, including scene layout, visual style, and composition.
-
High-quality image generation Produce polished visuals suitable for marketing creatives, concept design, product mockups, and branded content.
-
Accurate text rendering Create images that include clearer, more usable in-image text for posters, ads, packaging, and interface mockups.
-
Flexible aspect ratios Support square, portrait, and landscape outputs for common social, editorial, and product use cases.
-
Production-ready API Access the model through a ready-to-use REST inference API for fast integration into applications and workflows.
Parameters
| Parameter | Required | Description |
|---|---|---|
| prompt | Yes | Text description of the desired image. |
| aspect_ratio | No | Aspect ratio: 1:1, 3:2, 2:3, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9. |
| resolution | No | Output resolution: 1k (default), 2k, or 4k. |
| quality | No | Image quality: low, medium (default), or high. |
How to Use
- Write your prompt — describe the image in detail, including subject, style, lighting, composition, and any text you want to appear.
- Choose aspect ratio (optional) — use
1:1for square,2:3or9:16for portrait,3:2or16:9for landscape, etc. - Submit — run the model and download your generated image.
Example Prompt
A cinematic product photo of a luxury perfume bottle on a marble surface, soft golden-hour lighting, shallow depth of field, elegant reflections, premium editorial photography style
Pricing
Pricing varies by quality and resolution.
| Quality | 1k | 2k | 4k |
|---|---|---|---|
| low | $0.010 | $0.020 | $0.030 |
| medium | $0.060 | $0.120 | $0.180 |
| high | $0.220 | $0.440 | $0.660 |
Best Use Cases
- Marketing creatives — Generate hero images, ad visuals, banners, and campaign assets from text prompts.
- E-commerce content — Create product shots, lifestyle scenes, and promotional visuals without a full studio workflow.
- Landing pages & web design — Produce branded illustrations, hero sections, and visual mockups for websites.
- Social media content — Quickly generate eye-catching visuals tailored to different content formats.
- Concept art & ideation — Explore visual directions for products, scenes, characters, and campaigns.
- Typography-driven visuals — Create posters, ads, and packaging concepts that require readable in-image text.
Pro Tips
- Be specific in your prompt — include subject, environment, camera angle, lighting, mood, and style.
- Use natural sentence structure rather than keyword stuffing for better prompt understanding.
- For text inside the image, put the exact wording in quotes.
- Mention visual style clearly, such as photorealistic, cinematic, vector illustration, oil painting, or isometric 3D.
- Test multiple aspect ratios when creating assets for different placements like social posts, banners, or landing pages.
- Iterate on prompt details like composition and lighting to get more consistent results.
Notes
promptis the only required field.- Supported aspect ratios are
1:1,3:2,2:3,3:4,4:3,4:5,5:4,9:16,16:9, and21:9. - This model is intended for text-to-image generation from natural-language instructions.
Related Models
- OpenAI GPT Image 2 Edit — Edit one or more reference images using natural-language instructions.
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/openai/gpt-image-2/text-to-image" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
"resolution": "1k",
"quality": "medium",
"enable_sync_mode": false,
"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 positive prompt for the generation. | |
| aspect_ratio | string | No | - | 1:1, 3:2, 2:3, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9 | The aspect ratio of the generated image. |
| resolution | string | No | 1k | 1k, 2k, 4k | The resolution of the output image. |
| quality | string | No | medium | low, medium, high | The quality of the generated image. Higher quality costs more. |
| enable_sync_mode | boolean | No | false | - | If set to true, the function will wait for the result to be generated and uploaded before returning the response. It allows you to get the result directly in the response. This property is only available through the API. |
| enable_base64_output | boolean | No | false | - | If enabled, the output will be encoded into a BASE64 string instead of a URL. This property is only available through the API. |
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 |
Result Request Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| id | string | Yes | - | Task ID |
Result Response Parameters
| Parameter | Type | Description |
|---|---|---|
| code | integer | HTTP status code (e.g., 200 for success) |
| message | string | Status message (e.g., “success”) |
| data | object | The prediction data object containing all details |
| data.id | string | Unique identifier for the prediction, the ID of the prediction to get |
| data.model | string | Model ID used for the prediction |
| data.outputs | string | 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.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 |