Skip to main content
POST
/
api
/
generate
/
submit
Submit Wan 2.5 Text-to-Video Task
curl --request POST \
  --url https://api.poyo.ai/api/generate/submit \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "wan2.5-text-to-video",
  "callback_url": "https://your-domain.com/callback",
  "input": {
    "prompt": "A cinematic time-lapse of a bustling city street transitioning from day to night.",
    "aspect_ratio": "832*480",
    "duration": 5,
    "seed": 426
  }
}
'
{
  "code": 200,
  "data": {
    "task_id": "task-unified-1757165031-uyujaw3d",
    "status": "not_started",
    "created_time": "2025-11-12T10:30:00"
  }
}
  1. After submission, a task_id will be returned. If you provided a callback_url, when the task status becomes finished or failed, a POST request will be sent to the callback_url.
  2. Regardless of whether callback_url is provided, you can retrieve the response result through the unified Query Task Status endpoint.

Wan 2.5 Text-to-Video

wan2.5-text-to-video is the text-only branch of the Wan 2.5 video family and supports multiple size presets with 5s and 10s generation lengths.

Available Model

  • wan2.5-text-to-video - Generate a video clip from a text prompt

Key Parameters

  • Aspect Ratio: 832*480, 480*832, 1280*720, 720*1280, 1920*1080, 1080*1920
  • Duration: 5 or 10 seconds
  • Optional Controls: audio string, negative_prompt, seed

Notes

  • If audio is provided, it must be a string. Do not send a boolean value.

Authorizations

Authorization
string
header
required

All API endpoints require Bearer Token authentication

Get your API Key:

Visit the API Key Management Page to get your API Key

Add it to the request header:

Authorization: Bearer YOUR_API_KEY

Body

application/json
model
enum<string>
required

Wan 2.5 text-to-video model identifier

Available options:
wan2.5-text-to-video
input
object
required

Input parameters for generation

callback_url
string<uri>

Webhook callback URL for result notifications

Example:

"https://your-domain.com/callback"

Response

200 - application/json

Task submitted successfully

code
integer
required

HTTP status code

Example:

200

data
object
required