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

# Create image from text - Nano Banana Pro

> Generate high-quality images from text descriptions using Google's Nano Banana Pro model (Gemini 3).

**Key Features:**
- Advanced image generation with complex compositions
- Support for reference images for guided generation
- Multiple aspect ratios and resolutions
- High-quality output up to 4K resolution

**Best for:**
- High-quality image generation
- Complex scene compositions
- Reference-guided generation
- Professional visual content




## OpenAPI

````yaml post /v1/ai/text-to-image/nano-banana-pro
openapi: 3.0.0
info:
  description: >-
    The Magnific API is your gateway to a vast collection of high-quality
    digital resources for your applications and projects. As a leading platform,
    it offers a wide range of graphics, including vectors, photos,
    illustrations, icons, PSD templates, and more, all curated by talented
    designers from around the world.
  title: Magnific API
  version: 1.0.0
servers:
  - description: B2B API Production V1
    url: https://api.magnific.com
security:
  - magnificApiKey: []
paths:
  /v1/ai/text-to-image/nano-banana-pro:
    post:
      tags:
        - text-to-image
      summary: Create image from text - Nano Banana Pro
      description: >
        Generate high-quality images from text descriptions using Google's Nano
        Banana Pro model (Gemini 3).


        **Key Features:**

        - Advanced image generation with complex compositions

        - Support for reference images for guided generation

        - Multiple aspect ratios and resolutions

        - High-quality output up to 4K resolution


        **Best for:**

        - High-quality image generation

        - Complex scene compositions

        - Reference-guided generation

        - Professional visual content
      operationId: create_image_from_text_nano_banana_pro
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/tti-nano-banana-pro-request'
        required: true
      responses:
        '200':
          content:
            application/json:
              examples:
                success - in progress task:
                  $ref: '#/components/examples/200-task-in-progress'
              schema:
                $ref: >-
                  #/components/schemas/get_style_transfer_task_status_200_response
          description: >-
            OK - The request has succeeded and the Nano Banana Pro process has
            started.
        '400':
          content:
            application/json:
              examples:
                invalid_page:
                  summary: Parameter 'page' is not valid
                  value:
                    message: Parameter 'page' must be greater than 0
                invalid_query:
                  summary: Parameter 'query' is not valid
                  value:
                    message: Parameter 'query' must not be empty
                invalid_filter:
                  summary: Parameter 'filter' is not valid
                  value:
                    message: Parameter 'filter' is not valid
                generic_bad_request:
                  summary: Bad Request
                  value:
                    message: Parameter ':attribute' is not valid
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_400_response'
            application/problem+json:
              examples:
                invalid_page:
                  summary: Parameter 'page' is not valid
                  value:
                    message: Validation error
                    invalid_params:
                      - field: page
                        reason: Parameter 'page' must be greater than 0
                      - field: per_page
                        reason: Parameter 'per_page' must be greater than 0
              schema:
                $ref: >-
                  #/components/schemas/get_all_style_transfer_tasks_400_response_1
          description: >-
            Bad Request - The server could not understand the request due to
            invalid syntax.
        '401':
          content:
            application/json:
              examples:
                invalid_api_key:
                  summary: API key is not valid
                  value:
                    message: Invalid API key
                missing_api_key:
                  summary: API key is not provided
                  value:
                    message: Missing API key
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_400_response'
          description: >-
            Unauthorized - The client must authenticate itself to get the
            requested response.
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_500_response'
          description: >-
            Internal Server Error - The server has encountered a situation it
            doesn't know how to handle.
        '503':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/get_all_style_transfer_tasks_503_response'
          description: Service Unavailable
