Docs/Image/Text to Image
Nano Banana Pro· Text to Image
Text to Image
POST
https://api.sozdai.ai/v1/media/generationsPricing Model
1K 7,65 ₽ · 2K 7,65 ₽ · 4K 10,2 ₽ per image. Billed only on success.
Execution Flow
Asynchronous submission model. Submitting requests queues background workers.
#Submit a task
Media generation is asynchronous: you get a task id immediately, without waiting.
bash
curl https://api.sozdai.ai/v1/media/generations \
-H "Authorization: Bearer $CORRY_KEY" \
-H "Content-Type: application/json" \
-d '{ "model": "nano-banana-pro", "prompt": "a cute robot mascot, flat vector logo" }'
# → { "id": "cmus7q0x9000108l3f5g2abcd", "status": "queued" }#Request parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
prompt | string | Yes | — | Text prompt describing the image to generate (max 20000 chars). |
image_input | string[] | No | — | Optional reference/source image URLs to transform (max 8, ≤30MB each; jpeg/png/webp). |
aspect_ratio | string | No | 1:1 | Aspect ratio of the output image. Options: 1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9, auto |
resolution | string | No | 1K | Output resolution. Higher resolutions take longer to generate. Options: 1K, 2K, 4K |
output_format | string | No | png | Format of the output image. Options: png, jpg |
callback_url | string | No | — | Optional public http(s) URL. We POST the task result here the moment generation finishes (success or failure). |
#Poll for the result
Generation runs asynchronously — the submit call returns immediately with a task id. Poll this endpoint with that id every few seconds until status becomes succeeded (result ready) or a terminal error (failed / timeout).
GET
https://api.sozdai.ai/v1/media/generations/{id}bash
# take the id from the submit response, then poll every ~3s
curl https://api.sozdai.ai/v1/media/generations/cmus7q0x9000108l3f5g2abcd \
-H "Authorization: Bearer $CORRY_KEY"
# repeat until "status" is "succeeded" (or "failed" / "timeout")#Response example
On submit
json
{
"id": "cmus7q0x9000108l3f5g2abcd",
"status": "queued",
"type": "image",
"model": "nano-banana-pro"
}On success (after polling)
json
{
"id": "cmus7q0x9000108l3f5g2abcd",
"status": "succeeded",
"type": "image",
"model": "nano-banana-pro",
"result": { "urls": ["https://cdn.sozdai.ai/image/1782537315223-b49c0c1b771f.png"] },
"cost": "0.0500",
"currency": "USD"
}Response fields
| Field | Type | Description |
|---|---|---|
status | string | Task status: queued / submitted / succeeded / failed / timeout. |
type | string | Media type: image / video / music. |
model | string | The model you requested. |
result | object | Present on success. result.urls is an array of permanent file URLs. |
error | string | Error message, present when the task failed. |
cost | string | Amount charged for this task — a USD string (e.g. "0.1200"). See the currency field. |
currency | string | Currency of cost — always "USD". |