> ## Documentation Index
> Fetch the complete documentation index at: https://docs.routerbase.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Nano Banana Pro — Edit

> Edit images with natural-language prompts using Google Nano Banana Pro (Gemini 3 Pro Image).

|              |                                  |
| ------------ | -------------------------------- |
| **Model ID** | `google/gemini-3-pro-image-edit` |
| **Family**   | `gemini-3-pro-image`             |
| **Task**     | `edit`                           |
| **Provider** | Google                           |
| **Modality** | Image                            |

## Parameters

<ParamField body="prompt" type="string" required>
  Natural-language instruction describing the edit.
</ParamField>

<ParamField body="image_urls" type="string[]" required>
  One to fourteen reference image URLs to edit. Must be publicly reachable HTTPS URLs.
</ParamField>

<ParamField body="aspect_ratio" type="string">
  Output aspect ratio. One of `1:1`, `2:3`, `3:2`, `3:4`, `4:3`, `4:5`, `5:4`, `9:16`, `16:9`, `21:9`. Default: `1:1`.
</ParamField>

<ParamField body="size" type="string">
  Output resolution. One of `1K`, `2K`, `4K`. Default: `1K`.
</ParamField>

<ParamField body="callback_url" type="string">
  Webhook URL for completion notification.
</ParamField>

<Note>
  Unlike the other Gemini image endpoints, Nano Banana Pro edit does **not**
  accept an `output_format` parameter — omit it.
</Note>

## Example

<CodeGroup>
  ```bash cURL theme={null}
  curl -X POST https://routerbase.com/v1/images/generations \
    -H "Authorization: Bearer sk-rb-xxxxxxxxxxxx" \
    -H "Content-Type: application/json" \
    -d '{
      "model": "google/gemini-3-pro-image-edit",
      "prompt": "Restyle as an oil painting, keep the composition",
      "image_urls": ["https://example.com/portrait.jpg"],
      "aspect_ratio": "1:1"
    }'
  ```

  ```python Python theme={null}
  from openai import OpenAI

  client = OpenAI(
      api_key="sk-rb-xxxxxxxxxxxx",
      base_url="https://routerbase.com/v1",
  )

  img = client.images.generate(
      model="google/gemini-3-pro-image-edit",
      prompt="Restyle as an oil painting, keep the composition",
      extra_body={
          "image_urls": ["https://example.com/portrait.jpg"],
          "aspect_ratio": "1:1",
      },
  )
  print(img.data[0].url)
  ```
</CodeGroup>
