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

# Wan 2.7 Pro Text to Image

> Create image variations with Wan 2.7 Pro, using detailed prompts to guide the subject, style, and composition.

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

# Wan 2.7 Pro Text to Image

Create image variations with Wan 2.7 Pro, using detailed prompts to guide the subject, style, and composition.

## Available Models

* **alibaba/wan-2.7/text-to-image-pro** - Generate images from text prompts.

## Output Options

### Image Size

* `size`: Optional. Default: `1024x1024`.
* Presets: `512x512`, `1024x1024`, `768x1024`, `1024x768`, `576x1024`, `1024x576`.
* For custom dimensions, supply an object with integer `width` and `height`; both must be positive.

### Image Count

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

## Key Features

* Generate images from text prompts.
* Control the number of output images with `n`.

Use the corresponding image-edit endpoint for reference images.

## 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-5,000 characters**.
* The value must not be blank when supplied.

### Seed

* `seed`: Optional. Set the generation seed. Integer.

## Billing Factors

Billing depends on the selected model variant and output image count (`n`). Output size does not add a charge.

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


## OpenAPI

````yaml api-manual/image-series/alibaba-wan-2-7-text-to-image-pro.json POST /api/generate/submit
openapi: 3.0.0
info:
  title: Vidgo API - Wan 2.7 Pro Text to Image
  description: >-
    Create image variations with Wan 2.7 Pro, using detailed prompts to guide
    the subject, style, and composition.
  version: 1.0.0
servers:
  - url: https://api.vidgo.ai
security:
  - BearerAuth: []
paths:
  /api/generate/submit:
    post:
      tags:
        - Image Series
      summary: Wan 2.7 Pro 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.


        Custom size width and height must both be positive.
      operationId: submit_alibaba_wan_2_7_text_to_image_pro
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - model
                - input
              additionalProperties: true
              properties:
                model:
                  type: string
                  example: alibaba/wan-2.7/text-to-image-pro
                input:
                  type: object
                  required:
                    - prompt
                  description: >-
                    Input parameters for this public endpoint. Use an image-edit
                    endpoint when supplying reference images.
                  properties:
                    prompt:
                      type: string
                      description: >-
                        Prompt describing the desired output. Maximum length is
                        5,000 characters.
                      maxLength: 5000
                      example: A beautiful sunset over the ocean
                      minLength: 1
                    size:
                      description: >-
                        Output size. Supported preset values: `512x512`,
                        `1024x1024`, `768x1024`, `1024x768`, `576x1024`,
                        `1024x576`. For custom image sizes, you can pass `width`
                        and `height` as an object: `{ "width": 1280, "height":
                        720 }`.
                      oneOf:
                        - type: string
                          enum:
                            - 512x512
                            - 1024x1024
                            - 768x1024
                            - 1024x768
                            - 576x1024
                            - 1024x576
                          example: 1024x1024
                        - type: object
                          required:
                            - width
                            - height
                          properties:
                            width:
                              type: integer
                              minimum: 1
                              example: 1280
                            height:
                              type: integer
                              minimum: 1
                              example: 720
                          example:
                            width: 1280
                            height: 720
                          additionalProperties: false
                      default: 1024x1024
                      example: 1024x1024
                    'n':
                      type: integer
                      description: >-
                        Number of images to generate (1-4). Credits are charged
                        by image count.
                      minimum: 1
                      maximum: 4
                      default: 1
                      example: 1
                    seed:
                      type: integer
                      description: Optional random seed for reproducible output
                      example: 12345
                  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: alibaba/wan-2.7/text-to-image-pro
                  input:
                    prompt: >-
                      A quiet forest under soft morning light, with natural
                      detail.
                    size: 1024x1024
                    'n': 1
              callback:
                summary: Receive a completion callback
                value:
                  model: alibaba/wan-2.7/text-to-image-pro
                  input:
                    prompt: >-
                      A quiet forest under soft morning light, with natural
                      detail.
                    size: 1024x1024
                    'n': 1
                  callback_url: https://your-domain.com/callback
              preset-size:
                summary: Preset Size
                value:
                  model: alibaba/wan-2.7/text-to-image-pro
                  input:
                    prompt: A product photo on a pale blue background
                    size: 1024x1024
                    'n': 2
                    seed: 24680
              custom-size:
                summary: Custom Size
                value:
                  model: alibaba/wan-2.7/text-to-image-pro
                  input:
                    prompt: A product photo on a pale blue background
                    size:
                      width: 1280
                      height: 720
                    'n': 2
                    seed: 24680
      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.

````