Nano Banana Pro

Nano Banana Pro is a high-detail image generation and editing model with resolutions from 1K to 4K, multiple reference images, and both OpenAI Images and Gemini generateContent request styles. It is suited to creative exploration, product experiences, marketing assets, and automated content workflows that need dependable API access. Use the playground below with representative prompts and input media, then adjust the parameters available for this model to evaluate results against your actual use case. Before a production rollout, compare output quality, subject consistency, processing time, failure handling, and estimated cost. The input methods, parameter ranges, and output options shown on this page describe the currently supported integration surface.

A polished crystal sculpture surrounded by glass cubes and detailed alpine landscape panels
Model ID
nano-banana-pro
Provider
Google
API endpoint
/v1/images/generations
Pricing
0.029411764706
Last updated
2026-09-11

Capabilities

  • Image generation through the current public endpoint
  • Editing or reference-image controls when exposed by the live schema
  • Current parameters including prompt, images, resolution

Limitations

  • Capabilities and parameter ranges can change; pin and validate the parameter set used in production
  • Do not assume support for parameters absent from the live request schema
  • Asynchronous jobs require explicit polling, failure, timeout, and safety-status handling

Use cases

  • Product prototypes and automated content workflows
  • Batch media generation and programmatic creative tooling
  • Multi-model applications that need unified authentication, billing, and usage records

Pricing and billing examples

  • 1K image | 0.029411764706 | output_images | {"resolution_tier":"1k"}
  • 2K image | 0.058823529412 | output_images | {"resolution_tier":"2k"}
  • 4K image | 0.088235294118 | output_images | {"resolution_tier":"4k"}
  • 8K image | 0.130882352941 | output_images | {"resolution_tier":"8k"}

Request parameters

ParameterTypeRequiredDefaultOptions
modelstringYes
prompttextareaYes
imagesasset_listNo
resolutionselectYes1k1k, 2k, 4k
aspect_ratioselectNo1:11:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9
nintegerYes1
output_formatselectNopngpng

API examples

cURL

curl -X POST 'https://api.uniall.ai/v1/images/generations' \
  -H 'Authorization: Bearer $UNIALL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"aspect_ratio":"1:1","model":"nano-banana-pro","n":1,"output_format":"png","prompt":"Describe the output you want","resolution":"1k"}'

Python

import json
import requests

payload = json.loads(r'''{"aspect_ratio":"1:1","model":"nano-banana-pro","n":1,"output_format":"png","prompt":"Describe the output you want","resolution":"1k"}''')
response = requests.post(
    "https://api.uniall.ai/v1/images/generations",
    headers={"Authorization": "Bearer " + UNIALL_API_KEY},
    json=payload,
)
response.raise_for_status()
result = response.json()

JavaScript

const response = await fetch("https://api.uniall.ai/v1/images/generations", {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.UNIALL_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({"aspect_ratio":"1:1","model":"nano-banana-pro","n":1,"output_format":"png","prompt":"Describe the output you want","resolution":"1k"}),
});

if (!response.ok) throw new Error(`HTTP ${response.status}`);
const result = await response.json();

Frequently asked questions

What API endpoint does nano-banana-pro use?

The endpoint is resolved from the current model capabilities and request schema and shown on this page.

How is nano-banana-pro priced?

The pricing section reads the current structured billing configuration, so editorial text does not need a rewrite after a price change.

Can I use Python?

Yes. The example uses the current endpoint and exact model identifier.

Are JavaScript and cURL examples included?

Yes. All examples share the same live request structure.

Which resolution, duration, or reference-image controls are supported?

Supported controls come from the current request schema. Do not assume fields that are not listed.

What should I validate before production use?

Validate parameters, timeouts, error handling, and asynchronous generation status behavior after model updates.