POST /v1/images/generations. Each generated image comes back as a url or b64_json entry in data.
const image = await client.generateImage({
model: "openai/gpt-image-1",
prompt: "A lighthouse at golden hour",
size: "1024x1024",
n: 1,
});
image = client.generate_image({
"model": "openai/gpt-image-1",
"prompt": "A lighthouse at golden hour",
"size": "1024x1024",
"n": 1,
})
client, err := phaseo.NewFromEnv()
if err != nil {
panic(err)
}
resp, err := client.CreateImage(context.Background(), map[string]interface{}{
"model": "openai/gpt-image-1",
"prompt": "A lighthouse at golden hour",
"size": "1024x1024",
})
if err != nil {
panic(err)
}
fmt.Println(resp["data"])
using PhaseoSdk;
var client = new Phaseo();
var response = await client.GenerateImage(new Dictionary<string, object>
{
["model"] = "openai/gpt-image-1",
["prompt"] = "A lighthouse at golden hour",
["size"] = "1024x1024",
["n"] = 1,
});
<?php
require 'vendor/autoload.php';
use Phaseo\Sdk\Phaseo;
$client = new Phaseo();
$response = $client->generateImage([
'model' => 'openai/gpt-image-1',
'prompt' => 'A lighthouse at golden hour',
'size' => '1024x1024',
'n' => 1,
]);
require 'phaseo_sdk'
client = PhaseoSdk::Phaseo.new
response = client.generate_image(
model: 'openai/gpt-image-1',
prompt: 'A lighthouse at golden hour',
size: '1024x1024',
n: 1
)
import app.phaseo.sdk.Phaseo;
import java.util.Map;
Phaseo client = new Phaseo(System.getenv("PHASEO_API_KEY"));
var response = client.createImage(Map.of(
"model", "openai/gpt-image-1",
"prompt", "A lighthouse at golden hour"
));
System.out.println(response);
let response = client.post("/images/generations", &json!({
"model": "openai/gpt-image-1",
"prompt": "A lighthouse at golden hour",
"size": "1024x1024"
}))?;
| Language | Method | Notes |
|---|---|---|
| TypeScript | client.generateImage(request) | client.streamImage() sends the same request with stream: true and yields partial-image events. |
| Python | client.generate_image(request) | client.images.generate(request) does the same. No image streaming helper. |
| Go | client.CreateImage(ctx, req) | Returns a map[string]interface{}. |
| C# | client.GenerateImage(request), alias CreateImage | Returns a Dictionary<string, object>?. |
| PHP | $client->generateImage($request), alias createImage() | Returns an array. |
| Ruby | client.generate_image(...), alias create_image | Returns a Hash. |
| Java | client.createImage(request) | Takes a Map or Jackson JsonNode; returns a JsonNode. |
| Rust | No image helper | client.post("/images/generations", &request) sends the JSON body and returns a PhaseoResponse. |
Parameters
Field names are the JSON body fields in every SDK.| Field | Notes |
|---|---|
model, prompt | Required. GPT Image prompts can be up to 32,000 characters. |
n | Number of images, 1 to 10. |
size | For example 1024x1024, 1024x1792 or 1792x1024; supported sizes depend on the model. |
aspect_ratio, width, height | Model-dependent alternatives to size. |
quality | Model-dependent: standard or hd on dall-e-3; auto, low, medium or high on GPT Image models. |
output_format, output_compression | png, jpeg or webp; compression (0 to 100) needs jpeg or webp. |
background | transparent, opaque or auto. Transparent needs png or webp. |
response_format | url or b64_json. GPT Image models reject this field. |
style | Model-dependent, such as vivid or natural on dall-e-3. GPT Image models reject this field. |
stream, partial_images | Stream up to 3 partial images, with streamImage() in TypeScript. |
user | End-user tag for abuse tracking. |
Response
ImagesGenerationResponse:
{
"data": [
{
"url": "https://example.com/generated_image.png"
}
]
}
b64_json instead of url.