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

# Qwen Image 2.1 Image Edit

> Edit one image with Qwen Image 2.1 using text instructions and reference images.

<Tip>
  1. Submit the request with `VIDGO_API_KEY`. A `task_id` is returned. 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>

# Qwen Image 2.1 Image Edit

## Usage Guide

Edit one image with Qwen Image 2.1 using text instructions and reference images.

* Set `model` to `alibaba/qwen-image-2.1/edit`.
* Place `model` and optional `callback_url` at the request root; place workflow parameters inside `input`.
* Each request produces one image.
* For prompt-only generation, use [Text to Image](/api-manual/image-series/qwen-image-2-1-text-to-image) with `model=alibaba/qwen-image-2.1/text-to-image`.

## Parameter Details

* `prompt` is required. Supply non-blank text of up to 5,000 characters.
* `image_urls` is required and accepts 1 to 10 reference image URLs. Use publicly accessible HTTP(S) URLs in the same order as the references in your prompt.
* `size` defaults to `auto`. `auto` follows the reference image aspect ratio.
* A transparent background requires `output_format=png` or `webp`.
* `mask_url` requires exactly one reference image and `background=opaque`. White areas change; black areas stay unchanged. Match the reference aspect ratio; the mask is scaled to the reference dimensions.
* With a mask, output follows the reference aspect ratio; `size` and `prompt_extend` are ignored.
* Reference images support JPEG, PNG, and WebP, up to 30 MB and 25 megapixels per image. Media limits are checked during generation.

## Developer Notes

* Submission is asynchronous. Use the task status endpoint or a completion webhook to retrieve the final image.
* Billing is per output image and depends on `resolution`. Text-to-image and editing use the same rate at each tier.
* Credits are deducted on submission and refunded if the task fails.

## Optional parameters

* `size` (string): Output aspect ratio. auto follows the reference image. Ignored when mask\_url is supplied. Accepted values: `1:1`, `4:3`, `3:4`, `3:2`, `2:3`, `16:9`, `9:16`, `21:9`, `9:21`, `auto`. Default: `auto`.
* `resolution` (string): Output resolution tier. Accepted values: `1K`, `2K`. Default: `1K`.
* `output_format` (string): Output image format. Transparent output requires PNG or WebP. Accepted values: `png`, `jpeg`, `webp`. Default: `png`.
* `enable_safety_checker` (boolean): Enable content safety checking. Default: `true`.
* `background` (string): Background mode. Transparent output requires PNG or WebP. Accepted values: `opaque`, `transparent`. Default: `opaque`.
* `mask_url` (string): Optional local-edit mask. Requires exactly one reference image and an opaque background. White areas change and black areas stay unchanged. Match the reference aspect ratio; the mask is scaled to the reference. size and prompt\_extend are ignored.
* `prompt_extend` (boolean): Enhance the prompt before generation. Ignored when mask\_url is supplied. Default: `true`.
* `seed` (integer): Optional random seed. Omit to use a random seed.


## OpenAPI

````yaml api-manual/image-series/qwen-image-2-1-edit.json POST /api/generate/submit
openapi: 3.0.0
info:
  title: Vidgo API - Qwen Image 2.1 Image Edit
  description: >-
    Edit one image with Qwen Image 2.1 using text instructions and reference
    images.
  version: 1.0.0
servers:
  - url: https://api.vidgo.ai
    description: Production server
security:
  - BearerAuth: []
