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

# Grok Imagine Image 2.0 Text to Image

> Create detailed images with accurate text, structured layouts, and close prompt following, at resolutions up to 2K.

<Tip>
  1. Submit the request with `VIDGO_API_KEY`. A `task_id` is returned immediately. Keep it until the task reaches `finished` or `failed`.
  2. Use [Query Task Status](/api-manual/task-management/status) to retrieve the result. If you provide a `callback_url`, Vidgo sends the result to your [webhook](/api-manual/task-management/webhooks) when the task finishes or fails.
</Tip>

# Grok Imagine Image 2.0 Text to Image

Create detailed images with accurate text, structured layouts, and close prompt following, at resolutions up to 2K.

## Available Models

* **xai/grok-imagine-image-v2.0/text-to-image** - Generate images from text prompts.

## Output Options

### Aspect Ratio

* `aspect_ratio`: Optional. Accepted values: `1:1`, `2:3`, `3:2`, `9:16`, `16:9`. Default: `1:1`.

### Resolution

* `resolution`: Optional. Accepted values: `1K`, `2K`. Default: `1K`.

### Quality

* `quality`: Optional. Accepted values: `low`, `medium`. Default: `medium`.

### Image Count

* `n`: Optional. Number of images to generate. Integer from `1` to `4`. Default: `1`.

## Key Features

* Generate images from text prompts.
* Choose from `1K`, `2K` output resolutions.
* Control the number of output images with `n`.

## Advanced Parameters

Set `model` and optional `callback_url` at the request root. Place all workflow parameters, including output options, inside `input`.

Send only the input fields supported by this workflow. Unsupported `input` fields are rejected before credits are deducted.

### Prompt

* `prompt`: Required. Describe the desired image. Length: **1-8,000 characters**.
* The value must not be blank when supplied.

## Billing Factors

Billing depends on output quality (`quality`), output resolution (`resolution`), and output image count (`n`).

Credits are deducted on submission and refunded if the task fails.


## OpenAPI

````yaml api-manual/image-series/xai-grok-imagine-image-v2-0-text-to-image.json POST /api/generate/submit
openapi: 3.0.0
info:
  title: Vidgo API - Grok Imagine Image 2.0 Text to Image
  description: >-
    Create detailed images with accurate text, structured layouts, and close
    prompt following, at resolutions up to 2K.
  version: 1.0.0
servers:
  - url: https://api.vidgo.ai
security:
  - BearerAuth: []
paths:
  /api/generate/submit:
    post:
      tags:
        - Image Series
      summary: Grok Imagine Image 2.0 Text to Image
      description: >-
        Send only the fields shown for this workflow. Parameters from other
        workflows are rejected before credits are deducted.


        When supplied, prompt must not be blank.
      operationId: submit_xai_grok_imagine_image_v2_0_text_to_image
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - model
                - input
              additionalProperties: true
              properties:
                model:
                  type: string
                  example: xai/grok-imagine-image-v2.0/text-to-image
                input:
                  type: object
                  required:
                    - prompt
                  properties:
                    prompt:
                      type: string
                      minLength: 1
                      maxLength: 8000
                      description: >-
                        Required non-blank string, 1–8,000 characters after
                        trimming. Non-string values are rejected.
                    'n':
                      type: integer
                      minimum: 1
                      maximum: 4
                      default: 1
                      description: >-
                        Number of output images. Integer from 1 to 4, default 1.
                        Strings, booleans, and fractional values are rejected.
                    aspect_ratio:
                      type: string
                      enum:
                        - '1:1'
                        - '2:3'
                        - '3:2'
                        - '9:16'
                        - '16:9'
                      default: '1:1'
                      description: Output aspect ratio. Defaults to 1:1.
                    resolution:
                      type: string
                      enum:
                        - 1K
                        - 2K
                      default: 1K
                      description: 'Output resolution tier: 1K or 2K. Defaults to 1K.'
                    quality:
                      type: string
                      enum:
                        - low
                        - medium
                      default: medium
                      description: 'Output quality: low or medium. Defaults to medium.'
                  additionalProperties: false
                callback_url:
                  type: string
                  nullable: true
                  description: >-
                    Optional public HTTP(S) endpoint for task completion
                    notifications. HTTPS is recommended. Omit, use null, or use
                    an empty string to disable callbacks.
              description: >-
                Keep model and callback_url at the root. Unknown root fields are
                ignored; unsupported input fields are rejected.
            examples:
              basic:
                summary: Basic workflow
                value:
                  model: xai/grok-imagine-image-v2.0/text-to-image
                  input:
                    prompt: >-
                      A quiet forest under soft morning light, with natural
                      detail.
                    'n': 1
                    aspect_ratio: '1:1'
                    resolution: 1K
                    quality: medium
              callback:
                summary: Receive a completion callback
                value:
                  model: xai/grok-imagine-image-v2.0/text-to-image
                  input:
                    prompt: >-
                      A quiet forest under soft morning light, with natural
                      detail.
                    'n': 1
                    aspect_ratio: '1:1'
                    resolution: 1K
                    quality: medium
                  callback_url: https://your-domain.com/callback
              multiple_outputs:
                summary: Four Medium / 2K outputs
                value:
                  model: xai/grok-imagine-image-v2.0/text-to-image
                  input:
                    prompt: >-
                      A quiet forest under soft morning light, with natural
                      detail.
                    'n': 4
                    aspect_ratio: '1:1'
                    resolution: 2K
                    quality: medium
      responses:
        '200':
          description: Task submitted
          content:
            application/json:
              schema:
                type: object
                required:
                  - code
                  - data
                properties:
                  code:
                    type: integer
                    enum:
                      - 200
                  data:
                    type: object
                    required:
                      - task_id
                      - status
                      - created_time
                    properties:
                      task_id:
                        type: string
                      status:
                        type: string
                        enum:
                          - not_started
                          - running
                          - finished
                          - failed
                      created_time:
                        type: string
                        format: date-time
              example:
                code: 200
                data:
                  task_id: task-unified-example
                  status: running
                  created_time: '2026-09-10T08:00:00'
        '400':
          description: >-
            Invalid input, unsupported tier, inaccessible media, or insufficient
            credits
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '401':
          description: Invalid credentials
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '403':
          description: Access denied
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '404':
          description: Unknown or disabled model
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '408':
          description: Request timed out
          content:
            text/plain:
              schema:
                type: string
              example: Request timeout
        '422':
          description: Invalid JSON or non-object request body
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '429':
          description: Rate or API key credit limit exceeded
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '502':
          description: Unable to create the upstream generation task
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
        '503':
          description: Model configuration or capability is not approved
          content:
            application/json:
              schema:
                type: object
                required:
                  - detail
                properties:
                  detail:
                    oneOf:
                      - type: string
                      - type: object
                        additionalProperties: true
                      - type: array
                        items: {}
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: Use VIDGO_API_KEY.

````