Fastest Nano Banana yet
Built on Gemini 3.1 Flash Lite Image, it returns text-to-image outputs in roughly 4 seconds — about 2.7x faster than Nano Banana 2 — so you can iterate in real time.
Generate and edit images with Google's Nano Banana 2 Lite through one unified API — the fastest, most cost-efficient model in the Nano Banana family. A single REST endpoint, async jobs, and webhooks, with no Google Cloud setup to manage.
Integrate Nano Banana 2 Lite with a single API call — one key, one unified endpoint, and shared billing across every model on Apiframe.
model: "nano-banana-2-lite"
Built on Gemini 3.1 Flash Lite Image, it returns text-to-image outputs in roughly 4 seconds — about 2.7x faster than Nano Banana 2 — so you can iterate in real time.
Priced for scale, it lets you generate thousands of images at a fraction of the cost of heavier production models, ideal for prototyping and high-throughput pipelines.
Outputs sharp 1K images in 14 aspect ratios, from square social posts to widescreen and vertical formats, covering most everyday needs.
A single drop-in API handles text-to-image and image editing with reference images, keeping the character consistency the Nano Banana family is known for.
Optional Google Web Search and Image Search grounding pull in real-time context, so specific subjects and up-to-date details render accurately.
Every output carries an invisible SynthID watermark so images can be identified as AI-generated.
A few outputs generated through the Nano Banana 2 Lite API on Apiframe.
A product photo of a sneaker on concrete, soft daylight, sharp detail.
A data visualization of global coffee consumption by country, clean labels and legend.
A greeting card reading 'Congratulations' in elegant script with a watercolor floral border.
A bilingual menu board with dishes in English and Spanish, legible prices, modern layout.
Send a single POST /v2/images/generate request with your API key to
generate with Nano Banana 2 Lite. The call returns a jobId you can poll or
receive via webhook.
curl -X POST https://api.apiframe.ai/v2/images/generate \
-H "X-API-Key: afk_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"prompt": "a sleek silver sports car on a coastal highway at sunset, hyper-realistic",
"model": "nano-banana-2-lite",
"nanoBananaParams": {
"image_input": "https://example.com/input.jpg",
"output_format": "jpg",
"google_search": false,
"image_search": false
}
}'import requests
response = requests.post(
"https://api.apiframe.ai/v2/images/generate",
headers={
"X-API-Key": "afk_your_api_key_here",
"Content-Type": "application/json",
},
json={
"prompt": "a sleek silver sports car on a coastal highway at sunset, hyper-realistic",
"model": "nano-banana-2-lite",
"nanoBananaParams": {
"image_input": "https://example.com/input.jpg",
"output_format": "jpg",
"google_search": False,
"image_search": False
}
},
)
print(response.json()) # { "jobId": "...", "status": "QUEUED" }const response = await fetch("https://api.apiframe.ai/v2/images/generate", {
method: "POST",
headers: {
"X-API-Key": "afk_your_api_key_here",
"Content-Type": "application/json",
},
body: JSON.stringify({
"prompt": "a sleek silver sports car on a coastal highway at sunset, hyper-realistic",
"model": "nano-banana-2-lite",
"nanoBananaParams": {
"image_input": "https://example.com/input.jpg",
"output_format": "jpg",
"google_search": false,
"image_search": false
}
}),
});
const { jobId } = await response.json();
console.log(jobId);Generation is asynchronous. A successful submission returns 202 Accepted with a jobId. Poll GET /v2/jobs/{id} (or supply a webhook_url) until the status is COMPLETED; the result field then holds the output URL(s).
{
"jobId": "b2c3d4e5-f6a7-8901-bcde-f23456789012",
"status": "QUEUED"
}curl https://api.apiframe.ai/v2/jobs/JOB_ID \
-H "X-API-Key: afk_your_api_key_here"import requests, time
while True:
job = requests.get(
"https://api.apiframe.ai/v2/jobs/JOB_ID",
headers={"X-API-Key": "afk_your_api_key_here"},
).json()
if job["status"] in ("COMPLETED", "FAILED"):
break
time.sleep(2)
print(job["result"])let job;
do {
await new Promise((r) => setTimeout(r, 2000));
job = await fetch("https://api.apiframe.ai/v2/jobs/JOB_ID", {
headers: { "X-API-Key": "afk_your_api_key_here" },
}).then((r) => r.json());
} while (job.status !== "COMPLETED" && job.status !== "FAILED");
console.log(job.result);Request parameters accepted by the Nano Banana 2 Lite endpoint. Model-specific options are nested under the params object shown below.
| Parameter | Type | Required | Default | Allowed / range | Description |
|---|---|---|---|---|---|
| prompt | string | required | — | — | Text description of what to generate. |
| model | string | required | "nano-banana-2-lite" | "nano-banana-2-lite" | The model identifier for this endpoint. |
| nanoBananaParams.image_input | string (URL) | optional | — | — | Compose with or edit a reference image. |
| nanoBananaParams.output_format | string | optional | "jpg" | "jpg", "png", "webp" | Output format |
| nanoBananaParams.google_search | boolean | optional | false | — | Google search grounding |
| nanoBananaParams.image_search | boolean | optional | false | — | Image search grounding |
Common questions about the Nano Banana 2 Lite API.
Google's Gemini 3.1 Flash Lite Image — the fastest and most cost-efficient model in the Nano Banana family, built for high-velocity, high-volume image generation.
It is around 2.7x faster and cheaper, and generates at 1K resolution only, whereas Nano Banana 2 goes up to 4K and is better for the most demanding work.
1K resolution across 14 aspect ratios. There is no resolution parameter — it is optimized for speed and scale.
Roughly 4 seconds per image, making it well suited to prototyping, real-time apps, and batch generation.
Yes. Pass one or more image URLs to edit or compose, and optionally enable Google Search or Image Search grounding for real-world context.
Through Apiframe, as well as Google AI Studio, the Gemini API, and Gemini Enterprise Agent Platform.
Still have questions?
Get your API key and integrate Nano Banana 2 Lite in minutes — Pay-as-you-go.
Questions? Join our Discord or contact sales.