> ## 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.

# Get Schema

> Returns the request and response schema for a Media Model. Pass the model slug in the path (for example alibaba/qwen-image-3.0-pro). This endpoint is public and does not require an API key. The response includes servers (inference base URL) and post (OpenAPI-style operation: description, requestBody JSON Schema, examples, and async task responses). Use servers[0].url as the async generate URL; that call still requires a Bearer API key on https://api.modellix.ai. Resolve slugs from List Active Models.



## OpenAPI

````yaml /media-model-api/get-schema.json get /models/{model_slug}/api_schema
openapi: 3.1.0
info:
  title: Media Model Schema API
  description: >-
    Public endpoint that returns the OpenAPI-style POST operation and inference
    server URL for a Media Model. No API key is required.
  version: 1.0.0
  contact:
    name: Modellix API Support
    email: support@modellix.ai
servers:
  - url: https://www.modellix.ai/
    description: Modellix website (public, no authentication)
security: []
paths:
  /models/{model_slug}/api_schema:
    get:
      summary: Get Schema
      description: >-
        Returns the request and response schema for a Media Model. Pass the
        model slug in the path (for example alibaba/qwen-image-3.0-pro). This
        endpoint is public and does not require an API key. The response
        includes servers (inference base URL) and post (OpenAPI-style operation:
        description, requestBody JSON Schema, examples, and async task
        responses). Use servers[0].url as the async generate URL; that call
        still requires a Bearer API key on https://api.modellix.ai. Resolve
        slugs from List Active Models.
      operationId: getMediaModelSchema
      parameters:
        - name: model_slug
          in: path
          required: true
          description: >-
            Model slug in `provider/model` form (for example
            `alibaba/qwen-image-3.0-pro`). Interpolate the slash as a literal
            path separator. Do not encode it as `%2F`.
          schema:
            type: string
            example: alibaba/qwen-image-3.0-pro
            pattern: ^[^/]+/[^/]+$
      responses:
        '200':
          description: Media Model OpenAPI-style schema
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MediaModelApiSchema'
              examples:
                qwen_image_3_0_pro:
                  summary: alibaba/qwen-image-3.0-pro
                  value:
                    servers:
                      - url: >-
                          https://api.modellix.ai/api/v1/alibaba/qwen-image-3.0-pro
                    post:
                      description: >-
                        [Core Function] Qwen Image 3.0 Pro is Alibaba's latest
                        text-to-image model with strong prompt following and
                        photorealism. [Strengths] It supports free-form output
                        size (width*height), optional negative prompts,
                        intelligent prompt rewrite, batch generation of 1-6
                        images, and long structured prompts for complex layouts.
                        [Best For] Highly recommended for: photorealistic
                        stills, marketing posters with readable text, detailed
                        scene compositions, multi-panel layouts, product hero
                        shots, and multi-variant creative exploration (n up to
                        6). [Limitations] Do NOT use this if the user needs
                        native 4K output, thinking-mode reasoning, or image
                        editing with reference images (use Qwen Image 3.0 Pro
                        Edit for edits). Keep total pixels within 512*512 to
                        2048*2048. Very long prompts combined with a long
                        negative_prompt may exceed the model input capacity
                        (about 4.5k tokens total). [Routing] Prefer this over
                        Qwen Image 2.0 Pro for new Qwen Image text-to-image
                        work. If the user provides reference image(s) to edit,
                        route to Qwen Image 3.0 Pro Edit instead.
                      operationId: qwenImage30ProAsync
                      requestBody:
                        content:
                          application/json:
                            examples:
                              basic:
                                summary: Basic image generation
                                value:
                                  prompt: >-
                                    A cinematic still of an astronaut exploring
                                    an alien planet
                              custom_size:
                                summary: Custom size and batch
                                value:
                                  'n': 2
                                  negative_prompt: blurry text, misspelling
                                  prompt: >-
                                    A movie poster with the title STELLAR
                                    ODYSSEY
                                  prompt_extend: true
                                  size: 1024*1536
                            schema:
                              properties:
                                'n':
                                  default: 1
                                  description: Number of images to generate (1-6)
                                  example: 1
                                  maximum: 6
                                  minimum: 1
                                  type: integer
                                negative_prompt:
                                  description: Negative prompt describing unwanted content
                                  example: blurry, low quality
                                  maxLength: 500
                                  type: string
                                prompt:
                                  description: >-
                                    Image description text, supports Chinese and
                                    English
                                  example: >-
                                    A serene Japanese garden with cherry
                                    blossoms
                                  maxLength: 4500
                                  minLength: 1
                                  type: string
                                prompt_extend:
                                  default: true
                                  description: >-
                                    Whether to enable intelligent prompt
                                    rewriting. Default true (recommended). When
                                    enabled, the model rewrites the positive
                                    prompt using the mode specified by
                                    prompt_extend_mode; most effective for short
                                    or simple prompts.
                                  example: true
                                  type: boolean
                                prompt_extend_mode:
                                  default: direct
                                  description: >-
                                    Prompt rewrite mode when prompt_extend is
                                    true. Default direct. direct: Direct Prompt
                                    Enhancement (DPE), suitable for most
                                    scenarios (T2I and I2I). agent: Agent Prompt
                                    Enhancement (APE), finer rewrite;
                                    text-to-image (T2I) only.
                                  enum:
                                    - direct
                                    - agent
                                  example: direct
                                  type: string
                                seed:
                                  description: Random seed for reproducible results
                                  example: 42
                                  maximum: 2147483647
                                  minimum: 0
                                  type: integer
                                size:
                                  description: >-
                                    Output image resolution as width*height
                                    (e.g. 1024*1024). Optional; when omitted the
                                    model auto-selects. Total pixels should stay
                                    within 512*512 to 2048*2048.
                                  example: 1024*1024
                                  pattern: ^\d+\*\d+$
                                  type: string
                              required:
                                - prompt
                              type: object
                        required: true
                      responses:
                        '200':
                          content:
                            application/json:
                              schema:
                                properties:
                                  code:
                                    description: Response code, 0 indicates success
                                    example: 0
                                    type: integer
                                  data:
                                    description: >-
                                      Detailed data about the submitted
                                      asynchronous task.
                                    properties:
                                      get_result:
                                        description: API information to query the task result
                                        properties:
                                          method:
                                            description: HTTP method
                                            example: GET
                                            type: string
                                          url:
                                            description: Full URL to query the task result
                                            example: >-
                                              https://api.modellix.ai/api/v1/tasks/task-abc123
                                            type: string
                                        type: object
                                      model_id:
                                        description: Model ID
                                        example: model-123
                                        type: string
                                      status:
                                        description: Task status
                                        enum:
                                          - pending
                                          - processing
                                        example: pending
                                        type: string
                                      task_id:
                                        description: Unique task identifier
                                        example: task-abc123
                                        type: string
                                    required:
                                      - status
                                      - task_id
                                      - model_id
                                    type: object
                                  message:
                                    description: Response message
                                    example: success
                                    type: string
                                required:
                                  - code
                                  - message
                                  - data
                                type: object
                          description: Task submitted successfully
                        '400':
                          content:
                            application/json:
                              example:
                                code: 400
                                message: >-
                                  Invalid parameters: parameter 'prompt' is
                                  required
                              schema:
                                properties:
                                  code:
                                    description: Error code (equals HTTP status code)
                                    example: 400
                                    type: integer
                                  message:
                                    description: 'Error message in format ''Category: detail'''
                                    example: >-
                                      Invalid parameters: parameter 'prompt' is
                                      required
                                    type: string
                                required:
                                  - code
                                  - message
                                type: object
                          description: Invalid request parameters
                        '401':
                          content:
                            application/json:
                              example:
                                code: 401
                                message: 'Authentication failed: invalid API key'
                              schema:
                                properties:
                                  code:
                                    description: Error code (equals HTTP status code)
                                    example: 400
                                    type: integer
                                  message:
                                    description: 'Error message in format ''Category: detail'''
                                    example: >-
                                      Invalid parameters: parameter 'prompt' is
                                      required
                                    type: string
                                required:
                                  - code
                                  - message
                                type: object
                          description: Unauthorized - Invalid or missing API Key
                        '429':
                          content:
                            application/json:
                              example:
                                code: 429
                                message: >-
                                  Rate limit exceeded: 100 requests per minute,
                                  retry after 60 seconds
                              schema:
                                properties:
                                  code:
                                    description: Error code (equals HTTP status code)
                                    example: 400
                                    type: integer
                                  message:
                                    description: 'Error message in format ''Category: detail'''
                                    example: >-
                                      Invalid parameters: parameter 'prompt' is
                                      required
                                    type: string
                                required:
                                  - code
                                  - message
                                type: object
                          description: Too many requests - Rate limit exceeded
                          headers:
                            X-RateLimit-Limit:
                              description: Maximum requests per minute
                              schema:
                                example: 100
                                type: integer
                            X-RateLimit-Remaining:
                              description: Remaining quota in current window
                              schema:
                                example: 0
                                type: integer
                            X-RateLimit-Reset:
                              description: Rate limit window reset time (Unix timestamp)
                              schema:
                                example: 1704067260
                                type: integer
                        '500':
                          content:
                            application/json:
                              example:
                                code: 500
                                message: Internal server error
                              schema:
                                properties:
                                  code:
                                    description: Error code (equals HTTP status code)
                                    example: 400
                                    type: integer
                                  message:
                                    description: 'Error message in format ''Category: detail'''
                                    example: >-
                                      Invalid parameters: parameter 'prompt' is
                                      required
                                    type: string
                                required:
                                  - code
                                  - message
                                type: object
                          description: Internal server error
                      summary: Qwen Image 3.0 Pro
                      tags:
                        - Qwen Image
                      x-mint:
                        href: alibaba/qwen-image-3-0-pro
        '404':
          description: Unknown model slug
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelNotFoundError'
              example:
                error: true
                url: http://www.modellix.ai/models/not-a-real/model-slug/api_schema
                statusCode: 404
                statusMessage: Model Not Found
                message: Model Not Found
