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

# Nanobanana 2.1 Bildgenerierung

> - Nano Banana 2.1 (gemini-nano-banana-2.1) unterstützt Text-zu-Bild, Bild-zu-Bild, Bildbearbeitung und die Zusammenführung mehrerer Bilder mit den Ausgabeauflösungen `1K`, `2K` und `4K`
- Asynchrone Verarbeitung: Verwenden Sie die zurückgegebene Aufgaben-ID, um [die Aufgabe abzufragen](/de/api-manual/task-management/get-task-detail)
- Die Links zu generierten Bildern sind 24 Stunden gültig. Speichern Sie die Bilder zeitnah
- Abrechnung: Ausgabebilder werden nach Auflösung, Eingabebilder pro Bild und Web- sowie Bildsuchen nach der tatsächlich ausgeführten Anzahl von Suchen abgerechnet. Prompt-Text, Textausgabe und Denkprozess werden pro Token abgerechnet. Maßgeblich sind die in der Aufgabenabfrage zurückgegebenen `usage`-Angaben



## OpenAPI

````yaml de/api-manual/image-series/nanobanana/nanobanana-2.1/nanobanana-2.1-image-generate.json POST /v1/images/generations
openapi: 3.1.0
info:
  title: Nano Banana 2.1 API
  description: >-
    Bildgenerierungsaufgaben mit KI-Modellen erstellen, mit Unterstützung
    verschiedener Modelle und Parameterkonfigurationen
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.evolink.ai
    description: Produktionsumgebung
security:
  - bearerAuth: []
tags:
  - name: Bildgenerierung
    description: APIs zur KI-Bildgenerierung
paths:
  /v1/images/generations:
    post:
      tags:
        - Bildgenerierung
      summary: Nano Banana 2.1 API
      description: >-
        - Nano Banana 2.1 (gemini-nano-banana-2.1) unterstützt Text-zu-Bild,
        Bild-zu-Bild, Bildbearbeitung und die Zusammenführung mehrerer Bilder
        mit den Ausgabeauflösungen `1K`, `2K` und `4K`

        - Asynchrone Verarbeitung: Verwenden Sie die zurückgegebene Aufgaben-ID,
        um [die Aufgabe
        abzufragen](/de/api-manual/task-management/get-task-detail)

        - Die Links zu generierten Bildern sind 24 Stunden gültig. Speichern Sie
        die Bilder zeitnah

        - Abrechnung: Ausgabebilder werden nach Auflösung, Eingabebilder pro
        Bild und Web- sowie Bildsuchen nach der tatsächlich ausgeführten Anzahl
        von Suchen abgerechnet. Prompt-Text, Textausgabe und Denkprozess werden
        pro Token abgerechnet. Maßgeblich sind die in der Aufgabenabfrage
        zurückgegebenen `usage`-Angaben
      operationId: createImageGenerationNanoBanana21
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ImageGenerationRequest'
            examples:
              text_to_image:
                summary: Text zu Bild
                value:
                  model: gemini-nano-banana-2.1
                  prompt: A cat playing on the grass
                  size: '16:9'
                  quality: 2K
              image_edit:
                summary: Bild-zu-Bild / Bildbearbeitung
                value:
                  model: gemini-nano-banana-2.1
                  prompt: >-
                    Ersetze die Katze im Bild durch einen Shiba Inu und behalte
                    Hintergrund und Beleuchtung bei
                  quality: 2K
                  image_urls:
                    - https://example.com/image1.png
              web_search:
                summary: Generierung mit Websuche
                value:
                  model: gemini-nano-banana-2.1
                  prompt: >-
                    Eine Wetterinfografik für Tokio an diesem Wochenende im
                    flachen Grafikstil mit klar lesbarem Text
                  size: '16:9'
                  quality: 2K
                  model_params:
                    web_search: true
      responses:
        '200':
          description: Bildgenerierungsaufgabe erfolgreich erstellt
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ImageGenerationResponse'
        '400':
          description: Ungültige Anfrageparameter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: invalid_request
                  message: Invalid request parameters
                  type: invalid_request_error
        '401':
          description: Nicht autorisiert, ungültiges oder abgelaufenes Token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: unauthorized
                  message: Invalid or expired token
                  type: authentication_error
        '402':
          description: Unzureichendes Kontingent, Aufladung erforderlich
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: insufficient_quota
                  message: Insufficient quota. Please top up your account.
                  type: insufficient_quota
        '403':
          description: Zugriff verweigert
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: model_access_denied
                  message: 'Token does not have access to model: gemini-nano-banana-2.1'
                  type: invalid_request_error
        '429':
          description: Ratenlimit überschritten
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: rate_limit_exceeded
                  message: Too many requests, please try again later
                  type: rate_limit_error
        '500':
          description: Interner Serverfehler
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: internal_error
                  message: Internal server error
                  type: api_error
