Models
ImageGoogletext-to-imageimage-edit4k

Nano Banana 2.1

Google Gemini image model: consistent multi-reference editing, 1K–4K output.

Model ID: nano-banana-2.1

Playground

1 – 4

Estimated cost—

Use the same request from code — API docs

Provider prices for this request

Enter a prompt to compare provider prices.

Result

Your generation will appear here.

Pricing by provider

Prices are per unit; requests without a provider are routed to the cheapest provider that supports your parameters.

ProviderOptionPrice (USD)Credits
fal.airesolution: 2K$0.05910% off$0.053 / image14 / image
resolution: 1K$0.0410% off$0.036 / image9 / image
resolution: 4K$0.13410% off$0.121 / image31 / image
Replicateresolution: 1K$0.03410% off$0.03 / image8 / image
resolution: 2K$0.0510% off$0.045 / image12 / image
resolution: 4K$0.11310% off$0.102 / image26 / image
WaveSpeedAIresolution: 1K$0.0410% off$0.036 / image9 / image
resolution: 2K$0.0610% off$0.054 / image14 / image
resolution: 4K$0.13510% off$0.121 / image31 / image
KIE AIresolution: 4K$0.04510% off$0.041 / image11 / image
resolution: 1K$0.0210% off$0.018 / image5 / image
resolution: 2K$0.0310% off$0.027 / image7 / image
EvoLinkresolution: 1K$0.03110% off$0.028 / image7 / image
resolution: 2K$0.04610% off$0.041 / image11 / image
resolution: 4K$0.10310% off$0.093 / image24 / image
AtlasCloudresolution: 1K$0.0410% off$0.036 / image9 / image
OpenRouterresolution: 1K$0.03410% off$0.03 / image8 / image
resolution: 4K$0.11310% off$0.102 / image26 / image
resolution: 2K$0.0510% off$0.045 / image12 / image

API reference

Endpoints

Base URL: https://01router.com/api/v1

POST/generationsCreate a generation (charges credits)
GET/generations/{id}Get a generation; polls the provider while running
POST/quotePrice a request on every provider (no charge, no key needed)

Authentication

Send your API key as a Bearer token. Requests are billed to the key owner's credits.

Authorization: Bearer sk_xxxxxxxxxxxxxxxx
Get an API key

Request body

NameTypeRequiredDescription
modelstringYes"nano-banana-2.1"
providerstringNoPin a provider; omit to auto-route to the cheapest. One of: fal | replicate | wavespeed | kie | evolink | atlascloud | openrouter
inputobjectYesModel parameters, see the input fields below.

input fields

Unified parameters work on every provider; some providers support a narrower range — check the quote endpoint or the playground.

NameTypeValuesDefault
prompt*text——
image_urls
Optional — switches to image editing
images≤ 14—
aspect_ratioenum1:1 | 16:9 | 9:16 | 4:3 | 3:4 | 3:2 | 2:3 | 4:5 | 5:4 | 21:91:1
resolutionenum1K | 2K | 4K1K
num_imagesinteger1 – 41

Example request

curl https://01router.com/api/v1/generations \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "nano-banana-2.1",
  "provider": "fal",
  "input": {
    "prompt": "A cinematic shot of a red fox running through snow",
    "aspect_ratio": "1:1",
    "resolution": "1K",
    "num_images": 1
  }
}'

# poll until status is "succeeded" or "failed"
curl https://01router.com/api/v1/generations/<id> -H "Authorization: Bearer $API_KEY"

Response

Pass the model id, its unified input parameters and optionally a provider slug. The response returns immediately with the task id; image models on synchronous providers may already be succeeded.

{
  "id": "gen_6f1c…",
  "object": "generation",
  "model": "nano-banana-2.1",
  "type": "image",
  "provider": "fal",
  "status": "processing",
  "input": {
    "prompt": "…",
    "aspect_ratio": "1:1",
    "resolution": "1K",
    "num_images": 1
  },
  "outputs": [],
  "error": null,
  "credits": 0,
  "price_usd": 0,
  "created_at": "2026-10-23T08:00:00.000Z",
  "completed_at": null
}

Get the result

Poll every few seconds until status is succeeded or failed. Output URLs are provider-hosted and may expire — download them promptly.

curl https://01router.com/api/v1/generations/gen_6f1c… -H "Authorization: Bearer $API_KEY"

{ "id": "gen_6f1c…", "model": "nano-banana-2.1", "status": "succeeded", "outputs": ["https://…"], … }

Quote

Same body as creating a generation. Returns every available provider sorted by price, plus the ones that cannot serve the request and why.

curl https://01router.com/api/v1/quote -H "Content-Type: application/json" \
  -d '{"model":"nano-banana-2.1","input":{"prompt":"…","aspect_ratio":"1:1","resolution":"1K","num_images":1}}'

Auth, routing, billing and error codes are covered in Gateway API reference