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

# Create video · Jimeng compatible

> Submit a Seedance video task using Jimeng compatible, with examples, input limits and full parameters.

If your client uses Jimeng CVSync2Async, you can reuse the request fields below. Switch authentication to an AIOHub API key, set `req_key` to a Seedance model name and adapt response parsing as shown here. Submission and polling return different structures; this is not the full official Jimeng API.

## Setup

Use `https://api.aiohub.org`. Authenticate every request with `Authorization: Bearer <AIOHUB_API_KEY>`, replacing the placeholder with your full `sk-` API key rather than Jimeng request signing. The key group must allow the selected model.

## Example request

```bash theme={"system"}
curl "https://api.aiohub.org/jimeng/?Action=CVSync2AsyncSubmitTask&Version=2022-08-31" \
  -H "Authorization: Bearer <AIOHUB_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "req_key": "doubao-seedance-2-0-fast-260128",
    "prompt": "A blue ceramic cup on a wooden table in daylight.",
    "frames": 121,
    "aspect_ratio": "16:9",
    "seed": -1
  }'
```

Submission returns an OpenAI video object with the fields below. Save the top-level `task_id`; do not read `data.task_id`.

```json theme={"system"}
{"id": "task_example", "task_id": "task_example", "object": "video", "status": "queued"}
```

After saving the task identifier, [poll the task](/en/api/video-jimeng-get).

## Parameter limits

Output is fixed at 720p. Use [Ark / Seedance](/en/api/video-ark) for other resolutions, reference audio or video editing.

<Note>If creation times out without a task identifier, check the [usage log](https://api.aiohub.org/console/log) before resubmitting to avoid duplicate generation and charges. Correct parameters after a 400 and check the API key after a 401. See [Authentication](/en/api/authentication) for access and quota requirements.</Note>


## OpenAPI

````yaml openapi/jimeng-submit.en.json POST /jimeng/
openapi: 3.0.1
info:
  title: AIOHub Jimeng video API
  version: 1.0.0
servers:
  - url: https://api.aiohub.org
security: []
paths:
  /jimeng/:
    post:
      tags:
        - Jimeng video
      summary: Submit Jimeng video task
      description: >
        Jimeng submission operation, selected by Action=CVSync2AsyncSubmitTask.


        Returns top-level id and task_id, not data.task_id. Save task_id for
        polling; submitting again creates another generation task.
      operationId: submitJimengSeedanceVideo
      parameters:
        - name: Action
          in: query
          required: true
          schema:
            type: string
            enum:
              - CVSync2AsyncSubmitTask
            default: CVSync2AsyncSubmitTask
          description: Operation name; use this page's fixed value.
        - name: Version
          in: query
          required: true
          schema:
            type: string
            enum:
              - '2022-08-31'
            default: '2022-08-31'
          description: Protocol version.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                req_key:
                  type: string
                  description: Full Seedance model name.
                  example: doubao-seedance-2-0-fast-260128
                prompt:
                  type: string
                  description: Prompt, required for text-only generation.
                image_urls:
                  type: array
                  maxItems: 2
                  items:
                    type: string
                    format: uri
                  description: >-
                    One first-frame image or first and last frames. Cannot be
                    combined with binary_data_base64.
                binary_data_base64:
                  type: array
                  maxItems: 2
                  items:
                    type: string
                  description: >-
                    Base64 first-frame or first/last-frame image bytes, without
                    data URL prefixes.
                frames:
                  type: integer
                  enum:
                    - 121
                    - 241
                  default: 121
                  description: 121 means 5 seconds; 241 means 10 seconds.
                aspect_ratio:
                  type: string
                  description: >-
                    Aspect ratio for text generation; image input follows the
                    image.
                  enum:
                    - '16:9'
                    - '4:3'
                    - '1:1'
                    - '3:4'
                    - '9:16'
                    - '21:9'
                  default: '16:9'
                seed:
                  type: integer
                  enum:
                    - -1
                  default: -1
                  description: Only random seed -1 is supported.
              required:
                - req_key
            example:
              req_key: doubao-seedance-2-0-fast-260128
              prompt: A blue ceramic cup on a wooden table in daylight.
              frames: 121
              aspect_ratio: '16:9'
              seed: -1
      responses:
        '200':
          description: Task accepted.
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: Task ID.
                  task_id:
                    type: string
                    description: Task ID for Jimeng polling.
                  object:
                    type: string
                    enum:
                      - video
                  model:
                    type: string
                  status:
                    type: string
                    enum:
                      - queued
                  progress:
                    type: integer
                  created_at:
                    type: integer
                    format: int64
                required:
                  - id
                  - task_id
                  - object
                  - model
                  - status
                  - progress
                  - created_at
              example:
                id: task_example
                task_id: task_example
                object: video
                model: doubao-seedance-2-0-fast-260128
                status: queued
                progress: 0
                created_at: 1791275108
        '400':
          description: Unsupported fields or values.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SeedanceTaskError'
        '401':
          description: Missing or invalid API key.
        '429':
          description: Too many requests; wait before retrying.
      security:
        - BearerAuth: []
components:
  schemas:
    SeedanceTaskError:
      type: object
      description: Error response of the video task endpoints.
      properties:
        code:
          type: string
          description: Error code
          example: invalid_duration
        message:
          type: string
          description: Error message
          example: duration must be between 4 and 30 seconds for this model
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: API key (sk-xxx)

````

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