Model API
Nano Banana 2.1
Nano Banana 2.1 by Google generates one to four images from a text prompt at 1K, 2K or 4K resolution.
Model id
google/nano-banana-2.1This model has other modes with their own ids: google/nano-banana-2.1/edit.
Run it
Quote the input, start the generation with the quote, then poll the job. Set RAYWAKE_API_KEY first; see Authentication.
# 1. Price the exact input (quotes are valid for up to 10 minutes)
curl -s https://api.raywake.com/v1/quotes \
-H "Authorization: Bearer $RAYWAKE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "google/nano-banana-2.1",
"input": {
"prompt": "A red ceramic cup on a wooden table, soft morning light"
}
}'
# 2. Start the generation with the quote_id from step 1
curl -s https://api.raywake.com/v1/generate \
-H "Authorization: Bearer $RAYWAKE_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{"model": "google/nano-banana-2.1", "quote_id": "QUOTE_ID", "input": {"prompt":"A red ceramic cup on a wooden table, soft morning light"}}'
# 3. Poll until the status is terminal
curl -s https://api.raywake.com/v1/jobs/JOB_ID \
-H "Authorization: Bearer $RAYWAKE_API_KEY"Input
| Name | Type | Description |
|---|---|---|
promptrequired | string | The text prompt to generate an image from. |
num_images | integer | The number of images to generate. |
seed | integer | The seed for the random number generator. |
aspect_ratio | string (enum) | The aspect ratio of the generated image. Supports extreme ratios: 4:1, 1:4, 8:1, 1:8. Use "auto" to let the model decide based on the prompt. |
output_format | string (enum) | The format of the generated image. |
safety_tolerance | string (enum) | The safety tolerance level for content moderation. 1 is the most strict (blocks most content), 6 is the least strict. |
sync_mode | boolean | If `True`, the media will be returned as a data URI and the output data won't be available in the request history. |
system_prompt | string | Optional system instruction that steers the model's persona and output style across the request. Leave blank to omit; when provided, it is sent as the system instruction to Gemini (or as a system message on OpenAI-compatible providers). |
resolution | string (enum) | The resolution of the image to generate. |
limit_generations | boolean | Experimental parameter to limit the number of generations from each round of prompting to 1. Set to `True` to to disregard any instructions in the prompt regarding the number of images to generate and ignore any intermediate images generated by the model. This may affect generation quality. |
enable_web_search | boolean | Enable web search for the image generation task. This will allow the model to use the latest information from the web to generate the image. |
thinking_level | string (enum) | How much the model reasons before generating. Higher levels can improve complex compositions and use more thinking tokens. |
Output
A succeeded job lists its results under outputs, stored on our side. See Jobs for every field.
"outputs": [
{ "type": "image", "url": "https://…", "mime_type": "image/png", "thumbnail_url": "https://…" }
]Pricing
- up to · 1,000 characters$0.10/ run
The exact charge for your input comes from a quote. How charges settle