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

# Imagen 4.0

> [Core Function] Imagen 4.0 is Google's flagship professional-grade text-to-image model designed for high-fidelity visual generation. [Strengths] It excels at industry-leading photorealism, exceptional typography/text rendering inside images, and strong prompt adherence, supporting up to 2K resolution and batch generation. [Best For] Highly recommended for general high-quality image generation, marketing assets (posters, product labels, menus, signage), and product photography mockups where readable text is required. [Limitations] Do NOT use this model if you need instant/real-time generation, native image editing (inpainting/outpainting), or negative prompts. It is strictly an image-only output model. [Routing] Use this model by default for high-quality, photorealistic text-to-image requests. If the user emphasizes speed or needs lower cost, route to Imagen 4.0 Fast. If the user demands the absolute highest detail and prompt precision, route to Imagen 4.0 Ultra.



## OpenAPI

````yaml /model-api/google/google-t2i.json post /google/imagen-4.0-generate-001
openapi: 3.1.0
info:
  description: The text-to-image models API from Google (Gemini and Imagen series).
  version: 1.0.0
  contact:
    name: Modellix Support
    email: support@modellix.ai
  title: Google Text-to-Image Models API
servers:
  - url: https://api.modellix.ai/api/v1
    description: The text-to-image models API from Google.
security:
  - bearerAuth: []
paths:
  /google/imagen-4.0-generate-001:
    post:
      summary: Imagen 4.0
      description: >-
        [Core Function] Imagen 4.0 is Google's flagship professional-grade
        text-to-image model designed for high-fidelity visual generation.
        [Strengths] It excels at industry-leading photorealism, exceptional
        typography/text rendering inside images, and strong prompt adherence,
        supporting up to 2K resolution and batch generation. [Best For] Highly
        recommended for general high-quality image generation, marketing assets
        (posters, product labels, menus, signage), and product photography
        mockups where readable text is required. [Limitations] Do NOT use this
        model if you need instant/real-time generation, native image editing
        (inpainting/outpainting), or negative prompts. It is strictly an
        image-only output model. [Routing] Use this model by default for
        high-quality, photorealistic text-to-image requests. If the user
        emphasizes speed or needs lower cost, route to Imagen 4.0 Fast. If the
        user demands the absolute highest detail and prompt precision, route to
        Imagen 4.0 Ultra.
      operationId: imagen40Generate001Async
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ImagenStandardUltraRequest'
            examples:
              basic:
                summary: Basic image generation
                value:
                  prompt: A golden retriever playing fetch on the beach at sunset
              batch:
                summary: Batch generation with all options
                value:
                  prompt: Professional product photography of a luxury watch on marble
                  sampleCount: 4
                  aspectRatio: '1:1'
                  personGeneration: dont_allow
                  imageSize: 2K
      responses:
        '200':
          description: Task submitted successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AsyncTaskResponse'
              example:
                code: 0
                message: success
                data:
                  status: pending
                  task_id: task-jkl012
                  model_id: google/imagen-4.0-generate-001
                  get_result:
                    method: GET
                    url: https://api.modellix.ai/api/v1/tasks/task-jkl012
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  schemas:
    ImagenStandardUltraRequest:
      type: object
      required:
        - prompt
      properties:
        prompt:
          type: string
          description: Image description text
          minLength: 1
          example: A golden retriever playing fetch on the beach at sunset
        sampleCount:
          type: integer
          description: Number of images to generate per request
          default: 1
          minimum: 1
          maximum: 4
          example: 1
        aspectRatio:
          type: string
          description: Image aspect ratio
          default: '1:1'
          enum:
            - '1:1'
            - '3:4'
            - '4:3'
            - '9:16'
            - '16:9'
          example: '16:9'
        personGeneration:
          type: string
          description: Person generation policy
          default: allow_all
          enum:
            - dont_allow
            - allow_adult
            - allow_all
          example: allow_all
        imageSize:
          type: string
          description: Output image resolution
          enum:
            - 1K
            - 2K
          example: 1K
    AsyncTaskResponse:
      type: object
      required:
        - code
        - message
        - data
      properties:
        code:
          type: integer
          description: Response code, 0 indicates success
          example: 0
        message:
          type: string
          description: Response message
          example: success
        data:
          type: object
          required:
            - status
            - task_id
            - model_id
          properties:
            status:
              type: string
              enum:
                - pending
                - processing
              description: Task status
              example: pending
            task_id:
              type: string
              description: Unique task identifier for polling
              example: task-abc123
            model_id:
              type: string
              description: Model ID in `provider/model` format
              example: google/nano-banana
            get_result:
              type: object
              description: API information to query the task result
              properties:
                method:
                  type: string
                  description: HTTP method
                  example: GET
                url:
                  type: string
                  description: Full URL to query the task result
                  example: https://api.modellix.ai/api/v1/tasks/task-abc123
          description: Detailed data about the submitted asynchronous task.
    ErrorResponse:
      type: object
      required:
        - code
        - message
      properties:
        code:
          type: integer
          description: Error code (equals HTTP status code)
          example: 400
        message:
          type: string
          description: 'Error message in format ''Category: detail'''
          example: 'Invalid parameters: parameter ''prompt'' is required'
  responses:
    BadRequest:
      description: Invalid request parameters
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            code: 400
            message: 'Invalid parameters: parameter ''prompt'' is required'
    Unauthorized:
      description: Unauthorized - Invalid or missing API Key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            code: 401
            message: 'Authentication failed: invalid API key'
    TooManyRequests:
      description: Too many requests - Rate limit exceeded
      headers:
        X-RateLimit-Limit:
          description: Maximum requests per minute
          schema:
            type: integer
            example: 100
        X-RateLimit-Remaining:
          description: Remaining quota in current window
          schema:
            type: integer
            example: 0
        X-RateLimit-Reset:
          description: Rate limit window reset time (Unix timestamp)
          schema:
            type: integer
            example: 1704067260
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            code: 429
            message: >-
              Rate limit exceeded: 100 requests per minute, retry after 60
              seconds
    InternalServerError:
      description: Internal server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            code: 500
            message: Internal server error
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: 'API Key authentication. Format: `Bearer YOUR_API_KEY`.'

````