components:
  schemas:
    MediaModelApiSchema:
      type: object
      required:
        - servers
        - post
      description: >-
        OpenAPI-style fragment for the model's async POST generate endpoint.
        Field shapes under post.requestBody and post.responses vary by model.
      properties:
        servers:
          type: array
          description: >-
            Inference server entries. POST the request body to servers[0].url
            (typically https://api.modellix.ai/api/v1/{model_slug}). That
            generate call requires a Bearer API key.
          minItems: 1
          items:
            $ref: '#/components/schemas/MediaModelServer'
        post:
          $ref: '#/components/schemas/MediaModelPostOperation'
    ModelNotFoundError:
      type: object
      required:
        - error
        - statusCode
        - message
      description: >-
        Website-style error when the slug does not match a published Media
        Model. This is not the {code, message} envelope used on api.modellix.ai.
      properties:
        error:
          type: boolean
          example: true
        url:
          type: string
          description: Requested URL as recorded by the site
          example: http://www.modellix.ai/models/not-a-real/model-slug/api_schema
        statusCode:
          type: integer
          example: 404
        statusMessage:
          type: string
          example: Model Not Found
        message:
          type: string
          example: Model Not Found
    MediaModelServer:
      type: object
      required:
        - url
      properties:
        url:
          type: string
          format: uri
          description: Base URL for the model's async generate POST
          example: https://api.modellix.ai/api/v1/alibaba/qwen-image-3.0-pro
    MediaModelPostOperation:
      type: object
      required:
        - description
        - operationId
        - requestBody
        - responses
        - summary
      description: >-
        OpenAPI-style POST operation for the model. requestBody and responses
        follow the same shapes as the corresponding Media Model docs page.
      properties:
        description:
          type: string
          description: >-
            Agent-oriented model description (Core Function, Strengths, Best
            For, Limitations, Routing)
        operationId:
          type: string
          description: Operation identifier for the async generate call
          example: qwenImage30ProAsync
        summary:
          type: string
          description: Short model title
          example: Qwen Image 3.0 Pro
        tags:
          type: array
          description: Optional series or family labels
          items:
            type: string
        requestBody:
          type: object
          description: >-
            JSON request body contract under content.application/json (schema,
            examples). Shape is model-specific.
          additionalProperties: true
        responses:
          type: object
          description: >-
            Async task submit responses (200, 400, 401, 429, 500). Shape is
            model-specific.
          additionalProperties: true
        x-mint:
          type: object
          description: >-
            Docs page metadata. href is the Media Models reference path without
            a leading slash.
          properties:
            href:
              type: string
              example: alibaba/qwen-image-3-0-pro

````