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

Use this in every request
google/nano-banana-2.1

This 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

Input fields for google/nano-banana-2.1
NameTypeDescription
promptrequiredstring
The text prompt to generate an image from.
num_imagesinteger
The number of images to generate.

Default: 1

seedinteger
The seed for the random number generator.
aspect_ratiostring (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.

Default: auto

One of: auto, 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16, 4:1, 1:4, 8:1, 1:8

output_formatstring (enum)
The format of the generated image.

Default: png

One of: jpeg, png, webp

safety_tolerancestring (enum)
The safety tolerance level for content moderation. 1 is the most strict (blocks most content), 6 is the least strict.

Default: 4

One of: 1, 2, 3, 4, 5, 6

sync_modeboolean
If `True`, the media will be returned as a data URI and the output data won't be available in the request history.

Default: false

system_promptstring
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).
resolutionstring (enum)
The resolution of the image to generate.

Default: 1K

One of: 1K, 2K, 4K

limit_generationsboolean
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.

Default: true

enable_web_searchboolean
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.

Default: false

thinking_levelstring (enum)
How much the model reasons before generating. Higher levels can improve complex compositions and use more thinking tokens.

Default: medium

One of: minimal, medium, high

Output

A succeeded job lists its results under outputs, stored on our side. See Jobs for every field.

Job excerpt
"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