components:
  schemas:
    ImageGenerationRequest:
      type: object
      required:
        - model
        - prompt
      properties:
        model:
          type: string
          description: >-
            Name des Bildgenerierungsmodells, offizieller Kanal, bessere
            Stabilität und Steuerbarkeit, geeignet für kommerzielle Szenarien
          example: gemini-nano-banana-2.1
          enum:
            - gemini-nano-banana-2.1
          default: gemini-nano-banana-2.1
        prompt:
          type: string
          description: >-
            Prompt zur Beschreibung des zu generierenden Bildes oder zur
            Bearbeitung eines Eingabebildes, maximal `4000` Token
          example: A cat playing in the grass
        size:
          type: string
          description: Seitenverhältnis des generierten Bildes, Standard ist `auto`
          enum:
            - auto
            - '1:1'
            - '1:4'
            - '4:1'
            - '1:8'
            - '8:1'
            - '2:3'
            - '3:2'
            - '3:4'
            - '4:3'
            - '4:5'
            - '5:4'
            - '9:16'
            - '16:9'
            - '21:9'
          default: auto
        quality:
          type: string
          description: >-
            Auflösung des Ausgabebildes, standardmäßig `2K`


            **Hinweis:**

            - Die Preise unterscheiden sich je nach Auflösung. Ausgabebilder
            werden nach der ausgewählten Auflösung abgerechnet. Es wird
            empfohlen, diesen Parameter ausdrücklich anzugeben
          enum:
            - 1K
            - 2K
            - 4K
          default: 2K
        image_urls:
          type: array
          description: >-
            Liste von Referenzbild-URLs für Bild-zu-Bild-Generierung,
            Bildbearbeitung und die Zusammenführung mehrerer Bilder


            **Hinweis:**

            - Bis zu `14` Eingabebilder pro Anfrage

            - Bildgröße: höchstens `20MB`

            - Unterstützte Dateiformate: `.jpeg`, `.jpg`, `.png`, `.webp`

            - Bild-URLs müssen für den Server direkt zugänglich sein oder beim
            Aufruf einen direkten Bilddownload auslösen (solche URLs enden
            üblicherweise mit einer Bilddateiendung wie `.png` oder `.jpg`)

            - Eingabebilder werden pro Bild abgerechnet
          items:
            type: string
            format: uri
          maxItems: 14
          example:
            - https://example.com/image1.png
            - https://example.com/image2.png
        model_params:
          type: object
          description: Modell-Erweiterungsparameter
          properties:
            web_search:
              type: boolean
              description: >-
                Aktiviert die Websuche, standardmäßig `false`. Bei Aktivierung
                sucht das Modell vor der Bildgenerierung nach aktuellen
                Informationen im Internet


                **Hinweis:**

                - Die Abrechnung erfolgt nach der tatsächlichen Anzahl der vom
                Modell ausgeführten Suchen. Eine Anfrage kann mehrere Suchen
                umfassen
              default: false
              example: true
            image_search:
              type: boolean
              description: >-
                Aktiviert die Bildsuche, standardmäßig `false`. Bei Aktivierung
                sucht das Modell vor der Bildgenerierung im Internet nach
                Bildern als visuelle Referenzen


                **Hinweis:**

                - Die Abrechnung erfolgt nach der tatsächlichen Anzahl der vom
                Modell ausgeführten Suchen. Eine Anfrage kann mehrere Suchen
                umfassen
              default: false
              example: true
            thinking_level:
              type: string
              description: >-
                Denkstufe, die die Tiefe des Denkprozesses vor der
                Bildgenerierung steuert, standardmäßig `auto`


                - `auto`: keine Vorgabe; das Modell entscheidet selbst

                - `min`: minimaler Denkprozess, schnellste Generierung

                - `medium`: ausgewogener Denkprozess

                - `high`: tiefgehender Denkprozess


                **Hinweis:**

                - Die beim Denkprozess erzeugten Token werden als Textausgabe
                abgerechnet
              enum:
                - auto
                - min
                - medium
                - high
              default: auto
              example: medium
        callback_url:
          type: string
          description: >-
            HTTPS-Callback-Adresse nach Aufgabenabschluss


            **Callback-Zeitpunkt:**

            - Wird ausgelöst, wenn die Aufgabe abgeschlossen, fehlgeschlagen
            oder abgebrochen wurde

            - Wird nach Abschluss der Abrechnungsbestätigung gesendet


            **Sicherheitsbeschränkungen:**

            - Nur HTTPS-Protokoll wird unterstützt

            - Callback an interne IP-Adressen ist verboten (127.0.0.1, 10.x.x.x,
            172.16-31.x.x, 192.168.x.x, usw.)

            - URL-Länge darf `2048` Zeichen nicht überschreiten


            **Callback-Mechanismus:**

            - Timeout: `10` Sekunden

            - Maximal `3` Wiederholungsversuche bei Fehler (Wiederholung nach
            `1` Sekunde/`2` Sekunden/`4` Sekunden)

            - Das Format des Callback-Antwortkörpers entspricht dem
            Antwortformat der Aufgabenabfrage-API

            - Ein 2xx-Statuscode der Callback-Adresse gilt als erfolgreich,
            andere Statuscodes lösen eine Wiederholung aus
          format: uri
          example: https://your-domain.com/webhooks/image-task-completed
    ImageGenerationResponse:
      type: object
      properties:
        created:
          type: integer
          description: Zeitstempel der Aufgabenerstellung
          example: 1757165031
        id:
          type: string
          description: Aufgaben-ID
          example: task-unified-1757165031-uyujaw3d
        model:
          type: string
          description: Tatsächlich verwendeter Modellname
          example: gemini-nano-banana-2.1
        object:
          type: string
          enum:
            - image.generation.task
          description: Spezifischer Aufgabentyp
        progress:
          type: integer
          description: Aufgabenfortschritt in Prozent (0-100)
          minimum: 0
          maximum: 100
          example: 0
        status:
          type: string
          description: Aufgabenstatus
          enum:
            - pending
            - processing
            - completed
            - failed
          example: pending
        task_info:
          $ref: '#/components/schemas/TaskInfo'
          description: Asynchrone Aufgabeninformationen
        type:
          type: string
          enum:
            - text
            - image
            - audio
            - video
          description: Aufgaben-Ausgabetyp
          example: image
        usage:
          $ref: '#/components/schemas/Usage'
          description: Nutzungs- und Abrechnungsinformationen
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              description: Fehlercode-Bezeichner
            message:
              type: string
              description: Fehlerbeschreibung
            type:
              type: string
              description: Fehlertyp
    TaskInfo:
      type: object
      properties:
        can_cancel:
          type: boolean
          description: Ob die Aufgabe abgebrochen werden kann
          example: true
        estimated_time:
          type: integer
          description: Geschätzte Abschlusszeit (Sekunden)
          minimum: 0
          example: 45
    Usage:
      type: object
      description: Nutzungs- und Abrechnungsinformationen
      properties:
        billing_rule:
          type: string
          description: Abrechnungsregel
          enum:
            - per_call
            - per_image
            - per_token
            - per_second
          example: per_image
        credits_reserved:
          type: number
          description: Geschätzter Guthabenverbrauch
          minimum: 0
          example: 3.0845
        user_group:
          type: string
          description: Abrechnungsgruppe, der der Benutzer angehört
          example: default
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        ##Alle APIs erfordern Bearer-Token-Authentifizierung##


        **API-Schlüssel erhalten:**


        Besuchen Sie die
        [API-Schlüsselverwaltungsseite](https://evolink.ai/dashboard/keys), um
        Ihren API-Schlüssel zu erhalten


        **Zum Anfrage-Header hinzufügen:**

        ```

        Authorization: Bearer YOUR_API_KEY

        ```

````

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