ApiframeApiframe Docs
Image GenerationNano Banana

Nano Banana Pro

Professional-grade image generation with accurate text rendering, advanced reasoning, and resolution up to 4K.

Use in Apiframe Studio

POST /v2/images/generatemodel: "nano-banana-pro"

Professional-grade image generation built on Gemini 3 Pro. Creates detailed visuals with legible text in multiple languages, supports blending up to 14 reference images, and offers resolutions up to 4K.

See Image Generation overview for common request fields, response format, and error codes.

Model-specific parameters

ParameterTypeDescription
nanoBananaParams.aspect_ratiostring"match_input_image" or "W:H" format (e.g. "16:9")
nanoBananaParams.output_formatstring"jpg" (default), "png", or "webp"
nanoBananaParams.image_inputstring[]Up to 14 reference image URLs
nanoBananaParams.resolutionstring"512px", "1K", "2K" (default), or "4K"

Credit cost

ResolutionCredits
1K / 2K26
4K52

512px is billed at the 1K rate.

Example result

Once the job is COMPLETED, the result object on GET /v2/jobs/:id looks like:

{
  "images": [
    "https://cdn2.apiframe.ai/images/a1b2c3d4-e5f6-7890-abcd-ef1234567890-1.png"
  ]
}

See Result format for field details.

Code examples

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 minimalist poster with the text HELLO WORLD in bold serif font",
    "model": "nano-banana-pro",
    "nanoBananaParams": {
      "resolution": "2K",
      "output_format": "png"
    }
  }'
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 minimalist poster with the text HELLO WORLD in bold serif font",
        "model": "nano-banana-pro",
        "nanoBananaParams": {
            "resolution": "2K",
            "output_format": "png",
        },
    },
)
print(response.json())
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 minimalist poster with the text HELLO WORLD in bold serif font",
    model: "nano-banana-pro",
    nanoBananaParams: {
      resolution: "2K",
      output_format: "png",
    },
  }),
});
console.log(await response.json());

Multi-image blending

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": "Place this product in a modern kitchen setting",
    "model": "nano-banana-pro",
    "nanoBananaParams": {
      "image_input": ["https://example.com/product.jpg", "https://example.com/kitchen.jpg"],
      "resolution": "4K"
    }
  }'
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": "Place this product in a modern kitchen setting",
        "model": "nano-banana-pro",
        "nanoBananaParams": {
            "image_input": ["https://example.com/product.jpg", "https://example.com/kitchen.jpg"],
            "resolution": "4K",
        },
    },
)
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: "Place this product in a modern kitchen setting",
    model: "nano-banana-pro",
    nanoBananaParams: {
      image_input: ["https://example.com/product.jpg", "https://example.com/kitchen.jpg"],
      resolution: "4K",
    },
  }),
});

Try it

POST/v2/images/generateTry it

On this page