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

# Nano Banana 2.1 API

> Google's newer Nano Banana image model, with improved visual quality, text rendering and consistency. Text-to-image up to 4K; for editing with reference images use [`nano-banana-2-1-edit`](/api-reference/image-api/nano-banana-2-1-edit).

**Pricing** — per image, in tokens (USD at $0.02/token). Thinking is included in the price:

| image_size | tokens | USD |
|---|---|---|
| 1k | 2.92 | $0.0584 |
| 2k | 4.02 | $0.0804 |
| 4k | 8.08 | $0.1616 |

Returns an `img_uuid`; poll GET /api/v1/jobs/detail (or use `custom_callback_url`) to get the generated image.



## OpenAPI

````yaml api-reference/image-api/openapi-nano-banana-2-1.json POST /api/v1/images/generations
openapi: 3.1.0
info:
  title: GoEnhance API - Nano Banana 2.1
  description: Nano Banana 2.1
  version: 1.0.0
servers:
  - url: https://api.goenhance.ai
security: []
paths:
  /api/v1/images/generations:
    post:
      tags:
        - ImageAPI
      summary: Nano Banana 2.1
      description: >-
        Google's newer Nano Banana image model, with improved visual quality,
        text rendering and consistency. Text-to-image up to 4K; for editing with
        reference images use
        [`nano-banana-2-1-edit`](/api-reference/image-api/nano-banana-2-1-edit).


        **Pricing** — per image, in tokens (USD at $0.02/token). Thinking is
        included in the price:


        | image_size | tokens | USD |

        |---|---|---|

        | 1k | 2.92 | $0.0584 |

        | 2k | 4.02 | $0.0804 |

        | 4k | 8.08 | $0.1616 |


        Returns an `img_uuid`; poll GET /api/v1/jobs/detail (or use
        `custom_callback_url`) to get the generated image.
      parameters:
        - name: Authorization
          in: header
          description: ''
          required: false
          example: '{{Authorization}}'
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                model:
                  type: string
                  enum:
                    - nano-banana-2-1
                  description: Model name. Must be `nano-banana-2-1`.
                prompt:
                  type: string
                  minLength: 1
                  maxLength: 2000
                  description: Text prompt describing the image.
                ratio:
                  type: string
                  enum:
                    - auto
                    - '1:1'
                    - '16:9'
                    - '9:16'
                    - '4:3'
                    - '3:4'
                    - '2:3'
                    - '3:2'
                    - '4:5'
                    - '5:4'
                    - '21:9'
                    - '1:4'
                    - '4:1'
                    - '1:8'
                    - '8:1'
                  description: >-
                    Output aspect ratio. Defaults to auto, which lets the model
                    choose the framing from your prompt.
                  default: auto
                image_size:
                  type: string
                  enum:
                    - 1k
                    - 2k
                    - 4k
                  default: 1k
                  description: |-
                    Output resolution. Price per image:

                    - 1k — 2.92 tokens ($0.0584)
                    - 2k — 4.02 tokens ($0.0804)
                    - 4k — 8.08 tokens ($0.1616)

                    `0.5k` is not available on this model.
                web_search:
                  type: boolean
                  description: Enable web search grounding.
                thinking_level:
                  type: string
                  enum:
                    - High
                    - Minimal
                  description: >-
                    Reasoning depth. Omit it to use the model's default
                    (medium); thinking cannot be turned off on this model.
                custom_callback_url:
                  type: string
                  format: uri
                  description: >-
                    Optional. A publicly accessible HTTPS URL. When the task
                    status changes (processing / success / failed), GoEnhance
                    sends a POST request to this URL. The request body is
                    identical to the response of GET /api/v1/jobs/detail. If
                    your server does not respond with HTTP 200, the notification
                    is retried up to 3 times, with a 3-second timeout per
                    attempt.
                  example: https://your-server.com/goenhance/callback
              required:
                - model
                - prompt
            example:
              model: nano-banana-2-1
              prompt: a beautiful girl
              image_size: 1k
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                  msg:
                    type: string
                  data:
                    type: object
                    properties:
                      img_uuid:
                        type: string
                      cost:
                        type: number
                        description: >-
                          Tokens deducted for this request. This is the amount
                          actually charged, so it already reflects any discount
                          active on your account and can be lower than the
                          listed price. Tokens are deducted when the task is
                          accepted, and refunded automatically if the generation
                          ends in failure.
                        example: 5.82
                    required:
                      - img_uuid
                      - cost
                required:
                  - code
                  - msg
                  - data
              examples:
                '1':
                  summary: Success
                  value:
                    code: 0
                    msg: Success
                    data:
                      img_uuid: c12b656c-747a-44fd-9c80-add79b0c52d5
                      cost: 5.82
                '2':
                  summary: Insufficient tokens
                  value:
                    code: 100
                    msg: tokens is not enough
                quota:
                  summary: API key quota exceeded
                  value:
                    code: 101
                    msg: 'API key quota exceeded: 4990 of 5000 tokens used (monthly)'
          headers: {}
        '401':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                  msg:
                    type: string
                required:
                  - code
                  - msg
          headers: {}
      deprecated: false
      security: []

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.