components:
  schemas:
    tti-nano-banana-pro-request:
      properties:
        prompt:
          description: >
            Text prompt describing the image you want to generate.


            **Tips:**

            - Be specific about visual details, composition, and style

            - Nano Banana Pro excels at complex compositions and detailed scenes

            - Describe lighting, atmosphere, and camera angles for best results


            **Examples:**

            - Simple: "A suited raccoon smoking a pipe"

            - Detailed: "A suited raccoon smoking a pipe in a vintage study
            room, warm lighting, leather armchair, bookshelves in background"
          example: A suited raccoon smoking a pipe in a vintage study room
          maxLength: 3000
          minLength: 2
          type: string
        webhook_url:
          description: >
            Optional callback URL that will receive asynchronous notifications
            whenever the task changes status. The payload sent to this URL is
            the same as the corresponding GET endpoint response, but without the
            data field.
          example: https://www.example.com/webhook
          format: uri
          type: string
        reference_images:
          description: |
            Optional reference images for guided generation.
            Each image can include associated text and mime type.

            **Image requirements:**
            - Maximum 14 images
            - Supported formats: PNG, JPEG, WebP
            - Publicly accessible URLs or GCS format
          example:
            - image: https://example.com/reference.jpg
              text: Reference style
              mime_type: image/jpeg
          items:
            $ref: >-
              #/components/schemas/tti_nano_banana_pro_request_reference_images_inner
          maxItems: 14
          type: array
        aspect_ratio:
          default: '1:1'
          description: |
            Aspect ratio for the generated image.

            **Available ratios:**
            - `1:1`: Square (default)
            - `2:3`, `3:2`: Portrait/Landscape
            - `4:3`, `3:4`: Standard
            - `5:4`, `4:5`: Photo print
            - `16:9`, `9:16`: Widescreen/Social stories
            - `21:9`: Ultra-wide cinematic
          enum:
            - '1:1'
            - '2:3'
            - '3:2'
            - '4:3'
            - '3:4'
            - '5:4'
            - '4:5'
            - '16:9'
            - '9:16'
            - '21:9'
          example: '1:1'
          type: string
        resolution:
          default: 2K
          description: |
            Resolution quality for the generated image.

            **Available resolutions:**
            - `1K`: Lower resolution, faster generation
            - `2K`: Standard resolution, balanced quality/speed (default)
            - `4K`: High resolution, best quality
          enum:
            - 1K
            - 2K
            - 4K
            - low
            - medium
            - high
          example: 2K
          type: string
      required:
        - prompt
      title: Nano Banana Pro Text-to-Image Request
      type: object
    get_style_transfer_task_status_200_response:
      example:
        data:
          task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
          status: CREATED
          generated:
            - https://openapi-generator.tech
            - https://openapi-generator.tech
      properties:
        data:
          $ref: '#/components/schemas/task-detail'
      required:
        - data
      type: object
    get_all_style_transfer_tasks_400_response:
      example:
        message: message
      properties:
        message:
          type: string
      type: object
    get_all_style_transfer_tasks_400_response_1:
      properties:
        problem:
          $ref: >-
            #/components/schemas/get_all_style_transfer_tasks_400_response_1_problem
      type: object
    get_all_style_transfer_tasks_500_response:
      example:
        message: Internal Server Error
      properties:
        message:
          example: Internal Server Error
          type: string
      type: object
    get_all_style_transfer_tasks_503_response:
      example:
        message: Service Unavailable. Please try again later.
      properties:
        message:
          example: Service Unavailable. Please try again later.
          type: string
      type: object
    tti_nano_banana_pro_request_reference_images_inner:
      properties:
        image:
          description: Image URL (publicly accessible URL or GCS format)
          example: https://example.com/reference-image.jpg
          type: string
        text:
          description: Optional text description to attach to the reference image
          example: Reference style for lighting and composition
          type: string
        mime_type:
          description: MIME type of the image
          enum:
            - image/png
            - image/jpeg
            - image/webp
          example: image/jpeg
          type: string
      required:
        - image
        - mime_type
      type: object
    task-detail:
      allOf:
        - $ref: '#/components/schemas/task'
        - properties:
            generated:
              items:
                description: URL of the generated image
                format: uri
                type: string
              type: array
          required:
            - generated
          type: object
      example:
        task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
        status: CREATED
        generated:
          - https://openapi-generator.tech
          - https://openapi-generator.tech
    get_all_style_transfer_tasks_400_response_1_problem:
      properties:
        message:
          example: Validation error
          type: string
        invalid_params:
          items:
            $ref: >-
              #/components/schemas/get_all_style_transfer_tasks_400_response_1_problem_invalid_params_inner
          type: array
      required:
        - invalid_params
        - message
      type: object
    task:
      example:
        task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
        status: CREATED
      properties:
        task_id:
          description: Task identifier
          format: uuid
          type: string
        status:
          description: Task status
          enum:
            - CREATED
            - IN_PROGRESS
            - COMPLETED
            - FAILED
          type: string
      required:
        - status
        - task_id
      type: object
    get_all_style_transfer_tasks_400_response_1_problem_invalid_params_inner:
      properties:
        name:
          description: Name of the invalid parameter.
          example: page
          type: string
        field:
          description: Field of the invalid parameter. Mirrors `name`.
          example: page
          type: string
        reason:
          example: Parameter 'page' must be greater than 0
          type: string
      required:
        - field
        - name
        - reason
      type: object
  examples:
    200-task-in-progress:
      summary: Success - Task in progress
      value:
        data:
          generated: []
          task_id: 046b6c7f-0b8a-43b9-b35d-6489e6daee91
          status: IN_PROGRESS
  securitySchemes:
    magnificApiKey:
      description: >
        Your Magnific API key. Required for authentication. [Learn how to obtain
        an API key](https://docs.magnific.com/quickstart)
      in: header
      name: x-magnific-api-key
      type: apiKey

````