Model API
Nano Banana 2
Nano Banana 2 is Google's new state-of-the-art fast image generation and editing model
Model id
nano-banana-2This model has other modes with their own ids: nano-banana-2/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": "nano-banana-2",
"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": "nano-banana-2", "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. |
return_history | boolean | Return reusable native conversations with original image parts and provider thought signatures. Uses a native provider. Each generated conversation is independent; send its messages as history for the next turn. |
thinking_level | string (enum) | Controls thinking effort ('minimal' or 'high') and requests thought summaries. Omit to use the provider default ('minimal'); thinking cannot be disabled. |
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. |
enable_image_search | boolean | Ground image generation with Google Image Search. Can be combined with enable_web_search; source attribution is returned in grounding_metadata. Uses direct Google or Vertex APIs. |
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
- 0.5K$0.10/ image
- 1K$0.13/ image
- 2K$0.20/ image
- 4K$0.26/ image
The exact charge for your input comes from a quote. How charges settle