paths:
  /api/generate/submit:
    post:
      tags:
        - Qwen Image 2.1 Image Edit
      summary: Submit Qwen Image 2.1 Image Edit Task
      operationId: submitQwenImage21ImageEditTask
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubmitRequest'
            examples:
              reference-edit:
                summary: Edit with reference images
                value:
                  model: alibaba/qwen-image-2.1/edit
                  input:
                    prompt: >-
                      Preserve the product and replace the background with a
                      warm modern studio.
                    image_urls:
                      - https://cdn.vidgo.ai/temp/reference-product.png
                    size: auto
                    resolution: 1K
              mask-edit:
                summary: Edit a masked region
                value:
                  model: alibaba/qwen-image-2.1/edit
                  input:
                    prompt: Replace the masked area with a small vase of flowers.
                    image_urls:
                      - https://cdn.vidgo.ai/temp/reference-product.png
                    mask_url: https://cdn.vidgo.ai/temp/edit-mask.png
                    background: opaque
                    size: auto
                    prompt_extend: false
              transparent-background:
                summary: Edit an image with a transparent background
                value:
                  model: alibaba/qwen-image-2.1/edit
                  input:
                    prompt: Keep the silver robot and remove its background.
                    background: transparent
                    output_format: webp
                    resolution: 2K
                    seed: 20261009
                    image_urls:
                      - https://cdn.vidgo.ai/temp/reference-product.png
      responses:
        '200':
          description: >-
            Task submission result. A task ID identifies asynchronous work;
            generation may still be running.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubmitResponse'
        '400':
          description: Invalid request parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    SubmitRequest:
      type: object
      required:
        - model
        - input
      additionalProperties: false
      properties:
        model:
          type: string
          example: alibaba/qwen-image-2.1/edit
        callback_url:
          type: string
          format: uri
          description: Optional webhook URL for completion or failure notifications.
          example: https://your-domain.com/callback
        input:
          type: object
          required:
            - prompt
            - image_urls
          additionalProperties: false
          properties:
            prompt:
              type: string
              minLength: 1
              maxLength: 5000
              pattern: \S
              description: |-
                Text instructions describing the edit.

                Include at least one non-whitespace character.
            size:
              type: string
              description: |-
                Output aspect ratio.

                auto follows the reference image.

                Ignored when mask_url is supplied.
              enum:
                - '1:1'
                - '4:3'
                - '3:4'
                - '3:2'
                - '2:3'
                - '16:9'
                - '9:16'
                - '21:9'
                - '9:21'
                - auto
              default: auto
            resolution:
              type: string
              enum:
                - 1K
                - 2K
              default: 1K
              description: Output resolution tier.
            image_urls:
              type: array
              maxItems: 10
              items:
                type: string
                format: uri
                pattern: ^https?://
              description: Required reference images for editing, in prompt order.
              minItems: 1
            output_format:
              type: string
              enum:
                - png
                - jpeg
                - webp
              default: png
              description: |-
                Output image format.

                Transparent output requires PNG or WebP.
            enable_safety_checker:
              type: boolean
              default: true
              description: Enable content safety checking.
            background:
              type: string
              enum:
                - opaque
                - transparent
              default: opaque
              description: |-
                Background mode.

                Transparent output requires PNG or WebP.
            mask_url:
              type: string
              format: uri
              pattern: ^https?://
              description: >-
                Optional local-edit mask.


                Requires exactly one reference image and an opaque background.


                White areas change and black areas stay unchanged.


                Match the reference aspect ratio; the mask is scaled to the
                reference.


                size and prompt_extend are ignored.
            prompt_extend:
              type: boolean
              default: true
              description: |-
                Enhance the prompt before generation.

                Ignored when mask_url is supplied.
            seed:
              type: integer
              description: |-
                Optional random seed.

                Omit to use a random seed.
    SubmitResponse:
      type: object
      required:
        - code
        - data
      properties:
        code:
          type: integer
          example: 200
        data:
          type: object
          required:
            - task_id
            - status
            - created_time
          properties:
            task_id:
              type: string
              example: task-example-001
            status:
              type: string
              example: running
            created_time:
              type: string
              format: date-time
              example: '2026-10-09T10:30:00'
    ErrorResponse:
      type: object
      required:
        - code
        - error
      properties:
        code:
          type: integer
          example: 400
        error:
          type: object
          properties:
            message:
              type: string
              example: Invalid request parameters
            type:
              type: string
              example: invalid_request_error
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: 'Use `Authorization: Bearer VIDGO_API_KEY`.'

````

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